C# 从 Windows Media Player 获取当前歌曲源 url

Posted

技术标签:

【中文标题】C# 从 Windows Media Player 获取当前歌曲源 url【英文标题】:C# Get current song source url from Windows Media Player 【发布时间】:2013-08-10 04:14:55 【问题描述】:

我正在尝试创建一个小应用程序,通知用户当前在 Windows Media Player 上播放的歌曲的路径。

所以我四处搜索并发现了一个很好的代码:

WMPLib.WindowsMediaPlayer player = new WMPLib.WindowsMediaPlayer();
// Get an interface to the first media item in the library. 
WMPLib.IWMPMedia3 firstMedia = (WMPLib.IWMPMedia3)player.mediaCollection.getAll().get_Item(0);

// Make the retrieved media item the current media item.
player.currentMedia = firstMedia;

// Display the name of the current media item.
currentMediaLabel.Text = ("Found first media item. Name = " + player.currentMedia.name);

但问题是这段代码实际上是获取列表中的第一首歌曲而不是获取当前歌曲,我尝试更改方法但没有好处:(我希望你能帮助我。

【问题讨论】:

【参考方案1】:

您已经在player.currentMedia 中拥有它。

WMPLib.WindowsMediaPlayer player = new WMPLib.WindowsMediaPlayer();

// start the player
...

if(player.currentMedia != null)

    // Display the name of the current media item.
    currentMediaLabel.Text = ("Found first media item. Name = "
                              + player.currentMedia.name);

【讨论】:

它不起作用,我收到此错误:System.NullReferenceException 这意味着player.currentMedia 为空,如果还没有歌曲正在播放,就是这种情况。在您的代码中,您应该在访问其属性之前验证 player.currentMedia 不为空。【参考方案2】:

给你几个链接。

基本上

    获取windows media player的窗口标题 以编程方式

http://social.msdn.microsoft.com/Forums/vstudio/en-US/0f784799-f50b-46da-857b-b08373bcceef/getting-the-current-song-name-in-windows-media-player-c

http://www.xtremevbtalk.com/archive/index.php/t-265768.html

How to interact with Windows Media Player in C#

【讨论】:

以上是关于C# 从 Windows Media Player 获取当前歌曲源 url的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中使用 Windows Media Player 播放声音

更改 Windows Media Player 的目标扬声器

如何使用 Windows Media Player 从 Google Drive 流式传输视频?

C# mediaplayer播放指定区间

怎么用windows media player

windows media player和media player classic有啥区别?