1. ホーム
  2. .net

[解決済み] まだ起動していないプロセスにVisual Studioをアタッチするには?

2022-12-01 01:24:54

質問

何らかの理由で Visual Studio から実行できない .NET プログラム (Excel 2010 テンプレート プロジェクトから作成した Excel ファイル) があり、その起動イベントをデバッグする必要があります。

もし私がプログラムの初期化後に来るイベントをデバッグしたいのであれば、問題はありません。私はエクスプローラーからプログラムを実行し、そのプロセスを Visual Studio にアタッチし、コードにいくつかのブレークポイントを追加します。しかし、ここでは、スタートアップイベントにブレークポイントを置く必要があります。私は Visual Studio にプロセスをアタッチできるようにする必要があり、PID に依存するのではなく、特定のプロセス名または動作する他の任意のソリューションに依存します。

もちろん Thread.Sleep(1000) を追加して、Visual Studio でプロセスをアタッチする時間を確保することは、問題外です!

どのように解決するのですか?

実はできるんです。アタッチするのではなく、起動するんです。プロジェクトのプロパティの [デバッグ] タブにある "Command" テキストボックスに、アタッチするプログラムのパスを指定します。

また、["Command Arguments"]ボックスには、プログラムに対する任意のコマンドライン引数を入力することができます。

添付ファイル("Attach")が"No" に設定されていることを確認します。