C#控制台应用程序编译成功但无法启动应用程序

3

我有一个用C#语言(Visual Studio 2013)编写的简单控制台应用程序:

using System;
using System.Collections.Generic;
using System.Text;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World");
            Console.ReadKey();
        }
    }
}

当我按下F5或点击启动按钮时,我的项目已构建但未启动。有时,输出窗口会显示以下内容:
Error   12  Could not copy "obj\Debug\HelloWorld.exe" to "bin\Debug\HelloWorld.exe". Exceeded retry count of 10. Failed.

Error   13  Unable to copy file "obj\Debug\HelloWorld.exe" to "bin\Debug\HelloWorld.exe". The process cannot access the file 'bin\Debug\HelloWorld.exe' because it is being used by another process.

但是当我编写Windows窗体应用程序时,我的项目可以正常构建和启动?为什么?如何解决这个问题?

清理你的项目,然后再试一次。 - Peyman
我尝试过了,但仍未解决。 - Trần Hồng Phát
它说文件正在被另一个进程使用。尝试终止除了Visual Studio之外的所有进程,然后找出哪个进程引起了问题。 - Sweeper
计算机用户是否可能无法访问可执行文件所在的文件夹?您是管理员吗? - DanielV
https://dev59.com/42gu5IYBdhLWcg3w0qRK#24108431 - Umut D.
显示剩余10条评论
4个回答

0

这很可能是由于Windows保持进程处于打开状态。您唯一的选择是尝试在任务管理器->进程中终止应用程序的所有进程。

下一步要尝试的是将构建从调试更改为发布,这应该会在发布文件夹中构建另一个可执行文件,而不是调试。这绝不是万能药,但希望是足够的解决方法。

在尝试发布构建之前,请尝试修复问题。我曾经看到Windows仅仅因为我的调试文件夹被打开并且我的exe被选中而抱怨,因为我怀疑缩略图正在显示,从而在Windows中被“使用”等。


哦,尝试删除调试文件夹中的所有内容。但是,请保留包含vshost的文件。 - Neal
在调试文件夹中,我什么也做不了,但是当我注销用户并重新登录后,我就可以做了。 - Trần Hồng Phát
这听起来好像是你在文件夹中可能有一些权限问题。删除所有内容后,尝试右键单击项目,然后单击“生成”(build)。如果无法生成,则尝试重新生成(rebuild)。之后就可以尝试发布(release),我注意到你尝试了清理(clean),有时这可以解决此问题。 - Neal
当我创建新项目时,问题会再次出现,我正在尝试修复Visual Studio,但是又出现了一个新问题,我无法删除项目文件夹中的任何内容,直到我注销并重新登录,我不知道为什么以及如何解决这个问题 :( - Trần Hồng Phát
哇,听起来好像出了些奇怪的问题。我能想到最后一招就是右键单击 Visual Studio 快捷方式,以管理员身份运行,看看是否有帮助。否则,你甚至可能需要重新安装/修复安装。 - Neal

0

我找到了问题的原因并解决了它。 我尝试重新启动“应用程序体验”服务,问题得以解决。


0
请重新启动你的Visual Studio,然后再试一次。这样做将会起作用,同时也会再次删除你的bin/debug文件夹。

0

我遇到了这个问题。当软件实例正在运行时,无论是通过 Visual Studio 还是通过 自己 运行。

解决方案:

您应该在任务管理器的进程中找到您的应用程序名称。

你的应用程序名称是:

HelloWorld.exe

选择它并点击“结束任务”按钮

现在你可以开始调试和运行你的应用程序。

至少对我来说是有效的。


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