我使用WinForms for Desktop在C#中创建了一个应用程序。我添加了WMP库。如果我要播放单个文件(视频或音频),我只做reproductor.URL = filePath
,它会自动播放(是复制表格中添加的WMP)。
现在我想播放一个播放列表,所以我做了:
curPlaylist = reproductor.playlistCollection.newPlaylist("curPlaylist");
string[] filesArray = Directory.GetFiles(@"C:\playlist", "*.mp3");
foreach (string file in filesArray)
{
WMPLib.IWMPMedia media = reproductor.newMedia(file);
curPlaylist.appendItem(media);
}
reproductor.currentPlaylist = curPlaylist;
并没有任何反应,它没有播放任何文件。
我尝试了reproductor.Ctlcontrols.play();
,但还是没有。如果我计算播放列表中的元素,它会显示3(播放列表文件夹中有3个文件,所以这是正确的)。
我也尝试播放播放列表reproductor.Ctlcontrols.playItem(reproductor.currentPlaylist.get_Item(1));
的第一个元素,但再次没有任何反应。
我想念什么?
答案 0 :(得分:0)
代码正确。这是播放播放列表的正确方法。为什么以前没有工作?可能是某些驱动程序问题,可能是Visual Studio,可能是某些未发布音频驱动程序的应用程序。我关闭了VS,重新启动了PC,并且运行良好。