簡體   English   中英

從WPF應用程序啟動控制台應用程序

[英]launch console application from WPF application

我想知道是否可以從WPF應用程序啟動控制台應用程序。

在控制台應用程序中,我添加了一個名為Reports的類。 在我的WPF應用程序中,我創建一個Reports對象並調用其公共方法之一。

它調用的方法包含以下代碼。 問題在於該代碼不會等待用戶輸入任何輸入,因此會在ValidateUserInput中崩潰。 我也看不到任何控制台應用程序實際加載。 我在控制台應用程序中看不到如何調用Program類的Main方法。 如您所知,我迷路了。

Console.WriteLine("*** Running Report ***");                
Console.WriteLine("User enter something:");
string myStr = Console.ReadLine();
ValidateUserInput(myStr);

由於您正在運行WPF應用程序,因此,如果在調試模式下運行,則所有控制台輸出都將轉到Visual Studio的輸出窗口。

要實際啟動Console應用程序,您必須手動打開Console窗口並在使用后將其關閉 在您的課程中添加以下方法:

[DllImport("Kernel32")]
public static extern void AllocConsole();

[DllImport("Kernel32", SetLastError = true)]
public static extern void FreeConsole();

現在,使用如下方法:

AllocConsole();
report.ConsoleMethod() // Method to console application.
FreeConsole();

暫無
暫無

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

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