Windows Media Player中当前播放的项目(wmplayer.exe ver.12)

时间:2010-10-24 19:22:06

标签: c# .net mp3 windows-media-player wmplib

现在尝试了一段时间。 我在网上看到的所有解决方案似乎都不起作用,特别是真正简单的方法。

WMPLib.WindowsMediaPlayer c = new WMPLib.WindowsMediaPlayer();
IWMPMedia i = (IWMPMedia)c.currentMedia;

c.currentMedia始终为空。

似乎是新的WMPLib.WindowsMediaPlayer();始终创建Windows Media Player的新实例。 首先,我认为我是以管理员身份运行visual studio,但改变它并没有帮助。

似乎我不得不连接到正在运行的wmplayer.exe实例,但无法找到办法。

顺便说一下。我需要的是当前播放歌曲的完整文件网址(如果是流式传输,则为fullurl,但这是我现在最不关心的问题。)

1 个答案:

答案 0 :(得分:1)

您的问题已经回答here

  
      
  1. 非常直接的方式:

         

    在此处获取一个WMP9插件,将您当前的歌曲名称放在   WMP窗口的标题栏,并使用   FindWindow P / Invoke获取窗口   并获得歌曲名称。它应该工作,   虽然有点棘手。

         

    查看here了解详情。

         

    Windows Media Player 9 Series Blogging Plug-in

  2.   
  3. 一种更复杂的方式:

         

    由于您的申请和WMP将是不同的流程,您的   场景需要某种形式   进程间通信(IPC)。和   .NET为此提供远程处理。

         

    以下是一些有用的信息:

         

    How to interact with Windows Media Player in C#

         

    Windows Media Player Remoting in C#

  4.   

来自SamAgain