簡體   English   中英

在C#控制台應用程序中退出控制台窗口

[英]To exit the console window in C# console application

一旦我的文件寫在后端的文件夾中,我想退出控制台窗口,但無論我嘗試什么,

Environment.exit(0);
Environment.exit(1);
Environment.exit(-1);

因為我從main方法執行,我正在返回值,即使文件寫入目標文件夾后我的控制台窗口仍然沒有關閉,

下面是我的代碼,

 static void Main(string[] args)
    {
        string execute = ""; 
        execute = data_info_pooling(args[0], args[1], args[2]);
         Environment.Exit(0);
    }

我還嘗試使用Application.exit(); 但是我無法在下拉框中獲取應用程序,我已經從stackoverflow探索了幾乎所有可能的幫助鏈接並搜索了任何幫助但不知道我哪里出錯了,我試圖通過打開這個控制台應用程序來運行命令提示符,然后執行如下命令

Project Path\\Debug>"Project.exe" "First Parameter" " Second Parameter" "Third Parameter"

文件寫入目標文件夾后,控制台窗口等待,按下后輸入它只是再次給出路徑執行但我希望窗口在寫入文件的任務完成后立即退出,

任何幫助將不勝感激,

-------更新代碼--------

我刪除了for循環,這是不必要的,實際上我錯誤地應用了我的邏輯並為我的錯誤道歉,下面的一些評論幫助我實現了我的錯誤,最后是Environment.exit();

哪個有效,我也想嘗試另一個形成批次的答案。 無論如何......感謝所有人的寶貴回復。

Environment.ExitApplication.Exit

Environment.Exit(0)更干凈。

http://geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx

您還可以將返回值從void更改為int 然后你可以簡單地返回一個ExitCode

 public static int Main(string[] args)
        {
            string execute = ""; 
                for (int i = 0; i < args.Length; i++)
                {
                    string argument = args[i];
                    execute = data_info_pooling(args[0], args[1], args[2]);
                }

           return -1
        }

一旦控制台應用程序結束,為其創建的命令窗口(假設您從Windows Explorer運行它)將自動關閉。

但是,如果首先打開命令窗口,在運行exe文件時指定參數,那么資源管理器將不會關閉它(顯然)。

一種可能的解決方案是將會話包裝到批處理文件中 使用以下內容創建project.bat

Project.exe "First Parameter" " Second Parameter" "Third Parameter"
; some other jobs

運行該批處理文件(直接從Windows Explorer )將參數傳遞給您的應用程序,命令窗口將在結束時關閉。

那是你要的嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM