控制台应用程序不显示输出,但重命名它

Console Application doesn't display output, but renaming it does

我有一个简单的控制台应用程序,它使用 Enterprise Framework 5 调用存储过程并创建一个文本文件。

此控制台应用程序 main() 的第一行是

 Console.WriteLine("Starting...");

在发布模式下构建;在测试机上对其进行了测试,并且运行良好。

我复制了这个 MyApp.exe 和相关的 .dlls 到生产机器,(当然有不同的配置值);在那里的命令提示符中,当执行此exe时,它只是完成执行而没有任何输出。不知道发生了什么事。

然后我将MyApp.exe重命名为1MyApp.exe;执行时,现在它显示 starting.... 后跟一些异常,如有必要,我会在另一个问题中询问。

我的问题是,为什么重命名和执行有输出,而使用应用程序的原始名称执行没有输出任何输出?

谢谢。

Console.WriteLine() 缓冲其输出(出于性能原因) 并仅在空闲时刷新它(在控制台中可见)。

如果您想立即看到文字,请使用Console.Error.WriteLine()