-
-
[讨论]在VS2012 x64下编译驱动使用asm关键字的完整方案
-
发表于:
2014-9-20 14:40
17536
-
[讨论]在VS2012 x64下编译驱动使用asm关键字的完整方案

以前看雪一篇帖子讲到了用ICC编译器来恢复__asm 本菜倒腾了一会 在VS2012 64位驱动下使用asm关键字,废话少说贴出我的配置
1、去Intel官网下载Intel Parallel Studio XE,我下载的是2015版本。
2、安装好Intel Parallel Studio XE 2015后,安装WDK 7600.16385.1(WDK8似乎配置不起来)。
3、大体配置参看
373K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3y4F1j5X3I4G2k6%4y4Q4x3X3g2U0L8$3#2Q4x3V1k6I4N6h3q4J5K9#2)9J5c8X3q4J5j5$3S2A6N6X3g2Q4x3V1j5J5x3o6p5K6i4K6u0r3x3o6g2Q4x3V1j5J5x3q4)9J5c8U0x3H3z5o6R3&6y4K6c8Q4x3X3g2Z5N6r3#2D9 这篇32位的驱动VS2010的配置 将其配置应用到VS2012上
然后注意修改一下几点:
Platform toolset:Intel C++ Compiler XE 15.0
lib目录 C:\WinDDK\7600.16385.1\lib\win7\amd64
附加依赖库 ntoskrnl.lib;hal.lib;ntstrsafe.lib
目标机器 x64
预处理定义 WIN64
_CONSOLE
_AMD64_
_DDK_
_NDEBUG
DBG=0
4、测试
#include"ntddk.h"
NTSTATUS DriverEntry( PDRIVER_OBJECT DriverObject,PUNICODE_STRING RegistryPath)
{
DbgPrint("HI!!\n");
__asm
{
xor rax,rax
}
return STATUS_SUCCESS;
}
编译成功
1> Building with Intel(R) C++ Compiler XE 15.0
1>ClCompile:
1> ***** ClCompile (x64 - Intel C++)
1> DriverEntry.c
成功运行在Win7 x64
...

亲爱的内联又回来了
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课