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

在重新安装Visual Studio 2017后,我试图运行.NET核心Web项目,当我试图在Chrome上运行它时,我得到这个错误:

无法启动程序,当前操作不合法 国家< / p >

151971 次浏览

我找到了一个对我有用的变通办法。

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

在随后的对话框中,在列表中选择Chrome.exe,并单击Attach to:Select按钮。选中Native框,然后是Attach(或双击Chrome.exe): enter image description here < / p >

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

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

今天我得到了这个错误,我只是做了一个小工作,太简单了。

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

您将不会再次得到错误,如果调试器没有弹出,则再次刷新浏览器。

更新(12 - 12月- 2018):

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

希望这能有所帮助。

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

转到Tools > Options > Debugging > General并关闭为ASP打开JavaScript调试。NET (Chrome和IE)的设置。

VS2017 Disable JS Debugging

这是一个已知的问题,并且似乎正在进行调查

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

在最近的VS 2017更新(发布于2017年3月14日:build 26228.09)后,我也遇到了同样的问题。我的程序在IE中调试得很好,但在Chrome中就会崩溃。在Windows命令行中删除所有Chrome实例为我解决了这个问题。

taskkill /im chrome.exe /f

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

我认为这发生在javascript调试在visual studio中启用,同时chrome开发工具调试器启用。出现这个问题是因为两个不同的调试器试图调试同一个进程。

我只是关闭所有打开的chrome实例,停止我的项目,然后重新开始。这为我解决了问题。

3个选项

  1. 关闭“Tools > Options > Debugging > General”中的JavaScript调试功能
  2. 杀死所有chrome任务
  3. 切换到另一个浏览器进行调试

在我的情况下,其他答案都不管用。在重新调试应用程序之前,我必须重新启动windows。

我尝试了Sibeesh举止文雅的答案,但这并不适合我。我相信,如果我杀死了所有的铬进程,它会起作用。我完成了一些其他测试,发现在Chrome设置中关闭“继续您离开的地方”可以确保这种情况不会再次发生。

我最近犯了这个错误。对我来说,解决它的方法是关闭一扇运行检查器的铬窗。我让它弹出自己的窗口,每当我检查一个网页。不需要禁用或改变visual studio上的任何东西。

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

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

当我收到这个错误时,您可以尝试为我工作的另一个解决方案是清理解决方案,然后进行重新构建。由于其他的解决方案对我没有帮助,我想这可能会帮助其他处于相同处境的人。

我使用chrome的内置开发人员控制台工具来调试javascript,所以答案标记的解决方案对我来说很棒 这是我从VS Community 2017试图调试asp.net应用程序时得到的奇怪的错误消息:

"发生错误,通常表示安装(代码)已损坏 0 x80040154)。如果问题仍然存在,请修复Visual Studio 通过控制面板中的“添加或删除程序”进行安装 现在固定。< / p >

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

enter image description here

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

当我试图同时调试两个解决方案时,出现了这个错误消息,因为我想直观地比较它们之间的差异。取消选中“ASP. JavaScript调试”。NET (Chrome和IE)选项工作,但我仍然困惑为什么我不能一次调试多个解决方案。由于这是一个已知的问题,也许这将在Visual Studio的更新中解决。这是希望....

启用JavaScript调试的解决方案

在Chrome浏览器中进入:Settings>Advanced>System禁用 "继续运行后台应用程序时,谷歌Chrome浏览器关闭"; < br > < br > 重要!上面的选项必须为正确的Chrome用户配置文件设置!
Visual Studio有自己的Chrome用户配置文件,当您使用“normal”时设置首选项;Chrome浏览器不会对从VS启动的Chrome浏览器有任何影响(启用JS调试)。

  1. 从VS运行你的项目,“启用JavaScript调试…”; 启用> < /强。Chrome浏览器应该打开,你会在VS中看到错误。
  2. 返回VS启动时的Chrome实例,禁用 "当谷歌Chrome关闭时继续运行后台应用程序"如上所述。
    如果您没有“启用JavaScript调试”;启用/检查,Chrome实例将使用您的默认用户配置文件,错误将持续存在
  3. 停止重新运行你的项目,Chrome应该加载项目如预期没有任何错误和JS调试启用。

每当你停止调试时,由VS发起的你必须关闭Chrome实例或错误将在你下次运行项目时返回。如果有其他Chrome实例,你可以让它们打开。

要确保Chrome使用正确的用户配置文件,请在url栏中输入< >强chrome: / /版本/ < / >强,然后查看配置文件路径的值。在Windows上,正确的值应该是这样的:
"C:\Users\[UserName]\AppData\Local\Microsoft\VisualStudio\15.*\WebTools\ChromeUserData_*\Default" < / p > 如果Chrome使用浏览器默认,或者如果你用一个帐户登录Chrome,它将看起来像这样:
"C:\Users\[UserName]\AppData\Local\Google\Chrome\User Data\[ProfileName] OR Default" < / p >

奖金。如果你在调试时使用Chrome扩展,这些必须在VS配置文件激活时安装。

对我来说,修复它的是在任务栏中寻找打开的chrome应用程序,右键单击并关闭它们。 enter image description here < / p >

我可以通过关闭我最近安装的Calendly Chrome扩展来解决这个问题。可能不是日历特定的,所以我建议关闭任何新安装的Chrome扩展。以下是我采取的步骤:

  1. 调试程序
  2. 让Chrome打开和VS抛出错误
  3. 通过单击OK清除VS错误
  4. 点击Chrome右上角的三个点
  5. 鼠标移到“更多工具”上,然后单击扩展
  6. 找到Calendly tile并勾选右下角的滑块到 李断路位置< / >
  7. 关闭所有Chrome窗口,包括任务中的任何Chrome窗口 继续运行
  8. 的条
  9. 停止调试
  10. 在调试模式下再次运行程序

如果你不能用任何其他方式解决这个问题,那么试试这个(它对我有用!):

将下面的代码保存到您的web配置文件中,然后重命名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>