當我在 Visual Studio 2022 中生成一個新的 WinRT 專案時,我收到錯誤 E1696 無法打開源檔案“winrt/Windows.Foundation.h”但是當我查看包含目錄時,這些檔案確實存在于正確的位置。
uj5u.com熱心網友回復:
這是 C /WinRT 作業方式的產物。雖然頭檔案確實存在于 Windows SDK 中,但這不是專案去尋找它們的地方。相反,它們是在Generated Files目錄下的源代碼樹中動態生成的。
因此,要解決此問題,您必須至少編譯一次新創建的專案。這本身不足以讓 IntelliSense 感知環境的變化。為了幫助 IntelliSense,您必須右鍵單擊源編輯器,然后選擇Rescan -> Rescan File。
完成后,所有 IntelliSense 錯誤都會消失,包括 E1696。
uj5u.com熱心網友回復:
通常,構建 --> 清理解決方案,然后是構建 --> 構建解決方案就足以解決問題。給 Visual Studio 幾秒鐘時間來完成任何后臺作業。
如果失敗,請嘗試重新安裝 Microsoft.Windows.CppWinRT NuGet 包。
- 轉到工具 --> NuGet 包管理器 --> 管理解決方案的 NuGet 包...
- 在 NuGet 解決方案窗格中,選擇已安裝選項。
- 勾選右側視窗中專案名稱旁邊的復選框。
- 點擊卸載按鈕
- 然后在“更改預覽”對話框中單擊“確定”。
- 現在將洗掉 CPPWinRT 包。
- 更改為 NuGet 解決方案窗格中的瀏覽選項。
- 在窗格的搜索文本框中鍵入“cppwinrt”。
- 選擇 Microsoft.Windows.CppWinRt 包并安裝它。
- 最后選擇 Build --> Build Solution 選項。
- 構建完成后,再給 Visual Studio 幾秒鐘時間來完成任何后臺作業,錯誤應該消失了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/386147.html
