C# – 如何利用 Console 輸出來協助開發?

在開發 WinForm 程式時,會需要將執行檔移至其它機台驗証。

但我們不會在每個機台都裝上 Visual Studio 來編譯,那麼要如何debug呢?

這時可以利用 Console 輸出來輔助。

首先,要加入正確的 Name Space。

**using System.Runtime.InteropServices;**

再來在程式開始時引用並呼叫 **AllocConsole();**

    public Form1()
    {
        InitializeComponent();

        AllocConsole();

        ...
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool AllocConsole();

程式執行時,即可利用 **Console.WriteLine()** 等來輸出 debug 訊息。

結束時,記得做 **FreeConsole();**

另外,若程式執行後仍無看到 Console 視窗,可以暫時修改專案屬性來測試。

還要注意一件事,當程式執行時,Console 同時也在運作。

此時若關閉 Console,則程式也會停止執行。