C/C++ Projcet Option

C/C++ Projcet Option

 

/nologo /Gz /MLd /W2 /WX /Z7 /Od /DWIN32=100 /D _X86_=1 /D WINVER=0x501 /D DBG=1 /Fo"DriverPath/"/Fd"DriverPath/" /FD /c

 

 

/nologo  :代表不显示编译的版权信息。

/Gz      :采用标准的版权信息。

/W2      :采用二级警告模式 W0至W4 共5级

/WX      :将警告信息视为错误,最大程序的保证了代码的可靠性

/Z7      :用Z7模式产生调试信息。VC默认选项和/driver选项会有冲突

/Od     :关闭调试模式,因为驱动需要内核调试器调试,不需要win32程序那样用VC调试器

/ D WIN32=100 /D _X86_=1 /D WINVER=0x501 /DDBG=1

PreProcessor definitions(预处理器定义):

其中

/D _X86_=1 表示32位系统 

/D WINVER=0x501 表示运行在XP系统 0X500表示2000系统

/D DBG=1         表示Check版本

/Fo"DriverPath/"     这里的DriverPath 表示产生的临时文件存放相对路径

/Fd"DriverPath/"     这里的DriverPath 表示PDB文件存放的路径

                   PDB文件中钫含了大量的符号 是进行源码调试驱动所必需的

/FD               表示生成文件依赖

/c                 只进行编译而不链接

 

Link Project Option

 

ntoskrnl.lib /nologo/base:"0x10000" /stack:0x400000,0x1000 /entry:"DriverEntry"/subsystem:console /incremental:no /pdb:"DriverPath/myddk.pdb" /map:"DriverPath/myddk.map" /debug /machine:I386 /nodefaultlib/out:"DriverPath/myddk.sys"/pdbtype:sept /subsystem:native /driver /SECTION:INIT,D /RELEASE /IGNORE:4078

 

ntoskrnl.lib  NT式驱动链接所必须引用的库文件 WDM式驱动 则需要wdm.lib

/nologo 链接时不显示版权信息

/base:"0x10000" 加载驱动时,设定加载在虚拟内存中的位置

/stack:0x400000,0x1000

/entry:"DriverEntry"

/subsystem:console

/incremental:no

/pdb:"DriverPath/myddk.pdb" 设置PDB文件名

/map:"DriverPath/myddk.map"

/debug /machine:I386

/nodefaultlib   不使用默认库

/out:"DriverPath/myddk.sys" 指定生成驱动的名称

/pdbtype:sept  设置pdb文件类型

/subsystem:native 设置子系统是内核系统

 /driver 编译方式为驱动

/SECTION:INIT,D  将INIT段设置为可抛弃

/IGNORE:4078  忽略4078错误

//4198,4010,4037,4039,4065,4070,4078,4087,4089,4221这些错误都可以忽略

 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值