C#中的WMP库 - 列表中的播放列表

时间:2012-05-20 18:58:00

标签: c# wmp wmplib

我刚刚发现了关于C#的Windows Media Player库,因为我正在为我的朋友制作一个愚蠢的小应用程序我以为我会添加它(因为他喜欢音乐)。

string ply = "Playlist";
        WMPLib.IWMPPlaylist pls;
        WMPLib.IWMPPlaylistArray plItems;

        plItems = axWindowsMediaPlayer1.playlistCollection.getByName(ply);

        if (plItems.count == 0)
        {
            pls = axWindowsMediaPlayer1.playlistCollection.newPlaylist(ply);
        }
        else
        {

            plItems.Item(0);

            string line;
            System.IO.StreamReader stream = new StreamReader(pth);
            while ((line = stream.ReadLine()) != null)
            {
                if (File.Exists(line))
                {
                    WMPLib.IWMPMedia m1 = axWindowsMediaPlayer1.newMedia(line);

                    pls.appendItem(m1); /*gives an error here (use of unassigned variable)*/
                }
            }
        }
    }

我已经尝试创建播放列表的实例,但我无法让它允许该行,任何帮助将不胜感激 (注意,'pth'字符串在方法

中先前已声明

1 个答案:

答案 0 :(得分:0)

问题是,如果plItems.count大于0,则pls永远不会设置为任何内容,因此您无法在其上调用appendItem

也许你想说

pls = plItems.Item(0);

而不是

plItems.Item(0);
您的else分支中的

(没有做任何事情)。这将导致您的应用将媒体项目添加到库中的第一个播放列表。