Dot-Net

給 .NET 程序一個輸出類型的 windows 應用程序和控制台應用程序

  • March 8, 2019

我有一個具有 GUI 並將其輸出類型設置為 Windows 應用程序的 C# 應用程序。我還想從命令行(通過參數)呼叫它,因此它也需要是一個控制台應用程序。

有沒有辦法讓我的應用程序同時作為 Windows 應用程序和控制台應用程序執行?

有沒有辦法在執行時設置它還是編譯時設置?

您可以連接控制台。使 Program.cs 中的程式碼如下所示:

   [STAThread]
   static void Main(string[] args) {
       if (args.Length > 0) {
           AttachConsole(-1);
           Console.WriteLine("");
           Console.WriteLine("Running in console, press ENTER to continue");
           Console.ReadLine();
       }
       else {
           Application.EnableVisualStyles();
           Application.SetCompatibleTextRenderingDefault(false);
           Application.Run(new Form1());
       }
   }
   [System.Runtime.InteropServices.DllImport("kernel32.dll")]
   private static extern bool AttachConsole(int pid);

引用自:https://stackoverflow.com/questions/3652175