停止windows命令提示符的“返回”启动可执行文件后
本文关键字:启动 可执行文件 返回 windows 命令提示符 停止 | 更新日期: 2023-09-27 18:16:26
我正在开发一个应用程序,如果它们对用户没有用处,则将一些异常消息写入Console
。因此,如果有人通过简单地双击它来运行可执行文件,他们将永远不会看到这些消息。
在Visual Studio中,这些消息显示在输出窗口中,但在我的情况下,我正在一台没有安装Visual Studio的机器上测试我的应用程序,尽管我仍然想看看是否有这些消息出现。
在过去,我只是简单地从命令提示符运行可执行文件,它作为Visual Studio的输出窗口。虽然由于某些原因,我的应用程序,当从命令提示符运行时,简单的"返回",不显示任何消息。
例如,我可以这样开始,它立即返回
D:'>MyApp.exe
D:'>
当我运行它时,我不确定是否有一个特定的开关我应该使用(我已经尝试过/K
但无济于事),或者如果有一些关于我的应用程序导致它返回。
关于如何通过命令行运行它以便我可以看到消息,有什么想法吗?
供参考这里是我的应用程序Program.cs
static class Program
{
static Mutex mutex = new Mutex(true, "{12345678-1234-1234-1234-123456789012}");
[STAThread]
static void Main()
{
if (mutex.WaitOne(TimeSpan.Zero, true))
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
SplashScreen.ShowSplashScreen();
Application.Run(MainForm.Instance);
mutex.ReleaseMutex();
}
else
NativeMethods.PostMessage((IntPtr)NativeMethods.HWND_BROADCAST, NativeMethods.WM_JTTMAINWINDOW, IntPtr.Zero, IntPtr.Zero);
}
}
要允许程序输出到控制台,将其构建为控制台应用程序。
在Visual Studio中,相关的链接器选项是/SUBSYSTEM:Console
;或者,当创建一个新项目时,选择"console application"模板,它将自动设置链接器选项。
这也意味着如果您从命令提示符运行程序,命令提示符将等待程序退出。此外,如果您双击程序而不是从命令提示符运行它,将自动创建一个控制台窗口。
(没有办法让命令提示符等待一个程序,但防止程序创建一个控制台窗口,如果双击。