我正在尝试制作一个小型C#表单应用程序,以便从我的音乐文件夹中获取随机音乐并在Windows Media Player中播放。
按照基本教程我已经实现了WMPLib库,如下所示:
public WMPLib.IWMPMedia temp;
private WMPLib.WindowsMediaPlayer MediaPlayer = new WMPLib.WindowsMediaPlayer();
private WMPLib.IWMPPlaylist playlist;
我有点长长的歌曲采摘algorythm完成:
playlist = MediaPlayer.playlistCollection.newPlaylist("Random playlist");
playlist.clear();
for ( int i = 0; i < finalTracks.Count; i++ )
{
temp = MediaPlayer.newMedia(finalTracks[i]);
playlist.appendItem(temp);
}
label2.Text = selectedArtist + ", " + finalTracks.Count + " tracks";
Process.Start("wmplayer.exe");
MediaPlayer.currentPlaylist = playlist;
MediaPlayer.controls.play();
然而,我根本无法让程序开始播放所选择的歌曲。如果我手动转到WMP中的播放列表,我可以看到生成的播放列表,我甚至可以手动播放它们,没问题,但最后两行似乎只是被忽略,没有播放列表被选为当前状态,没有任何内容开始播放。
我也尝试过没有Process.Start
行,它甚至没有启动WMP。好像WMPLib.WindowsMediaPlayer
没有链接到Windows中的实际WMP程序,更像是一个没有完全实现的单独控件,但是Web上的所有教程和代码示例都像我一样使用它。
我做错了什么?