C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

axWindowsMediaPlayerのステータスを取得

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■88765 / inTopicNo.1)  axWindowsMediaPlayerのステータスを取得
  
□投稿者/ C++ (1回)-(2018/09/25(Tue) 17:31:44)

分類:[C++/CLI] 

プログラミング言語 : C++/CLI

Windowsフォームアプリケーションで動画を再生させたいと考えております。
起動したらすぐにマルチスレッド処理を開始し、並列処理先では動画が再生されたら処理を開始するというようなプログラムを組みたいと考えております。

そこで、並列処理先では一番最初に
while (axWindowsMediaPlayer_Vision->playState != WMPLib::WMPPlayState::wmppsPlaying) {}
を入れて動画が再生されるまで無限ループさせようと考えました。


しかし、この1行を入れた瞬間、動画が再生されずにアプリケーションがフリーズします。
"○○は動作を停止しました"というエラーが出てきます。


何か解決方法ありませんでしょうか?
引用返信 編集キー/
■88766 / inTopicNo.2)  Re[1]: axWindowsMediaPlayerのステータスを取得
□投稿者/ とっちゃん (536回)-(2018/09/25(Tue) 18:03:55)
No88765 (C++ さん) に返信

axWindowsMediaPlayer って、COM(OCX)のやつですよね?
STAで作られてると思うので、マルチスレッドアクセスは原則NGだと思うのですが。。。

それはともかく、再生開始はイベントで確認するのがいいと思います(詳しくはリファレンスを見てください)。

引用返信 編集キー/
■88772 / inTopicNo.3)  Re[2]: axWindowsMediaPlayerのステータスを取得
□投稿者/ C++ (2回)-(2018/09/25(Tue) 22:00:40)
そうすることにしました。
解決です、ありがとうございました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ