[英]“LNK1104 Cannot open file 'kernel32.lib' ” when Windows SDK version is set to 15063.13
我正在Visual Studio 2017中進行C ++,最近剛剛將更新的Windows 10從Anniversary Update更新為Creator的更新。
我偶然發現,當我編譯DLL項目時,我會收到錯誤消息:
LNK1104 - cannot open file 'kernel32.lib'
在Project Properties中稍微調整一下后,我注意到如果Windows SDK版本從10.0.14393.0
設置為10.0.15063.0
,則會顯示錯誤消息。 如果我把它設置回10.0.14393.0
,我可以編譯得很好。
我想知道為什么當Windows SDK版本設置為Creator的Update版本時,它會拋出此錯誤消息,但如果設置回Anniversary Update的構建版本則不會?
謝謝。
Windows 10 Creators Update SDK對作為安裝的一部分安裝的內容進行了一些重大更改,以最大限度地減少磁盤占用空間。 這是一個已知問題,由於重構工作,默認情況下不會安裝Creators Update SDK的“桌面”組件。 以前的新項目邏輯總是選擇最新的Windows 10 SDK,假設桌面部分是作為安裝方案的一部分安裝的。 我們正在努力修復未來的更新。
可用的解決方法如下:
選擇項目屬性中完全安裝在系統上的Windows 10 SDK版本(即10.0.14393.0或更早版本)
通過Visual Studio安裝程序安裝'Windows 10 SDK(10.0.15063.0)for Desktop'組件。 win10sdk-15063desktop.png
丹尼爾格里芬,
Visual C ++庫
我有同樣的問題,老實說,看起來像VS 2017中的一個錯誤。只需切換到10.0.10586.0
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.