c# - 混合 Winforms/控制台应用程序正确终止,但必须按“Enter”才能恢复控制台提示
问题描述
我有一个混合应用程序,它基本上只在从命令提示符启动时显示可用的命令行修饰符。然后没有涉及或初始化的 Windows 应用程序代码。如果从命令行开始,我会尝试附加控制台以通过 Console.Writeline 查看输出。我现在有一个“--help”命令,它只打印出可用的命令,然后退出应用程序。在这个阶段基本上没有任何来自 WinForm 应用程序的内容被执行或初始化。控制台的输出工作正常,但进程终止,如 ProcMon 所示,但我必须按“Enter”才能返回命令行提示符。我使用“FreeConsole”、Environment.Exit、Application.Exit 或简单的直接“return Exitcode”,但它仍在等待“Enter” char 直到提示返回。我很确定该进程已终止,因为我可以在 ProcMon 中看到终止。这种行为的原因是什么?我还使用了 log4net ColoredConsoleAppender,其输出可以看到,但我同时将其从配置中删除,以免在此处产生干扰。这也没有改变所描述的行为。
解决方案
推荐阅读
- c# - 如何自动调整数据表列的大小
- javascript - 转换数组以保存在mysql nodejs中
- ruby - 将字符串放入控制台时删除并替换文本 $stdin ruby
- visual-studio - 模拟器和设备的 Xamarin.iOS 部署终止。错误 MT1001:在指定目录中找不到应用程序
- acrobat - 如何将pdf导出到xls中的标签命名
- python - 如何使用 Django 将配置文件链接到新创建的用户
- odoo - 如何一次从多个组中删除用户 Odoo 12
- ios - Flutter iOS:由于内存问题而终止
- r - 如何使用 ComplexHeatmap 手动更改列注释颜色
- r - 如何让 x 轴文本读取“dmy h”