VS2008 + SP1 + Win7 X64
1. 安裝WDK,並配置系統環境變量:WDKROOT-D:\WinDDK\7600.16385.1
2. 啟動VS2005,在菜單欄“工具”-“選項”內選擇“項目和解決方案”-“VC++目錄”依次添加所需的目錄,具體配置如下圖:
注意:$(WDKROOT)\inc\api一定要放在第一個,否則會導致編譯失敗
3. 具體的項目屬性按照如下設置:
注:創建項目時選擇“Win32項目”
代碼例子:
編譯運行,會發現提示錯誤,
第一種情況:
error LNK2019: 無法解析的外部符號 @__security_check_cookie@4
請您將“項目屬性”-“C/C++”-“代碼生成”的“緩沖區安全檢查”設為“否”
第二種情況:
會出現error C3861: “SAL_functionClass”: 找不到標識符等等100多的錯誤信息,
形成原因是因為:安裝了windows sdk6.0 和7.1的沖突, 在vc項目的lib, incluce里調整順序。 把7.1放在6.0的前面。
第三種情況:
error LNK1295: “/MANIFESTUAC”與“/DRIVER”規范不兼容;鏈接時不使用“/MANIFESTUAC”
這是因為UAC開啟導致的 , 進入項目 - 屬性 - 連接器 - 清單文件 - 啟用用戶賬戶控制(否)即可
編譯成功,出現系統文件: