2013-08-10 6 views
0

Я пытаюсь создать небольшое приложение, которое уведомляет пользователя о пути текущей песни, воспроизводимой в Windows Media Player.C# Получить текущий источник источника песни от Windows Media Player

Так я искал вокруг и наткнулся на хороший код:

WMPLib.WindowsMediaPlayer player = new WMPLib.WindowsMediaPlayer(); 
// Get an interface to the first media item in the library. 
WMPLib.IWMPMedia3 firstMedia = (WMPLib.IWMPMedia3)player.mediaCollection.getAll().get_Item(0); 

// Make the retrieved media item the current media item. 
player.currentMedia = firstMedia; 

// Display the name of the current media item. 
currentMediaLabel.Text = ("Found first media item. Name = " + player.currentMedia.name); 

Но проблема в том, что этот код на самом деле выбирает первую песню в списке вместо получения текущей песни, я попытался изменить методы, но не хорошо :(и я хочу, чтобы ты мог мне помочь.

ответ

2

у вас это уже в player.currentMedia.

WMPLib.WindowsMediaPlayer player = new WMPLib.WindowsMediaPlayer(); 

// start the player 
... 

if(player.currentMedia != null) 
{ 
    // Display the name of the current media item. 
    currentMediaLabel.Text = ("Found first media item. Name = " 
           + player.currentMedia.name); 
} 
+0

Это не работа, я получаю эту ошибку: System.NullReferenceException – BOSS

+0

Это означает, что 'player.currentMedia' является нулевым, если это так, если песня еще не воспроизводится. В вашем коде вы должны убедиться, что 'player.currentMedia' не имеет значения null до того, как он будет использовать его свойства. – manji