2011-06-21 13 views
2

私はWindows 7 64ビットマシンで開発中です。 Visual StudioでC#を使用したソリューションがあり、私のプロジェクトにhereというImageMagickのソリューションを追加しようとしています。ImageMagickを既存のVisual Studio C#ソリューションに統合する

私は自分のプロジェクトにソリューションを追加し、リンカーとc/C++の一般的な設定と共通のプロパティをチェックしました。すべてが順番に表示されます。また、自分のプロジェクトでImageMagickNET8(ImageMagickプロジェクトの名前)への参照を追加しました。

ImageMagickプロジェクトへの呼び出しを試みると、 ImageMagickNET.Image img = new ImageMagickNET.Image( "c:\ picture.jpg");

は...次の例外がスローされます。 BadImageFormatExceptionは は、ファイルまたはアセンブリ「ImageMagickNET8、バージョン= 1.0.4189.18742、カルチャニュートラル、PublicKeyToken = = null」またはその依存関係の1つをロードできませんでした未処理でした。不正な形式のプログラムをロードしようとしました。

私は既存のプロジェクトにプロジェクトを追加するための基本的なことを忘れています。

答えて

2

ImageMagickは、任意のCPUではなく、x86のみにコンパイルするように設定されている可能性があります。 x86になるようにプロジェクトを変更してみてください。プロジェクト+プロパティ、ビルドタブ、プラットフォームターゲット設定。

+1

ソリューションをx86に変更し、ImageMagickNET8のプラットフォームがWin32であることに気付きました。今私が実行すると、同じ例外、BadImageFormatExceptionを取得しますが、新しいメッセージで:有効なWin32アプリケーションではありません。 (HRESULTからの例外:0x800700C1)。また、Application.Run(New PhotoLoader())行のProgram.csで停止していることに注目することもできます。 – tek

+0

私は実際にこれを修正するために、プロジェクト設定でx64に設定しました。 – Stoopkid