VS2013 X86 WIN7 编译程序通过,运行的时候提示缺少hal.dll文件,从system32复制hal文件过来,提示0xC000007B无法程序启动,之后放到xp环境在内核调试模式下发现程序通过KiCallInitRoutine调用hal文件的入口函数,而这个入口函数会检测TEB+1C处的EnvironmentPointer指针,比较[environmentpointer+51]处的一字节是否为0,行为此处的指针为0,所以导致访问了
[0x00000051]出现访问违例。
不明白为什么会出现这样的错误,程序因为要调用内核字符串函数,所以在源程序中包含了ntoskrnl.lib,希望大牛们指点一下