【问题标题】:A project with output type of class library cannot be started directly - with a startup exe输出类型为类库的项目无法直接启动——用启动exe
【发布时间】:2010-10-19 21:52:39
【问题描述】:

首先,我完全了解此消息及其正常发生的原因。并不是说我只是想运行一个 dll(比如this question)。

我有一个编译为 dll 的项目,但在项目属性中指定了一个启动程序。大多数情况下,我可以右键单击项目并选择“调试”>“启动新实例”,它将运行程序并让我调试我的 dll。但是,有时我会收到此消息(无法直接启动具有类库输出类型的项目),就好像我没有启动程序一样。最初的几次我以为只是我不小心点击了错误的项目,但我确信情况并非如此,因为它发生了很多次而且我一直很小心地观看它。

当此消息出现时,我可以再试一次,它总是在第二次或第三次尝试时有效。

使用相同解决方案的同事从来没有这个问题:-/

还有其他人遇到过这个问题或知道如何解决吗?

我正在使用 Visual Studio 2005 Pro 版本 8.0.50727.762 (SP.050727-7600) 编辑:Visual Studio 2010 也会发生

【问题讨论】:

    标签: visual-studio visual-studio-2010 visual-studio-2005


    【解决方案1】:

    这听起来像是一个暂时的 Visual Studio 问题。重新安装或升级可能会解决您的问题。

    【讨论】:

      【解决方案2】:

      VS 中的典型问题是由以下原因引起的:

      • 加载项:不使用 VS 运行,看看问题是否解决
      • 解决方案中的文件损坏:删除/重命名由 Visual Studio 创建但不属于您的项目的所有文件,即所有 .suo、.ncb 文件等。

      【讨论】:

      • +1 用于删除 .suo 文件。这通常可以解决我的问题(尤其是断点会无缘无故地消失或重新出现。)
      【解决方案3】:

      我在创建为“Windows 控件库”的项目时遇到了这个问题,但不知何故忘记了它们的状态。卸载和重新加载项目通常可以解决问题。

      如果它是作为“类库”创建的,那么为了使其成为“Windows 控件库”,我手动将以下内容添加到 .csproj 文件中。这是我能看到的类库和 Windows 控件库项目之间的唯一区别。

      顺便说一句 - 启动 Windows 控件库会启动用户控件测试容器 - 允许您测试库中的任何用户控件。很酷。

      <Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" />
      

      将其添加到 &lt;itemgroup&gt; 元素中。

      【讨论】:

      • 很有趣,但这不是我的解决方案。
      【解决方案4】:

      不只是做一个启动项目

      【讨论】:

        【解决方案5】:

        另一位同事建议这是因为在单击“调试”>“启动新实例”后,在等待它启动时,我单击了另一个项目。我不会出于任何原因这样做,只是在等待项目启动时随机选择一些东西。也许 Visual Studio 在我单击菜单后的某个时间查看所选项目,感到困惑并显示错误消息?

        谁能确认这符合他们的经验?

        【讨论】:

        • 这个问题在 VS 2010 中仍然存在,我 99% 确定这是因为我单击了不同项目中的文件。似乎可以重复。奇数。
        • 这正是我所看到的。
        • 同样的事情发生在我身上。单击我的项目后,我完美运行它!很奇怪:/但它有效!!!!!
        【解决方案6】:

        如果您打算使用/创建/添加额外的 dll 或在您的解决方案中只包含多个项目,您可能会遇到此类问题,尤其是如果您忘记了一个简单的规则: 1. 在您的“解决方案资源管理器”窗口中。右键单击并选择“设置启动项目...” 2. 在“启动项目”下选择“单一启动项目”并将其更改为您的工作实体。

        【讨论】:

          【解决方案7】:

          我也见过这个,这似乎是 VS 中的一个错误。它发生在您右键单击/构建类库(需要重新构建),然后右键单击/调试 > 启动新实例之后。

          edit- 它仍然很断断续续,我似乎无法可靠地重现它

          【讨论】:

            【解决方案8】:

            要复活这个线程,我刚刚遇到类似的问题,右键单击项目并启动新实例时..

            所以我没有右键单击项目并选择启动新实例,而是右键单击并单击设置为启动项目。

            一个类库项目被设置为粗体,当然不是我右键单击的那个。

            我尝试选择不同的可执行项目并将其设置为启动项目。与启动项目相同的类库被突出显示。

            意识到当前打开的文件来自该项目,可能所有打开的文件都来自该项目...

            关闭所有打开的文件并重试....问题已解决,设置为启动项目和启动新实例选项的行为符合预期...

            绝对是一个错误,希望这对其他人有帮助..

            • Microsoft Visual Studio 2010 版本 10.0.40219.1 SP1Rel
            • Microsoft .NET Framework 版本 4.0.30319 SP1Rel

            【讨论】:

              【解决方案9】:

              我发现我已将解决方案上的启动项目设置为当前选择,然后在某个时候,我卸载了一个项目,并且解决方案已恢复为碰巧在一个项目上的单一启动项目成为一个类库。

              【讨论】:

                猜你喜欢
                • 2011-03-22
                • 1970-01-01
                • 2016-07-03
                • 2012-06-24
                • 1970-01-01
                • 2012-08-31
                • 1970-01-01
                • 2022-01-27
                • 1970-01-01
                相关资源
                最近更新 更多