當一個C#或VB.Net 控制檯程序調試控制檯儘快關閉作爲程序結束並沒有機會看到的輸出。我如何保持開放?如何暫停Windows控制檯程序正在調試
回答
我經常看到類似這樣的問題。通常建議是使用Console.ReadKey()或類似的東西,但這不適合生產使用。我的首選是簡單地在Main的最後一行放置一個斷點,或者類似的地方。
但我認爲一個好的選擇是使用Debugger.IsAttached來確定控制檯程序是否正在調試。以下是如何使用它的簡單示例。這是C#代碼,但我希望很容易轉換爲VB .Net。
using System;
namespace TestConsole
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Testing");
if (System.Diagnostics.Debugger.IsAttached)
{
Console.WriteLine("Debugging; press a key to continue...");
Console.ReadKey();
}
}
}
}
檢查調試器是不夠的,如果用戶在他的桌面上創建了程序的快捷方式,這也會失敗。 –
對於桌面上程序的快捷方式,我不認爲它是一個失敗,因爲它是控制檯程序的正常行爲。用戶希望需要爲控制檯程序做些事情,我們不需要在代碼中添加特別的東西。 – user34660
#define DEBUG
// ...
#if DEBUG
Console.WriteLine("Debug version");
#endif
是否會消除在調試器外部執行的調試版本正在執行的相關代碼?在調試器外部,我們自動獲得「按任意鍵繼續」。 – user34660
@ user34660不,您需要指定構建調試/發佈模式。 –
如果你不想調試只是按(Ctrl + F5鍵)。否則,如果你想調試只是把你的代碼的最後一行的中斷點
你可以在程序結束時使用Console.ReadKey();
。
Console.ReadKey();
阻止當前線程,直到按下字符或功能鍵。
是的,我說我使用了一個斷點。請注意,我的答案確實使用了Console.ReadKey(),除了扭曲之外。 – user34660
- 1. 組裝控制檯暫停
- 2. 暫停Python控制檯
- 3. 如何停止控制檯暫停我的線程和任務?
- 4. 在調試點暫停程序?
- 5. 在Windows中暫時捕獲控制檯應用程序的stdout
- 6. 控制檯在C++中暫停?
- 7. 控制檯程序調試/發佈
- 8. Windows應用程序中的OpenCV控制檯調試
- 9. 從控制檯讀取而不暫停程序
- 10. 自動暫停c#中的控制檯應用程序
- 11. 引導程序播放/暫停控制
- 12. XDebug:如何調試遠程控制檯應用程序?
- 13. 強制C++程序在Visual Studio調試器中暫停
- 14. JDI:如何在調試器中暫停Java應用程序(JVM)
- 15. AWS控制檯,暫停評估
- 16. 如何在F#語言中暫停控制檯
- 17. 如何在控制檯中播放和暫停Youtube視頻?
- 18. C++:如何使用Windows Media Player在Visual Studio控制檯應用程序中播放和暫停MP3文件?
- 19. 在Windows控制檯應用程序
- 20. 如何設置控制檯應用程序的自動調試
- 21. QtCreator調試暫停在程序代碼不是程序集
- 22. 暫停在控制檯2內運行的bash中的進程
- 23. 使用Windows調度程序運行控制檯應用程序
- 24. Windows CE 6遠程調試。暫停程序時沒有調用堆棧
- 25. IntelliJ - 在調試時暫停線程
- 26. 如何暫停node.js應用程序,直到調試器連接
- 27. 如果發生錯誤,請在Windows控制檯中暫停GNU Make
- 28. C#如何暫停程序
- 29. 在Windows中暫停進程
- 30. 如何暫停.pl和.bat文件中的控制檯窗口?
請注意,這是我提供答案的問題。答案以前不存在。如果我在其他問題上發佈了我的答案,那麼我不會得到認可。 – user34660