3

私には3つのプロジェクトがあります。1つはEXEにコンパイルされるVB6プロジェクトです。もう1つは、DLLにコンパイルされるVB6プロジェクトです。そして最後のものは、DLLにコンパイルされる.Net(2010)プロジェクトです。

.NetのDLLは、私のVB6DLLプロジェクトで参照されています。そして、結果のVB6 DLLプロジェクトは、私のVB6EXEプロジェクトの参照です。

このシナリオでは、.Net DLLプロジェクトをデバッグするにはどうすればよいですか?

(VB6 DLL)プロセスを.Net DLLプロジェクトにアタッチしたり、.NetDLLプロジェクトのVB6DLLプロジェクトに「外部プログラムの開始」を設定したりしても、どちらの場合も失敗します(またはデバッグできません)。 。

デバッグで取得するには、VB6 DLLプロジェクトの参照(.Net DLL)を変更する必要がありますか?

すべての有効な入力を歓迎します。(私がしなければならない手順を段階的に説明してください)

前もって感謝します。

4

3 に答える 3

1

Debug の下の start アクションを

外部プログラムを起動

VB6実行可能ファイルをプログラムとして指定します。

これを使用して古い VB6 アプリケーションの .NET/C# プラグインをデバッグしているので、これが機能することはわかっています。

デバッグしようとしているコードを取得するために通過しなければならない他の dll (.NET またはその他) の数は問題ではありません。

于 2013-03-21T23:47:41.123 に答える
1

ああ vb6 :) お久しぶりです....

基本的に、VB6 IDE 内で .NET コードをデバッグすることはできません。

ただし、.NET テスト プロジェクトを作成して .NET dll の単体テストを行うことを妨げるものは何もありません。これは、VB6 で参照する前に行うべきことです。

特定の問題を追跡する必要がある場合は、dll がデバッグ モードのときに、呼び出された関数、パラメーター、スタック トレースなどのデバッグ情報をファイル/データベース/イベント ビューなどに書き込むこともできます。 ...

于 2013-03-21T23:56:16.457 に答える
-4

これは正しくないかもしれませんが、VB 2010は何を使用していると思いますか?.NET 4.0でしょ?VB6は...1994のように作成されたと思いますので、<=.NET1.0になります。バイナリはおそらく互換性がありません。

于 2013-03-21T23:42:46.990 に答える