MAUI app 無法在 Windows 10 22H2 環境上執行 (0x80070005, 0x80040154)

 記錄一個狀況:MAUI app 無法在 Windows 10 22H2 環境上執行。


問題描述

同一個 MAUI 專案,在 Windows 11 機器上執行沒問題,但是無法在 Windows 10 機器上執行。


開發環境:

  • 兩台機器上面的 Visual Studio 版本相同,都是 VS 2022 17.5.0 Preview 2.0。
  • Windows 10 版本是 22H2 build 19045.2364。
  • MAUI 專案採用了 Blazor Hybrid 技術,目標平台為 .NET 7。


狀況:

在 Windows 10 機器上,使用 Visual Studio 2022 開啟我的 MAUI 專案之後,按 F5 或 Ctrl+F5 都沒反應,而 Output 視窗裡面有錯誤訊息:


The program 'MyMauiApp.exe' has exited with code 2147942405 (0x80070005).


此狀況與 MAUI 問題單 #10280 的描述很像。此外,我在 Windows 事件檢視器裡面也有發現兩筆相關的錯誤訊息。一個是 Application Error:



事件檢視器中的另一個錯誤是來自 .NET Runtime:



這個 .NET runtime 錯誤是一個 COM Interop exception,錯誤代碼為 0x80040154。


我參考 MAUI 問題單 #10280  下方留言的一些建議,能試的方法都試一下。然後,問題似乎解決了。說「似乎」,是因為我覺得目前無法百分之百確定此問題不會再出現,需要再多觀察一下。


解決過程

在我的 Windows 10 機器上安裝 Windows App SDK 1.2.2,重開機。


執行上述操作後,用 Visual Studio 2022 開啟我的 MAUI 專案,然後直接按 Ctrl+F5,依然沒有任何動靜。從工作管理員可以看到 Visual Studio 正在忙著工作。


等待幾分鐘,Visual Studio 依然沒有反應,於是我重新啟動 Visual Studio,使用 MAUI 專案範本來建立一個最簡單的 MAUI 專案。結果這個用預設專案範本所建立程式也一樣無法執行。接著,有趣的事情發生了。


我再度重啟 Visual Studio,開啟剛才建立的 MAUI 專案,竟然可以順利執行了!於是我開啟原先那個無法執行的 MAUI 專案(有用到 Blazor Hybrid 技術的那個),在沒有修改任何程式碼的情況下,卻也可以順利執行了。


雖然現在看似問題已經解決,但總覺得過程有點蹊蹺,無法百分百確定問題不會再發生。或許在我東試西試的過程中,有某個關鍵步驟是我沒有留意到的。


先記錄下來,如果相同狀況不再出現,那便是真的解決了。


Keep coding!

沒有留言:

技術提供:Blogger.
回頂端⬆️