C#で作成したexeからC++/CLIで作成したdllを呼び出すと例外となる
- 題名: C#で作成したexeからC++/CLIで作成したdllを呼び出すと例外となる
- 著者: zizou
- 日時: 2006/05/13 17:15:17
- ID: 15741
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: C#で作成したexeからC++/CLIで作成したdllを呼び出すと例外となる
- 著者: 中博俊
- URL: http://naka.wankuma.com
- 日時: 2006/05/13 18:44:27
- ID: 15744
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: C#で作成したexeからC++/CLIで作成したdllを呼び出すと例外となる
- 著者: 中博俊
- URL: http://naka.wankuma.com
- 日時: 2006/05/13 22:07:42
- ID: 15749
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: C#で作成したexeからC++/CLIで作成したdllを呼び出すと例外となる
- 著者: zizou
- 日時: 2006/05/22 17:02:46
- ID: 15898
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
開発環境:WindowsServer2003 x64
開発言語:C++、C#(VS2005)
アンマネージドなAPIを呼び出すためマネージドC++(C++/CLI)でDLLを作成し、
そのDLLをC#で作成したexeから呼び出そうとしています。
しかし、64bit環境でC#(VS2005)で作成したexe(コンソールアプリケーション)からC++(VS2005)で作成したdll(クラスライブラリ)のクラスを呼び出すとBadImageFormatException がスローされてしまいました。
同じプログラムを32bit環境で行うとこの例外は起こらず正常に動作します。
64bit環境でクラスライブラリを作成するときにはどのような設定が必要なのでしょうか?
C++のクラスライブラリの構成プロパティのプラットフォームは『Win32』とするとビルドは正常終了するのですが、これを『x64』を新規作成して指定すると今度はビルドエラーが大量に出てしまいます。(C2871 "System"指定された名前空間は存在しませんなど)
また、VisualStudio2005には32bit版、64bit版と分かれているのでしょうか?
どなたかご存知でしたらご教授いただきますようよろしくお願いいたします。
以上