2023年3月23日 星期四

[C# WinForm問題] Visual 2022 找不到'AxWMPLib.AxWindowsMediaPlayer'

 


錯誤畫面如下:




即使你的工具箱有辦法選到那個元件, 你也加不進去


一般來說如果您已經確認您的系統中已經安裝了 Windows Media Player,但仍然無法找到 AxWMPLib.AxWindowsMediaPlayer 類型,您可以嘗試手動將其添加到您的專案中。您可以從以下位置中的 Windows 系統目錄中尋找 AxWMPLib.dll 檔案:
C:\Windows\System32\AxWMPLib.dll


因為你根本就沒有那個檔案

AxWMPLib.dll 是 Windows Media Player 的一部分,它通常隨著 Windows 系統一起安裝。因此,通常情況下您不需要進行任何額外的安裝就可以在系統中找到這個檔案。

如果您無法在 C:\Windows\System32\ 路徑中找到 AxWMPLib.dll,您可以嘗試重新安裝 Windows Media Player。您可以從 Microsoft 官方網站下載 Windows Media Player 的最新版本,然後按照安裝向導的提示進行操作。


//----嘗試重新安裝windows media player.
微軟官方提供的步驟



以Windows 11 為例:
Step1:

Step2:

這個按下去之後, 會跳提示, 不用猶豫敲下去就對了, 之後按下確定就會開始把Windows Media Player移除
重開機之後, 重複剛剛的畫面, 這次重新再勾起來安裝, 

安裝完後會跳出安裝成功提示如下:


發現電腦裡的Windows Media Player名稱也不一樣了

但依然這個檔案還是沒有找到dll

但我重新開這個專案之後, 我發現錯誤消失了, 而且工具箱也有出現這個Windows Media Player了


結語:
我電腦使用的環境是Windows 11 家用版
VisualStudio版本: Microsoft Visual Studio Community 2022 (64 位元) - Current 版本 17.4.4
這份錯誤排除,不見得適用所有環境

我將問題排除步驟列出:
1. 重新安裝Windows Media Player, 並且可以參考這篇: 
取得 Windows Media Player


2. 試著更換專案的目標FrameWork, 換比較低一點的版本也許有幫助, 測試中我也有從4.8.0換去4.6.2

3.做完更新後重新開機, 重新開啟專案, 可以試試看


我後來也看到, Visual 2022使用的WindowsMediaPlayer是COM元件的C:\Windows\System32\wmp.dll
感覺跟以前也不太一樣呢