我正在開發一個歌詞相關的應用程序,我需要聽Windows Media Player事件。 我觀察了「可訪問事件觀察者」中的Windows事件,並且發現WMP在狀態或當前位置發生更改時會發送一些事件。 我在MSDN a How to set a Windows hook in Visual C# .NET上搜索並發現了這篇文章,但是我無法使其工作。如何收聽C#中的Windows事件?
我如何可以收聽從我的C#應用程序或使用其他方法來獲得當前歌曲和WMP播放狀態有什麼建議的活動?\
謝謝
我正在開發一個歌詞相關的應用程序,我需要聽Windows Media Player事件。 我觀察了「可訪問事件觀察者」中的Windows事件,並且發現WMP在狀態或當前位置發生更改時會發送一些事件。 我在MSDN a How to set a Windows hook in Visual C# .NET上搜索並發現了這篇文章,但是我無法使其工作。如何收聽C#中的Windows事件?
我如何可以收聽從我的C#應用程序或使用其他方法來獲得當前歌曲和WMP播放狀態有什麼建議的活動?\
謝謝
本文介紹如何使用作爲Windows媒體播放器系統基礎根的AxWindowsMediaPlayer
獲取事件。你會看到,各種狀態變化事件可以正常採用。
http://msdn.microsoft.com/en-us/library/windows/desktop/dd562388(v=vs.85).aspx
您應該能夠從Windows ROT(運行對象表),以獲得一個運行實例?
http://www.darinhiggins.com/the-running-instance-of-windows-media-player/
編輯:
這是另一種方式......
http://www.darinhiggins.com/gaining-access-to-a-running-instance-of-windows-media-player-in-vb-net/
這是否幫助你嗎? http://forums.msdn.microsoft.com/en-US/clr/thread/dbd43d7e-f3a6-4087-be06-df17e76b635d。這裏也有這個帖子Getting windows media player currently playing song可以回答你的問題。
感謝您的快速回復lulia, –
我檢查了你的建議的文章,但他們可以在Windows窗體上使用WMP控件時使用,但我需要獲取當前媒體和用戶在Windows自己的WMP中播放的歌曲的狀態。 –
感謝Visual Micro,我相信這將在窗體上創建一個WMP控件的新實例,但我需要訪問Windows自己的WMP而不是創建一個新窗體。 –
有什麼辦法從ActiveX中訪問系統的主要WMP實例嗎? –
添加了有關ROT的注意事項 –