まず、Windowsのリンクシステムに慣れていないということです。(私のプログラミング経験のほとんどは、ライブラリとフレームワークのリンクが根本的に異なるMac OSで取得されました。私もWindowsユーザーではありません。)
これが私の設定です。同じソリューションに2つのプロジェクトがあります。1つ目は、これから呼び出すC ++/CLIプロジェクトFoo
です。Foo
は、外部ライブラリ(Javaランタイム環境)に依存するライブラリプロジェクトであるため、適切な(コンパイルされるため).libファイルへの適切な参照があります。(そのライブラリのロードに関連する他のプロジェクト設定は変更していません。)他のプロジェクトBar
は、を参照するC#コンソール実行可能プロジェクトですFoo
。
どちらも問題なくコンパイルされます。
ただし、Bar.exe
C#プログラムを実行すると、からの型を必要とする最初のオブジェクトが作成される前に終了しますFoo
。例外はFileNotFoundException
、Foo.dll
アセンブリまたはその依存関係の1つが見つからなかったことを示すものです。
それで私fuslogvw
は何がうまくいかなかったかを見るために立ち上げました、しかし私はそれがどのように機能するか本当に理解していません、そして私がそれで見つけたドキュメンテーションはかなり役に立たないです。私が理解していることから、両方ともFoo
ネイティブBar
イメージとしてロードできませんでしたが、正しいILであることがわかり、その方法で適切にロードされました。失敗について他に関連する言及はありませんが、明らかにある時点で失敗します。ログを投稿しますが、フランス語で書かれているので、かなり役に立たないと思います。
何か案が?