0

I have this code:

private void OtworzPlikButton_Click(object sender, RoutedEventArgs e)
    {
        OpenFileDialog ofd = new OpenFileDialog();
        ofd.ShowDialog();
        string directory = ofd.FileName;
        WMPLib.WindowsMediaPlayer wplayer = new WMPLib.WindowsMediaPlayer();
        wplayer.URL = directory;
        wplayer.controls.play(); 
    }

I'm getting the file directory from the OpenFileDialog and I am using wplayer to start playing music. At first it is working good but after 20-30 seconds, music suddenly stops playing and I can't figure out why. I am playing MP3 file.

Marcin Majewski
  • 1,007
  • 1
  • 15
  • 30

1 Answers1

6

You should create instance of WindowsMediaPlayer in class level scope (not inside OtworzPlikButton_Click event handler scope).

WMPLib.WindowsMediaPlayer wplayer;

private void OtworzPlikButton_Click(object sender, RoutedEventArgs e)
{
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.ShowDialog();
    string directory = ofd.FileName;
    wplayer = new WMPLib.WindowsMediaPlayer();
    wplayer.URL = directory;
    wplayer.controls.play(); 
}
kmatyaszek
  • 19,016
  • 9
  • 60
  • 65