2017-10-25 6 views
0

C#クラスライブラリを使用して拡張されている、大きなレガシーC++/MFCアプリケーションがあります。これにはC++/CLIラッパーがあります。レガシープログラムではCLRサポートがオンになっている必要はありませんが、ネイティブプロジェクトを実行している間はマネージコードでデバッグすることはできません。CLRサポートをオンにすると、System.IO.FileLoadExceptionが発生します。

CLRサポートを有効にすると、プログラムの実行中にすぐにSystem.IO.FileLoadExceptionがスローされます。ただし、その1つの設定をオフにすると、プログラムが正常に実行され、Visual StudioデバッガでDLLコードをステップ実行できません。

私はコード内の問題とは関係がないことを知っています。私はこれをVisual Studio 2017で完全に動作させていますが、これはVS 2012でさまざまな理由で動作させる必要があります。

編集は例外テキストを追加します。

An unhandled exception of type 'System.IO.FileLoadException' occurred in 
Unknown Module. 

Additional information: Could not load file or assembly '<Project>, 
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. Could not find or load a type. (Exception from HRESULT: 0x80131522) 
+0

がここに絵だしhttps://imgur.com/a/9n8Yb (実行可能なプロジェクトはWinventと呼ばれています) –

+0

**あなたの例外の**テキスト**を使って投稿を編集してください**、画面へのリンクではありませんスナップショット。ファイアウォールは、あなたのリンクをたどり、あなたを助けるために人々を防ぎます。画面スナップショットは、モバイルアプリケーションでは表示されないことがあります。テキストサイズは自動的に調整されます。 –

+0

@ThomasMatthewsありがとう、私はポストを更新しました。 –

答えて

0

/GFスイッチを使用してDLL /実行ファイルをコンパイルします。 プロジェクトのプロパティとを行く

C/C++ - >コードGeneration->文字列プールを有効にする - に設定し、「はい」MSDNのディスカッション・フォーラムからコピー

https://social.msdn.microsoft.com/Forums/vstudio/en-US/1c9c687f-4221-4cdd-8497-dd3bba97de6a/systemiofileloadexception-when-starting-an-mfc-application-parially-compiled-with-clr?forum=vcgeneral

関連する問題