2012-01-05 71 views
1

我有一個WinForms程序。如果用戶從命令行啓動並傳遞了無效參數,我如何在控制檯窗口中顯示錯誤信息?從WinForms程序顯示控制檯窗口

+2

在Windows中,您可以指定參數以通過快捷方式傳遞給程序。如果快捷參數不正確,錯誤消息將顯示在哪裏?即你爲什麼不在你的窗口中顯示錯誤信息/忽略參數(或者登錄到事件查看器/日誌文件)? – Default 2012-01-05 10:05:06

回答

1

您可以使用Console.WriteLine(message)方法輸出信息。

+0

但我的應用程序是Winform而不是控制檯。 – 2012-01-05 11:26:00

4

這裏例如如何在錯誤的參數傳遞給WinForm應用程序顯示消息,命令行:

static class Program 
{ 
    [DllImport("kernel32.dll")] 
    static extern bool AttachConsole(int dwProcessId); 
    private const int ATTACH_PARENT_PROCESS = -1; 

    [STAThread] 
    static void Main(string[] args) 
    { 

     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 

     //if parameter -window is passed - opens main form, else displays Bad params message 
     if(args[0] == "-window") 
      Application.Run(new main()); 
     else 
     { 
      //Attach console process 
      AttachConsole(ATTACH_PARENT_PROCESS); 
      Console.WriteLine("Bad params"); 
     } 
    } 
} 

參考:http://www.csharp411.com/console-output-from-winforms-application/

0

你的WinForms應用程序可能會提出一個彈出,像一個消息框,顯示錯誤。

如果應用程序作爲批處理文件的一部分以無人蔘與模式運行,則可以寫入事件日誌或由應用程序創建的自定義日誌文件。

其他的答案,告訴你使用Console.WriteLine也是,如果你的批處理命令重定向輸出到一個文件,如大...

MYAPP.EXE >> ERRORS.TXT

這將控制檯附加到error.txt文件中...

相關問題