掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TWindowsMediaPlayerで個々のファイルを連続再生させるには (ID:33649)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
う〜ん、、これでも止まってしまいますか。 うちでは出ない現象なのでどこがだめな部分なのか分かりません。 ちなみに私はDelphi 6 Pro、XP HomeのSP2、WMPは10です。 PCによって動いたり動かなかったりということだと、ffdshowなどをインストールしていたら、そのあたりのからみなのかもしれないかなぁ…というくらいですかね。 とりあえず、MoviePlayのWindowsMediaPlayer1.currentPlaylist.clear;をtry文で囲ってみてください。 これでエラーが出なくなれば、、という期待をこめて。 WindowsMediaPlayer1.controls.stop; try WindowsMediaPlayer1.currentPlaylist.clear; except end; で、例えばMemoをフォームに貼り付けて、 procedure TForm1.MoviePlay; begin if (PlayListNo < ListBox1.Count) then begin Memo1.Lines.Add('MoviePlay - in controls.stop'); WindowsMediaPlayer1.controls.stop; Memo1.Lines.Add('MoviePlay - out controls.stop'); try Memo1.Lines.Add('MoviePlay - in currentPlaylist.clear'); WindowsMediaPlayer1.currentPlaylist.clear; Memo1.Lines.Add('MoviePlay - out currentPlaylist.clear'); except end; Memo1.Lines.Add('MoviePlay - in URL'); WindowsMediaPlayer1.URL := ListBox1.Items[PlayListNo]; Memo1.Lines.Add('MoviePlay - out URL'); F_bStop := False; Memo1.Lines.Add('MoviePlay - in controls.play'); WindowsMediaPlayer1.controls.play; Memo1.Lines.Add('MoviePlay - out controls.play'); Inc(PlayListNo); end; end; のようにデバッグコードを仕込んで走らせればエラーが出るところを特定できるかもしれません。 MoviePlayだけでなくOnPlayStateChangeイベントやOnOpenStateChangeイベント内でも同様にデバッグコードを仕込みます。 面倒ですがやってみて損はないと思います。 それでもだめなら >演奏中ループで回してやると >MOV、音楽CDのcdaもwmvもmpgもaviファイルも >連続再生するのですが、 ということなので、それでも良いと思います。 たとえスマートなやり方でなくても、ちゃんと動くことの方が重要だと思いますので。 ただループを使うよりはタイマーを使って監視した方が楽ではないかなぁと思います。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.