2017-02-05 21 views
6

EmguCVとVisual Studio Express 2010経由でWin8.1x64でアプリケーションを開発しています。新しいプロジェクト(C#windowsアプリケーション)を作成すると、ターゲットプラットフォームとしてx86が自動的に選択され、他に選択肢はありません。下のコードで画像を読み込もうとすると、エラーが発生します。ターゲットプラットフォームが選択されていない場合や、オペレーティングシステムに似ていない場合にこのエラーが発生することはわかっていますが、ターゲットプラットフォームをx64に変更する方法はわかりません。Win8.1x64でEmguCVとVisual Studio Express 2010を設定する方法

Image<Gray, byte> OrginalImage = new Image<Gray, byte>(Openfile.FileName); 

[System.BadImageFormatException] = { "試みが誤っフォーマットで プログラムをロードするためになされた(HRESULTからの例外: 0x8007000B)。"}

答えて

2

最初必要64ビットのラップトップで64ビットのemgucvを使用していることを確認してください。

プラットフォームターゲットを設定するには、ソリューションエクスプローラで[現在のプロジェクト]を右クリックし、[プロパティ]オプションをクリックします。

ビルドオプションに移動すると、ドロップダウンオプションでPLATFORM TARGETオプションが表示されます。 64-bit Option(x64)をクリックします。

2

あなたはx64のビットCPUアーキテクチャのコンピュータ上EmguCVのx64のビット版を使用していることを確認しVisual Studioで2010 How to: Configure Projects to Target Platforms

をターゲットプラットフォームを設定するための簡単なGoogle検索。

+0

「Express」バージョンのVisual Studioを使用していることを考慮してください。私のWindowsはx64で、私はEmgucv 64bitを使用していると確信しています。 –

1

EmguCVにはx86とx64の両方のネイティブバイナリがありますので、アプリケーションの対象とするアーキテクチャを決定するのはあなた次第です。ビルドディレクトリにバイナリを追加することができるはずです。EmguCVがそれらを見つけることができるはずです。それに失敗した場合は、PATHにバイナリを含むディレクトリを追加してください。

0

インストールの代わりにEmguCV NuGetパッケージを使用してください。自動的にビルドターゲットに対応するものが自動的に選択されるようです。 NuGetを使うと、必要な参照がすべて自動的に設定され、ビルド時に出力ディレクトリに\Emgu.CV.UI.dll\x64\opencv_ffmpeg310_64.dllのようなものがコピーされます。

関連する問題