C#在winform中調用系統控制台輸出


在Winform程序中有時候調試會通過Console.Write()方式輸出一些信息,這些信息是在Visual Studio的輸出窗口顯示。

所以就會想,能不能調用系統的Cmd窗口輸出呢,經過一番查閱,發現是可以的,現在就把方法寫下了:

主要用到的是win32 API函數實現的:

1 [DllImport("kernel32.dll")]
2 static extern bool FreeConsole();
3 [DllImport("kernel32.dll")]
4 public static extern bool AllocConsole();

在Program.cs文件中調用方法即可

完整代碼:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Windows.Forms;
 4 using System.Runtime.InteropServices;
 5 
 6 namespace XY.WinformDebug
 7 {
 8     static class Program
 9     {
10         [DllImport("kernel32.dll")]
11         static extern bool FreeConsole();
12         [DllImport("kernel32.dll")]
13         public static extern bool AllocConsole();
14         /// <summary>
15         /// 應用程序的主入口點。
16         /// </summary>
17         [STAThread]
18         static void Main()
19         {
20             AllocConsole();//調用系統API,調用控制台窗口
21             Application.EnableVisualStyles();
22             Application.SetCompatibleTextRenderingDefault(false);
23             Application.Run(new FrmMain());
24             FreeConsole();//釋放控制台
25         }
26     }
27 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM