C# 控制台应用程序没有';不显示输出,但重命名它会显示输出
我有一个简单的控制台应用程序,它使用EnterpriseFramework5调用存储过程并创建文本文件 此控制台应用程序的C# 控制台应用程序没有';不显示输出,但重命名它会显示输出,c#,visual-studio-2013,.net-4.0,console-application,C#,Visual Studio 2013,.net 4.0,Console Application,我有一个简单的控制台应用程序,它使用EnterpriseFramework5调用存储过程并创建文本文件 此控制台应用程序的main()中的第一行是 Console.WriteLine("Starting..."); 在发布模式中构建此功能;在一台测试机上对其进行了测试,并且执行良好 我将这个MyApp.exe和相关的.dlls复制到生产机器上(当然配置值不同);在那里的命令提示符中,当执行此exe时,它只是完成执行,而没有任何输出。关于发生了什么事没有线索 然后我将MyApp.exe重命名为
main()
中的第一行是
Console.WriteLine("Starting...");
在发布模式中构建此功能;在一台测试机上对其进行了测试,并且执行良好
我将这个MyApp.exe
和相关的.dll
s复制到生产机器上(当然配置值不同);在那里的命令提示符中,当执行此exe时,它只是完成执行,而没有任何输出。关于发生了什么事没有线索
然后我将MyApp.exe
重命名为1MyApp.exe
;执行时,现在它显示开始…
,后面是一些异常,如果需要,我将在另一个问题中询问
我的问题是,为什么重命名和执行会显示输出,而使用应用程序的原始名称执行不会产生任何输出
多谢各位 Console.WriteLine()
缓冲其输出(出于性能原因)
并仅在空闲时刷新它(在控制台中可见)
如果要立即查看文本,请使用
Console.Error.WriteLine()
。因为您实际执行了其他操作?原因之一可能是Main
:if(args[0].EndWith(@“\MyApp.exe”)中的这一行return;
。检查您的任务管理器,MyApp.exe是否仍在运行或挂起?task mgr表示.exe未挂起或正在运行;此外,代码中没有检查.exe名称的行。或者在程序结束时重试,但这可能不起作用,因为forConsole.Out
,设置为true,在每次调用Cons后应刷新ole.Write