■34416 / inTopicNo.1) |
音楽の再生 |
□投稿者/ マエダス (1回)-(2009/03/28(Sat) 19:13:18)
|
分類:[C#]
音楽の再生について教えてください。
WinXP SP3 C# VS2008です。
C:\tmpにある複数の音楽ファイルを順番に再生したいのです。
http://dobon.net/vb/dotnet/programing/playmidifile.html
を参考に、次のようにしてみました。
string[] musicFiles = Directory.GetFiles("C:\tmp", "*.mp3");
foreach (string musicFile in musicFiles)
{
WMPLib.WindowsMediaPlayer mediaPlayer = new WMPLib.WindowsMediaPlayer();
mediaPlayer.URL = musicFile;
if (mediaPlayer.status.ToString().Contains("メディアを開いています")) {;}
else if (mediaPlayer.status.ToString().Contains("を再生中")) {;}
else if (mediaPlayer.status.ToString() == null) {;}
else {mediaPlayer.controls.play();}
}
これで、ファイルがひとつだけのときは再生できるのですが、
複数ある場合は、複数のファイルを同時に再生してしまいます。
条件わけがうまくいってないことはわかるのですが、
どう修正したらよいか見当がつきません。
再生時にフラグを立て、
再生終了時にフラグをオフにすればよいのだろうとは思うのですが、
再生終了時をどう表現したらよいかがわからないでいます。
statusで、現在のステータスを獲得できることはわかって、
それを条件づけてみたのですが、まだ多重再生されてます。
どなたかアドバイスをよろしくお願いします。
|
|