今日、プログラムをリモートデバッグする必要があるという問題に遭遇しました。プログラムは別のシステムから起動されたので、コマンド ラインで操作する機会がありません。ただし、そのソースを簡単に変更できます。
私が必要としていたのは、プログラムが正常に起動し、デバッガーを使用してプログラムに接続するのを待つことでした。幸せになる方法を思いつくことができませんでした。私はバグを見つけましたが、デバッガーの助けはありませんでした。
while(true) { }
プロセスを存続させた後、デバッガーで「次のステートメントを設定」できましたが、ぎこちなく失礼に思えました。
Console.ReadLine();
Enterキーを押すためのコンソールが実際にはなかったので、入力するのは奇妙に思えました。(それも機能しませんでした。次のステートメントを設定してから実行すると、ReadLine() 待機に戻ります。)
では、「デバッガーでアタッチできるようになるまでここで待ってください」という .NET/CLR/C# プログラムにどのようなコードを挿入できますか?