1

我为编译驱动程序配置了 Visual Studio 2008,但仍然显示 ctype.h 和 excpt.h 的头文件的许多语法错误

4

2 回答 2

0

检查是否已将 Visual Studio 头文件、库文件、可执行文件路径正确添加到 DDK 目录..

于 2013-09-26T04:44:27.263 回答
0
I configured with following settings :

Setup Visual Studio 2008.

    Setup ddk (wdk).

    Add to Visual Studio paths DDK include files, libs and bins, In VS goto tools ->options->Project and solutions->VC++ directories-> add path to your ddk Include files,Executeable file,Library file 

    Create new empty "Win32 project" and add source file (i.e. Hello_World.c).

    Configure project properties (All Configurations):

    C\C++ - General - Debug Information Format = Program Database (/Zi)
    C\C++ - Optimization - Disabled
    C\C++ - Preprocessor - Preprocessor Definitions = _X86_;_DEBUG;DBG
    C\C++ - Code Generation - Enable Minimum Rebuild = Yes(/Gm)
    C\C++ - Code Generation - Enable C++ Exceptions = No
    C\C++ - Code Generation - Basic Runtime Checks = Default
    C\C++ - Code Generation - Buffer Security Check = No (/GS-)
    C\C++ - Advanced - Calling Convention = __stdcall (/Gz)
    C\C++ - Advanced - Compile As = Compile as C Code (/TC) [if you are going to use plain   
    C\C++ - Command Line - it must show /Od /D "_X86_" /D "_DEBUG" /D "DBG" /D "_MBCS" /Gm /MDd /GS- /Fo"Debug\\" /Fd"Debug\vc90.pdb" /W3 /nologo /c /Zi /Gz /TC /showIncludes /errorReport:prompt                                                         C]
    Linker - General - Output File = $(OutDir)\$(ProjectName).sys
    Linker - General - Enable Incremental Linking = Default
    Linker - Input - Additional Dependencies = ntoskrnl.lib hal.lib $(NOINHERIT) [add     
                                               needed libs here e.g. ntoskrnl.lib hal.lib]
    Linker - Input - Ignore All Default Libraries = Yes (/NODEFAULTLIB)
    Linker - Manifest File - Generate Manifest = No
    Linker - System - Sub System = Native (/SUBSYSTEM:NATIVE)
    Linker - System - Driver = Driver (/DRIVER)
    Linker - Advanced - Entry Point = DriverEntry
    Linker - Advanced - Base Address = 0x10000
    Linker - Advanced - Randomized Base Address = Default
    Linker - Advanced - Data Execution Prevention (DEP) = Default

现在使用当前设置为您的驱动程序代码构建解决方案..

于 2013-09-25T04:49:15.590 回答