我正在寻找一种与独立完整版Windows Media Player进行交互的方法.
大多数情况下,我需要知道当前播放曲目的路径.
iTunes SDK让这非常简单,但不幸的是,使用Windows Media Player真的没有任何办法,至少在.Net(C#)中没有任何大量使用pinvoke,我不太满意.
谢谢
只是为了澄清:我不想在我的应用程序中嵌入一个新的Windows Media Player实例,而是控制/读取"真正的"完整版Windows Media Player,由用户单独启动
只需添加对wmp.dll的引用(\ windows\system32\wmp.dll)
using WMPLib;
然后您可以实例化媒体播放器
var Player = new WindowsMediaPlayer(); // Load a playlist or file and then get the title var title = Player.controls.currentItem.name;
有关详细信息,请参阅以编程方式创建Windows Media Player控件
对于远程Windows Media Player,您可以使用IWMPRemoteMediaServices接口来控制独立的Windows Media Player.并且您应该能够从WMP播放器对象中读取所需的所有信息,例如标题或文件名.不幸的是,SDK中没有C#smaple代码.您可以从这里获取文件:http://d.hatena.ne.jp/punidama/20080227查找文件WmpRemote.zip原来它来自这里:http://blogs.msdn.com/ericgu/archive/2005 /06/22/431783.aspx
然后你必须转换为WindowsMediaPlayer对象:RemotedWindowsMediaPlayer rm = new RemotedWindowsMediaPlayer(); WMPLib.WindowsMediaPlayer myPlayer = this.GetOcx()as WMPLib.WindowsMediaPlayer;
那你去..