2016-07-24 128 views
2

我正在開發Windows內核模式驅動程序。 我已經安裝了WDK10,Windows SDK以及Windows 7 SDK。我想定位Windows 7,所以我需要特定的包含等,但Visual Studio只允許我將Retarget解決方案應用於Win10或Win8.1,但我需要Win7 SDK,例如,如果我想要使用ZwQuerySystemInformation。 我試着重新安裝所有東西,但沒有任何幫助。WDK 10 - 無法安裝SDK7安裝的Windows 7

我在Windows 10,所以我不能安裝WDK 7

+0

直到WDK 8.1才能集成VS。 WDK7的方式是使用與nmake.exe一起構建的makefile。 「無法安裝」是絕望的模糊,反正安裝不是很有用。只需在Win7機器上執行此操作,就可以測試驅動程序,並在您的Win10機器上構建xcopy文件。 –

+0

@Hans Passant哦,我確定它和VS有交互作用。那就解釋了很多。感謝幫助! –

+0

嗯,可悲的是,新版本的WDK不允許你針對老版本的Windows。如果您希望定位Windows 7,請嘗試使用WDK 8.1。它對我來說工作正常(當我足夠小心時,驅動程序在XP上也能很好地工作)。如果最新的WDK沒有ZwQuerySystemInformation的定義,您可以通過__declspec(dllimport)指令添加它。問題是新版本的內核是否會導出這個函數。 –

回答

2

的Windows 10 WDK允許你開發低級別最高的Windows 7驅動程序,我不認爲你需要WDK 7 。要使用windows 10 WDK構建針對Windows 7的驅動程序,創建一個驅動程序項目,然後在項目屬性 - > Driver-> General中,將TargetVersion設置爲Win7