2011-06-22 21 views
0

C#で書かれたDLLをC++のアプリケーションで使用する必要があります。 セッティング: OS:Win7の32 OS C++ DLL:64ビット C#アプリケーション:64Windows 7のC#アプリケーションでC++ DLLを読み込めません。32ビットOS

Iは、C++プロジェクトの64ビットのようなプラットフォームを設定します。私はDLLを作成しました。 C++ dllにアクセスしようとすると失敗します。 エラー "無効なDLL"

+0

外部関数を宣言するために使用するコードを記述できますか? –

+1

"OS:Win7 32" - 64ビットDLLを32ビットオペレーションシステムにロードすることはできません。 – Matthias

+0

@Felice:別のC#クラスライブラリと同じように、外部関数を参照しました。これまでは、32ビットのC++ dllで正常に動作していました。私は参照を追加し、アセンブリを使用します。私はクラスのインスタンスを作成してアクセスしました。今私は、C++プロジェクトのプラットフォームを64ビットに変更しました。 – Lakshmanan

答えて

1

答えはwinSharp93と全く同じです。 DLLが64ビットの場合、32ビットOS上にロードすることはできません。

+0

Loadの代わりに、参照する他の方法はありますか? – Lakshmanan

+0

64ビットプラットフォーム用にコンパイルされたC++ DLLです。32ビットプラットフォーム上では動作しません。 –

関連する問題