WMP结束后,WMP继续播放

时间:2014-08-23 23:11:00

标签: c# wmp

通过Windows Designer以表格形式嵌入WMP。当我用WMP关闭表格时,它并没有停止比赛。怎么了? ReleaseComObjectd也不起作用,抛出异常(mscorlib.dll中发生了'System.ArgumentException'类型的未处理异常

附加信息:对象的类型必须是__ComObject或从__ComObject派生。)。

// OnClose handler
private void Watch_FormClosing(object sender, FormClosingEventArgs e)
{
    currentSerie.LastTime = player.Ctlcontrols.currentPosition; // update last time of current serie

    player.close(); // close player
    player.Dispose();
}

// WMP OnPLayStateChange handler
private void player_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
{
    switch (e.newState)
    {
        case 1:    // Stopped
            trackingTimer.Stop();
            break;

        case 2:    // Paused
            trackingTimer.Stop();
            break;

        case 3:    // Playing
            trackingTimer.Start();
            break;

        case 6:    // Buffering
            trackingTimer.Stop();
            break;

        case 8:    // MediaEnded
            this.BeginInvoke((MethodInvoker)delegate { seriesList.SelectedIndex++; }); // let's go play next serie
            break;

        case 10:   // Ready
            // let's play file from the last played time
            this.BeginInvoke((MethodInvoker)delegate { player.Ctlcontrols.currentPosition = currentSerie.LastTime; player.Ctlcontrols.play(); });
            break;

        case 11:   // Reconnecting
            trackingTimer.Stop();
            break;
    }
}

private void seriesList_SelectedIndexChanged(object sender, EventArgs e)
{
    /* getting new video */
    player.URL = video.Url;
}

0 个答案:

没有答案