কনসোলে আউটপুট সহ .NET 4.0+ এর জন্য উপরের সমাধানগুলির সংমিশ্রণ:
[DllImport("Kernel32.dll")]
public static extern bool AttachConsole(int processID);
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
if (e.Args.Contains("--GUI"))
{
// Launch GUI and pass arguments in case you want to use them.
new MainWindow(e).ShowDialog();
}
else
{
//Do command line stuff
if (e.Args.Length > 0)
{
string parameter = e.Args[0].ToString();
WriteToConsole(parameter);
}
}
Shutdown();
}
public void WriteToConsole(string message)
{
AttachConsole(-1);
Console.WriteLine(message);
}
যুক্তি স্বীকার করতে আপনার মেইন উইন্ডোতে নির্মাণকারীকে পরিবর্তন করুন:
public partial class MainWindow : Window
{
public MainWindow(StartupEventArgs e)
{
InitializeComponent();
}
}
এবং অপসারণ করতে ভুলবেন না:
StartupUri="MainWindow.xaml"