在“无调试启动”时,C#控制台应用程序没有输出产生。

3
尝试在没有调试器的情况下运行C#控制台应用程序(即使用Ctrl+F5),终端中不会显示任何输出。但是,当使用调试器运行(即仅使用F5),程序将按预期执行。
我创建了一个快速测试项目来确保这不仅仅是我的项目:
namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Test");
            Console.ReadKey();
        }
    }
}

使用调试器运行程序,"Test"会输出到控制台,否则没有任何输出。我不知道自己改了什么,因为之前我的原始程序在没有调试器的情况下也能正常运行。


Console.ReadKey(); 如果将这行代码改为 Console.Read(); 会发生什么? - MethodMan
9
最近有几篇类似的帖子。大多数人似乎在责怪 Avast。你碰巧安装了吗? - Darren Gourley
我确实有Avast...控制台窗口出现并且一直存在,但是里面什么也没有显示...这怎么可能呢!? - LeftRight92
1
F5启动名为app.vshost.exe的进程,而CTRL + F5将启动app.exe。这就是为什么@DarrenGourley会加上+1的原因。 - Oguz Ozgul
1
@LeftRight92 这是一个很好的观点。也许提到Visual Studio版本和Avast版本会有所帮助。 - Tophandour
显示剩余11条评论
1个回答

5
发现问题是由于 Avast 阻止可执行文件正常运行。暂时禁用文件系统防护作为解决方法。
Visual Studio 14.0.23107.0 D14REL
Avast 10.4.2233(病毒定义版本:151130-0)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接