【问题标题】:Pressing F5 in Visual Studio 2010 Builds but does not Launch Application在 Visual Studio 2010 中按 F5 构建但不启动应用程序
【发布时间】:2012-03-07 21:38:55
【问题描述】:

我在 C# 中有一个 Click Once 应用程序 (WPF)。最初,当我按 F5 调试/启动应用程序时,它运行顺利。最终,F5 只会构建解决方案而不启动应用程序(因此我无法单步执行我的代码)。有一段时间,我从调试模式切换到发布模式,并且由于某种原因允许应用程序在使用 F5 后启动,我可以再次单步执行我的代码。但现在这也不再适用了。长话短说,我无法让应用程序以允许我单步执行代码的方式运行。我只能在不调试的情况下启动 (Ctrl + F5)。显然,除了告诉我应用程序是否有效之外,这对我没有多大作用。

【问题讨论】:

  • 调试的菜单命令有用吗?或者解决方案资源管理器中的上下文菜单? “干净”/“重建” - 重新启动您的机器?如果一切都失败了(并且您的应用程序确实正在编译,并且项目设置中的调试设置是正确的),那么您可能必须重新安装 VS...
  • 您的解决方案中是否有多个项目?如果是这样,请确保您启动的是正确的。否则,请发布项目的高级编译设置和调试项目设置选项卡的详细信息。
  • 查看工具->自定义->键盘。 Debug.Start 命令的值是多少?
  • 你在输出窗口中得到任何信息吗?
  • 解决方案中哪个项目是StartUp应用程序。

标签: c# visual-studio-2010


【解决方案1】:

今天对我有用的是打开任务管理器并查找任何未正确终止的调试程序。

Task Manager > Processes > kill all programs "*.vshost.exe *32"

【讨论】:

  • 是的,也为我工作。发生这种情况时,您的 Visual Studio 是否也非常滞后?每个人都知道我会遇到这个问题,我的 Visual Studio 几乎没有响应。
  • 是的。当我离开计算机几天后,这种情况似乎更频繁发生,但绝不是解决方案的一部分。
  • 感谢您的帮助!还有@NickMiller,VS 之前对我来说真的很迟钝!
【解决方案2】:

您可能在解决方案中丢失了启动项目,或者启动项目混乱,并且没有为启动定义正确的“项目”。

右键单击您的项目之一,然后选择:定义为启动项目。 然后重试应该可以解决问题。如果没有,请检查该项目的属性以查看是否将表单或其他内容定义为该项目的启动对象。

编辑:显然不要将类库项目定义为启动项目,而是选择你的 UI :)。

【讨论】:

  • 如果 OP 指定了一个库项目,他会收到一条明确的错误消息。
  • 是的,但有时你有一些奇怪的项目,比如实际上充当业务的 winforms 项目或类似的东西。是的,我不认为他将图书馆定义为启动项目。相反,他只是简单地“删除”了启动项目,或者以某种方式把它搞砸了。
  • 我缺少一个启动对象,但添加了一个,问题仍然存在。
  • 你确定你的启动项目有启动项吗?
  • 有趣。我去了 bin>Debug 文件夹并删除了那里的每个文件(语言文件夹除外)。我在 Debug 下重建了应用程序,它启动了它并允许我再次单步执行代码!它也允许我在发布模式下执行相同的操作,尽管我没有在 bin>Release 文件夹下做任何事情。不确定这是否与重新启动 PC 是巧合,因为我在重新启动后尝试调试了几次,在删除这些文件之前仍然没有运气。我将继续测试这个“理论”并返回结果。
【解决方案3】:

我今天也遇到了同样的问题,来到这里寻求帮助。我在这里尝试了所有建议,但没有任何帮助。

由于我的解决方案是一个简单的控制台应用程序,因此我从头开始重新创建它。新的解决方案没有出现问题,所以我开始比较两者。

我重置了解决方案和项目文件,使它们相同(除了项目 GUID、名称和根命名空间),但第一个解决方案仍然没有运行。

然后我尝试删除 suo 文件以及 bin 和 obj 文件夹。第一个解决方案仍然无法运行。

最后,我注意到该项目的 vshost.exe 进程仍在运行。当我杀死它并重新加载时,一切都开始正常工作了。

【讨论】:

    【解决方案4】:

    我今天刚遇到这个问题。结果证明,解决方案对前面提到的 *.vshost.exe 问题略有改动。

    我可以很好地构建应用程序,但 msvs 拒绝启动它。我可以手动启动应用程序,文件上的时间戳表明它实际上也是一个新版本。 *.vshost.exe 没有出现在任务管理器中,所以我无法按照建议结束进程。

    当所有其他方法都失败时,我尝试删除 .exe,发现 *.vshost.exe 不会删除,因为它正在使用中。错误消息表明它实际上是 Steam 客户端(第三方软件)以某种方式获取了我的 *.vshost.exe 文件并“使用”它。不知道如何或为什么。无论如何,我完全关闭了steam,然后它让我删除了*.vshost.exe。之后,从 msvc 构建和运行正常工作。

    【讨论】:

    • 是的,我想知道为什么会这样。
    【解决方案5】:

    遇到了同样的问题,最终尝试删除所有断点,调试又开始工作了。尚未弄清楚原因,但至少它有效。

    【讨论】:

      【解决方案6】:

      还有幽灵 *.vshost.exe。也可能是您在另一个版本的 VS 中打开了相同的解决方案/项目。我在 VS2010 和 VS2015 中打开了相同的解决方案,在 VS2010 中运行时它编译但无法启动。关闭 VS2015 解决方案,它按预期运行。

      【讨论】:

        【解决方案7】:

        在使用 VS 2008 多年后,我突然遇到了 F5 无法启动应用程序的问题。那里肯定有十几种不同的建议——我尝试了一些。有人建议是病毒。我的 Microsoft Security Essentials 没有自动更新(这似乎是一个常见问题),所以我手动更新了它。它发现了病毒,将其删除,F5 问题就消失了!

        【讨论】:

          【解决方案8】:

          遇到此问题并尝试删除 bin/debug 文件夹中的所有内容,但无法删除 vshost.exe 文件 - 一直请求管理员权限,然后即使从管理员帐户运行,仍无法将其删除。重新启动,文件消失了,f5 再次工作

          【讨论】:

            猜你喜欢
            • 2011-04-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多