8

デバッグしようとしている MMC スナップインがあります。現在、スナップインのコンストラクターに配置されている次のコードは、デバッガーをそれに接続するという点で機能します。

public MySnapIn()
{
#if DEBUG
    if (!Debugger.IsAttached)
    {
        Debugger.Launch();
    }
#endif
    ...
}

しかし、常に Visual Studio にデバッガーをアタッチしなければならないのは本当に面倒です。このプロセスを自動化したい。理想的には、F5 キーを押すだけで、デバッガーが自動的にアタッチされます。私は次のことを試しました:

  • プロジェクトのプロパティ -> 外部プログラムの開始 -> 「C:\Windows\System32\mmc.exe」と入力
  • プロジェクト プロパティ -> コマンド ライン引数 -> .msc ファイルへのパスを指定します (スナップイン レイアウトを保存するので、毎回簡単に読み込むことができるため、常にファイル -> 追加/削除する必要はありません)スナップイン)。

これはうまくいきませんでした。デバッガーは自動的にアタッチされません。このプロセスを自動化するにはどうすればよいですか、またはデバッガーが自動的にアタッチするのを妨げているのは何ですか?

4

1 に答える 1

6

ちょうどそれを手に入れました。結局のところ、64ビットシステム(私が使用しているシステム)で32ビットMMCランチャーを使用し、「コマンドライン引数」に-32フラグを追加して、強制的に32-にとどめる必要があります。ビットモード:

  • スナップイン プロジェクトが Configuration Manager の任意の CPU をターゲットにしていることを確認しました。
  • プロジェクトのプロパティ -> 外部プログラムの起動 -> 「C:\Windows\ SysWOW64 \mmc.exe」と入力
  • プロジェクトのプロパティ -> コマンド ライン引数 -> .msc ファイルへのパスと、-32 フラグ(スナップイン レイアウトを保存するので、毎回簡単に読み込むことができるわけではありません) を指定します。ファイル -> スナップインの追加と削除)。
于 2014-09-16T15:32:25.433 に答える