-
-
ntdll.h使用问题,玩过的都知道,小菜求教
-
发表于:
2012-10-20 17:41
8064
-
这个ntdll.h是让我们的程序能使用Native Api,同时避免Win DDK with SDK libs的问题。
我按照说明
vs2008编译需要ntdll.lib,复制到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib下。
一个R3程序,VC 6.0 编译,需要包含ntdll.h,产生
error C2146: syntax error : missing ';' before identifier 'Information'
error C2501: 'ULONG_PTR' : missing storage-class or type specifiers
error C2501: 'Information' : missing storage-class or type specifiers
error C2146: syntax error : missing ';' before identifier 'ActiveProcessorsAffinityMask'
error C2501: 'KAFFINITY' : missing storage-class or type specifiers
等多个编译错,几乎全部是符号未定义。
解决办法:
用VS2005的include目录的BaseTsd.h文件替换VC6的相应文件即可。VS2003和2008的没有试验过。
但是我仍然得到许多符号未定义的错误。这是别人的一个工程,拿来就在VC2008上用了,所以工程属性什么都也没设置。关键是编译时报缺少ntdll.h错误,所以在网上找了个。
有知道的达人提供一些解决问题的线索吗?感谢!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)