2011-09-17 11 views
-1

私は基本的なビデオプレーヤープログラムを作成中です。私はthisチュートリアルをオンラインで見つけました。これはちょうど私が探していたヘルプの種類です - チュートリアルは.net 2.0のために書かれました。.Net 4.0用のビデオプレーヤーを作成するにはどうすればよいですか?

これは、例えば、もともと私が完成したプログラムを実行しようとしたときに、私はthis questionと同じランタイムエラーが発生したことを意味します。私は受け入れ答えどおりという固定が、今は新しいバグを取得:

DLL 「C:\ WINDOWS \アセンブリ\ GAC \ Microsoft.DirectX Microsoft.DirectX \ \ 1.0.2902.0__31bf3856ad364e35を。 dll ' は、OSローダーロック内で管理された実行を試みています。 DllMainまたはイメージ初期化関数 の内部でマネージコードを実行するように を試行しないでください。アプリケーションがハングする可能性があります。

このチュートリアルのコードを.net 4.0で動作するものに更新する方法はありますか?それとも、最新のチュートリアルを見つけるだけでいいのですか?

答えて

1

廃止された管理されたDirectXラッパーは実際にこの警告を生成します。これは誤った警告で、CLRは既にロードされています。 Debug + Exceptions]、[Managed Debugging Assistants]ノードを展開し、LoaderLockをアンロックします。

+0

廃止されていないラッパーを使用してこれを行うより良い方法はありますか? –

+0

確かに、あなたのツールボックスにWindows Media PlayerのCOM参照を追加して、フォームにドロップすることができます。それはビデオをかなりうまく再生しますが、時間がかかります。適切なDSフィルタがインストールされていれば、DirectShow.NETも正常に動作します。しかし、あなたはこれを非退屈な方法でやろうとしていたように思えました。 –

0

FFmpegライブラリをラップするAForge.NETを使用して、C#で多くの種類のビデオファイルを扱うことをお勧めします。 DirecXを使用しないでください。http://www.aforgenet.com/framework/downloads.html このフレームワークビデオプレーヤーでの構築は簡単で時間を無駄にしません。

関連する問題