2

3つのプロジェクトがあります:

プロジェクトAが開いているVisualStudio2012では、プロジェクトBを介してプロジェクトCにステップインできません。

プロジェクトBとCは無料でオープンソースであり、私はすでにそれらを正常に構築しています。

プロジェクトAはプロジェクトBのDLLを参照し、プロジェクトCのDLLファイルが見つからない場合、プロジェクトAは実行されません。そのため、プロジェクトCのDLLをプロジェクト内にコピーして貼り付け、[常にコピー]を出力ディレクトリに設定しました。

デバッグ中にステップインすると、プロジェクトBのソースコードにしかアクセスできません。まったく理解していないプロジェクトCが[モジュール]ウィンドウに読み込まれていません。プロジェクトCのDLLが含まれていないとプロジェクトは実行されず、含まれているとロードされませんが、すべての呼び出しが機能しているため、どこかにロードする必要があります。

プロジェクトCのPDBファイルをプロジェクトAの出力ディレクトリに含めようとしましたが、運が悪かったので、プロジェクトBからプロジェクトCへの関数呼び出しはステップオーバーされ、決して入りません。

ご了承ください:

  • マイコードだけが無効になっています
  • プロジェクトCは、2つの方法でプロジェクトBにインクルードされます。「lib」ファイル(リンカー設定内)とソースコード内の「.h」ファイルが参照されます...それが問題かどうかはわかりませんが、あなたはそうかもしれません。

これを実現する方法が必要であることはわかっています。すべてのソースコードを利用できますが、CまたはC ++コードの専門家でも、デバッグの専門家でもありません。binディレクトリからプロジェクトAにさまざまなプロジェクトCのファイルをすべて含めようとしましたが、機能しません。

ヘルプやアドバイスをありがとう!

4

1 に答える 1

6

Visual Studioを使用している場合は、アンマネージコードのデバッグを明示的に有効にする必要があります。あなたはからこれを行うことができます

ソリューションエクスプローラー->csproj->プロパティ->デバッグ->アンマネージコードのデバッグを有効にする

于 2012-12-28T13:36:10.177 に答える