csanycall 发表于 2014-4-4 11:54:16

wdk8.1编译的问题

最近把vs生成2013了,wdk也装了wdk8.1.信心满满的调出以前代码测试,
哪晓得测试傻眼了。
具体:
#define HOOK_SYSCALL(_Function, _Hook, _Orig )    _Orig = (PVOID) InterlockedExchange( (PLONG) &m_Mapped, (LONG) _Hook)

这个东西,hook用,大家都知道,然后,与注册表相关的:
typedef NTSTATUS (*ZWSETVALUEKEY)(IN HANDLE KeyHandle,
                                                            IN PUNICODE_STRING ValueName,
                                                            IN ULONG TitleIndex OPTIONAL,
                                                            IN ULONG Type,
                                                            IN PVOID Data,
                                                            IN ULONG DataSize);

.....

具体调用不说了,编译工程出现:
错误1error C2440: “=”: 无法从“PVOID”转换为“ZWSETVALUEKEY”D:\exam\driver\RegMon\RegMon\RegMon.cpp661RegMon

3IntelliSense:不能将 "PVOID" 类型的值分配到 "ZWSETVALUEKEY" 类型的实体d:\exam\driver\RegMon\RegMon\RegMon.cpp662RegMon

-------------------------
晕了,这个在我虚拟机的wdk7.0是可以正常编译的啊,求高手指点。
-----------------------------------------------------------------------


Tesla.Angela 发表于 2014-4-4 15:16:02

没用过WDK 8.1。
另外下次WIN32编程内容请发WIN32区。

csanycall 发表于 2014-4-4 15:37:49

好的,谢谢 Tesla.Angela

upring 发表于 2015-6-3 21:35:06

顶上去 哈
页: [1]
查看完整版本: wdk8.1编译的问题