ChatGPT解决这个技术问题 Extra ChatGPT

Visual Studio 2017 错误:无法启动程序,当前状态下的操作不合法

全新安装 Visual Studio 2017 后,我尝试运行 .NET Core Web 项目,尝试在 Chrome 上运行它时出现此错误:

无法启动程序,当前状态下的操作不合法

您可以使用命令行启动应用程序并查看您遇到的错误吗? dotnet run(首先是 dotnet restoredotnet build,然后您可以运行)
@JoelHarkes 在我关闭并重新打开 Visual Studio 2017 后,它现在可以工作了。不知道是什么导致了问题,但没有解决。
也许它认为它仍在准备申请。或者其他的东西。
我尝试关闭/重新打开,但没有用 - 仍在发生
似乎特定于 Chrome - FF、Opera、Brave、IE 都可以启动。

M
Maria Ines Parnisari

对我来说,解决方案(解决方法)是关闭 Chrome 上的 JavaScript 调试,我相信这是 VS 2017 中引入的新功能。

转到工具 > 选项 > 调试 > 常规,然后关闭为 ASP.NET(Chrome 和 IE)启用 JavaScript 调试的设置。

https://i.stack.imgur.com/jPqw8.png

这已经是一个已知问题,seems to have an investigation underway

有关 VS 2017 中 JS 调试的完整信息:https://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-debugging-of-asp-net-projects-in-google-chrome/


如果禁用此功能,您将无法再在 Visual Studio 中调试客户端代码。我已经做了一些解决方法来解决这个问题。你可以在我的回答中看到这一点。谢谢
仅供参考,微软已经修复了这个问题,并且现在可以在他们最新的 VS 更新中获得修复。 developercommunity.visualstudio.com/solutions/93579/view.html
你是冠军中的冠军!感谢您的快速解决方案。
刚刚遇到这个问题,解决了,谢谢。它还阻止 VS 在全新的浏览器窗口中打开调试,并在新选项卡中打开站点,这是 VS 2015 的首选!
顺便说一句,这仍然没有解决。只需要为 15.4 做这件事
A
ArunPratap

今天我遇到了这个错误,我只是做了一个太简单的小解决方法。

关闭您可能在打开 Visual Studio 之前打开的所有 chrome 实例。现在停止调试并再次运行您的应用程序。

您将不会再次收到错误,如果调试器没有命中,请再次刷新浏览器。

更新(2018 年 12 月 12 日):

我刚刚在 Visual Studio 2019 预览版中测试了这个 bug,现在看来这个 bug 已经修复了。

希望这可以帮助。


尝试了几次,但它确实奏效了。希望他们能找到一个永久的解决方案,而不是每次都关闭一切
我打开了多个 Chrome 实例。我只关闭了我用来调试的那个。我没有重新启动VS2017。有效。谢谢!这应该是公认的答案,因为我仍然可以在 Chrome 中调试,对吗?
@Soenhay 是的,VS2017 不需要重启,好像是个bug,希望VS 团队尽快看看。
+1 - 如果 Chrome 中的旧已调试浏览器仍在运行,则该错误似乎是。关闭可以解决问题。
这曾经对我有用。那停止了。然后关闭VS并重新启动就可以了。那停止了。然后重新启动就可以了。那停止了。 @ABVincitas 答案现在有效。希望也不要失败!
j
jGroot

在最近的 VS 2017 更新(2017 年 3 月 14 日发布:构建 26228.09)之后,我遇到了同样的问题。我的程序可以在 IE 中正常调试,但在 Chrome 中会崩溃。在 Windows 命令行中杀死所有 Chrome 实例为我解决了这个问题。

taskkill /im chrome.exe /f

然后我就可以在 Chrome 中调试了。


这也对我有用。不知道为什么它首先停止工作。
这是唯一对我有用的解决方案。我正在运行 VS Studio 社区版版本 15.4.2 - 谢谢
完美的!一个易于使用的命令,它在其他高度评价的评论没有的地方有所帮助。
对我来说,这是正确的答案,但它永远不会得到很多赞成票,因为人们关闭 chrome 并且不回来,具有讽刺意味
S
Sh7ne

3个选项

在 Tools > Options > Debugging > General 中关闭 JavaScript 调试功能 Kill all chrome tasks 切换到另一个浏览器进行调试


C
Community

我找到了一个对我有用的解决方法。

选择 Chrome 作为您的浏览器后,点击 Debug 菜单并选择 Attach to Process...

https://i.stack.imgur.com/tWC2E.png

这会在不启动浏览器的情况下启动项目运行。在 Chrome 中停止并重新启动,错误就消失了。

当然,另一个可能的解决方案是使用不同的浏览器,但我喜欢在 Chrome 中进行调试。 :-)


J
Jacob

我认为当在 Visual Studio 中启用 javascript 调试并同时启用 chrome 开发人员工具调试器时会发生这种情况。出现问题是因为两个不同的调试器试图调试同一个进程。


C
Chtioui Malek

我刚刚关闭了所有打开的 chrome 实例,停止了我的项目,然后重新启动它。这为我解决了这个问题。


M
Matty

对我来说,问题是在调试 Chrome 窗口上登录我的 Google 帐户。在我登录之前,这对我来说一直很好。一旦我退出该 Chrome 实例并选择通过复选框删除我的所有设置,调试器就会再次正常工作。

我的 Chrome 的非调试实例仍然登录到谷歌并且不受影响。主要问题是我可爱的插件从调试版本中消失了,但至少我可以再次单步执行客户端代码。


B
Brantley Fryfogle

我尝试了 Sibeesh Venu 的答案,但这对我不起作用。我相信如果我杀死了所有的 chrome 进程,它就会起作用。我完成了一些其他测试,发现在 Chrome 设置中关闭“从上次中断的地方继续”可以确保我不会再次发生这种情况。


N
Nick Feuer

我最近才遇到这个错误。为我解决的问题是关闭正在运行检查器的 chrome 窗口。每当我检查网页时,我都会让它弹出自己的窗口。不需要禁用或更改 Visual Studio 上的任何内容。


s
st35ly

更改此项目设置为我解决了这个问题。

https://i.stack.imgur.com/OEef1.png


d
dangalg

https://i.stack.imgur.com/7ylSM.png


h
hellyale

在我的情况下,其他答案不起作用。我必须重新启动 Windows 才能再次调试应用程序。


N
Nathan Prather

我使用 chrome 内置的开发人员控制台工具来调试 javascript,因此标记为答案的解决方案对我来说非常有用。这是我在尝试调试 asp.net 应用程序时从 VS Community 2017 收到的奇怪错误消息:

“发生的错误通常表明安装损坏(代码 0x80040154)。如果问题仍然存在,请通过控制面板中的“添加或删除程序”修复 Visual Studio 安装。”现在已经修复了。


R
RetroCoder

在 VS2017 中切换浏览器。或者以管理员身份打开命令提示符并执行 tskill chrome 大约 10 次以确保应用程序完全死机。然后再试一次。有时它会卡在另一个进程上,甚至需要重新启动。


K
Keenan Stewart

当我尝试同时调试两个解决方案时,出现此错误消息,因为我想直观地比较差异。取消选中 Enable JavaScript Debugging for ASP.NET (Chrome and IE) 选项有效,但我仍然很困惑为什么我不能一次调试多个解决方案。由于这是一个已知问题,也许这将在 Visual Studio 的更新中得到解决。这是希望....


S
Sir David J. Garretson M.S.

通过关闭我最近安装的 Calendly Chrome 扩展程序,我能够在 Chrome 中解决这个问题。可能不是 Calendly 特定的,所以我建议关闭所有新安装的 Chrome 扩展。以下是我采取的步骤:

Debug Program Let Chrome Open and VS throw error 单击 OK 清除 VS error 单击 Chrome 右上角的三个点 鼠标悬停在“更多工具”上并单击 Extensions 找到 Calendly 磁贴并将右下角的滑块勾选关闭位置 关闭所有 Chrome 窗口,包括任务中的任何 Chrome 窗口 继续运行的栏 停止调试 在调试模式下再次运行程序


C
Community

启用 JavaScript 调试的解决方案

在 Chrome 浏览器中,转到:设置>高级>系统并禁用“在 Google Chrome 关闭时继续运行后台应用程序”。重要的!必须为正确的 Chrome 用户配置文件设置上述选项! Visual Studio 有自己的 Chrome 用户配置文件,您在使用“普通”Chrome 浏览器时设置的首选项不会对从 VS 启动的 Chrome 浏览器产生任何影响(启用 JS 调试)。

在启用“启用 JavaScript 调试...”的情况下从 VS 运行您的项目。 Chrome 浏览器应该会打开,您将在 VS 中收到错误消息。返回到 VS 启动的同一 Chrome 实例并禁用“在 Google Chrome 关闭时继续运行后台应用程序”,如上所述。如果您没有启用/选中“启用 JavaScript 调试...”,Chrome 实例将使用您的默认用户配置文件并且错误将持续存在。停止并重新运行您的项目,Chrome 应该按预期加载项目,没有任何错误并且启用 JS 调试。

无论何时停止调试,都必须关闭 VS 启动的 Chrome 实例,否则下次运行项目时会返回错误。如果还有其他 Chrome 实例,您可以将它们保持打开状态。

要确保 Chrome 使用正确的用户配置文件,请在 url 栏中输入 chrome://version/,然后查看 的值配置文件路径。在 Windows 上,正确的值应如下所示:
"C:\Users\[UserName]\AppData\Local\Microsoft\VisualStudio\15.*\WebTools\ChromeUserData_*\Default"

如果 Chrome 使用的是默认浏览器,或者如果您使用帐户登录 Chrome,它将如下所示:
"C:\Users\[UserName]\AppData\Local\Google\Chrome\User Data\[ProfileName] OR Default"

奖金说明。如果您在调试时使用 Chrome 扩展程序,则必须在 VS 配置文件处于活动状态时安装这些扩展程序。


D
Dark Matter

以防您无法以任何其他方式解决问题,然后试试这个(它对我有用!):

将以下代码保存到您的网络配置文件中,然后重命名 value="yourwebformname.aspx"

<system.webServer>
    <defaultDocument>
       <files>
          <add value="insertion.aspx" />
       </files>
    </defaultDocument>
    <directoryBrowse enabled="false" />
</system.webServer>

其他尝试:

<system.webServer>
    <directoryBrowse enabled="true" />
</system.webServer>

K
Keenan Stewart

当我收到此错误时,您可以尝试的另一个对我有用的解决方案是清理解决方案,然后进行重建。由于其他解决方案对我没有帮助,我认为这可能会帮助同一条船上的其他人。