启动调试时阻止Visual Studio启动新的浏览器窗口吗?


Answers:


415

打开启动项目的属性(从主菜单中选择Project→{ProjectName} Properties ...或在Solution Explorer中右键单击您的项目并选择Properties),然后导航到Web选项卡,然后在Start Action下选择Do n't open page 。等待来自外部应用程序的请求

您仍然可以使用任何浏览器(或Fiddler,无论如何)来访问正在运行的应用程序,但它不会自动打开浏览器窗口,它只会在后台启动并等待任何请求。


这似乎是一个非常好的解决方案,但是就像Slace的解决方案一样,它不会在断点处停止执行,它说没有加载任何符号。不过谢谢
sker

9
是的 我一直在用它进行调试。您必须具有错误的配置。仔细检查您是否在web.config中启用了调试功能,并且正在运行调试版本。
Pawel Krakowiak

1
@mjohnsonengr我发誓这是每个用户的本地设置...也许您已签入.csproj.user文件(您不应该)。
Pawel Krakowiak

1
因此它是[本地设置]。我以前曾假设该区域中的所有项目设置都存储在csproj团队中。之前,我曾尝试通过修改“项目URL”来更改浏览器将打开的URL,然后在.csproj中进行了更改。经过仔细检查,我现在看到有一个“将服务器设置应用于所有用户”复选标记,它仅控制该字段。我的错。
mjohnsonengr 16'Mar

4
对于Mac上的Visual Studio,可比较的设置位于“项目>选项>运行>默认> ASP.NET Core”下。取消选中“应用启动时在网络浏览器中打开URL”。
IronRod

134

对于VS 15.7.1 Tools→交通Options→交通Projects and Solutions→交通Web Projects→交通取消选中Stop debugger when browser window is closed


6
VS 15是Visual Studio 2017,顺便说一句。
乌威·凯姆

3
这也适用于VS 2019 Preview 4.3
KnuturO

2
建议的更改不执行问题所在。
Anatolyevich

1
正常工作在VS2019(16.4.4)
罗里McCrossan

75

.NET Core Web Api项目的更新答案...

右键单击您的项目,选择“属性”,转到“调试”,然后取消选中“启动浏览器”复选框(默认情况下启用)。

在此处输入图片说明


1
@Grey“启动浏览器”选项在哪里?
阿尤什·辛哈尼亚

我已经更新了答案:您必须转到项目的属性才能使用该选项。
CennoxX

44

现在可以在ASP.Net 5项目中为每个启动配置文件进行设置。

打开“ 启动项目属性”文件夹下的文件launchsettings.json并将其添加"launchBrowser": false到您正在配置的配置文件中,例如:

"profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": false,
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    }
}

13

此变通办法适用于VS 2019

工具=>选项

然后输入 Projects and solutions在搜索框中键入。

选择Web Projects

然后取消选择下面的选项。

关闭浏览器窗口时停止调试器,停止调试时关闭浏览器。

这对我有用。希望这会有所帮助。


1
感谢您的提示。
胜出

每次我开始调试时,它仍然会打开一个新选项卡。
模仿

12

您可以使用“附加到进程”功能,而无需按F5

这也可以让您浏览已知的工作部分,而无需在下面加载VS调试器。


我已经尝试过了,但是找到断点后它不会停止执行。我需要它在断点处停止,有没有办法启用它?谢谢。
sker

1
前提是您附加到一个进程,该进程已加载了与应用程序的/ bin /文件夹中完全相同的程序集,则所有断点都将起作用(哦,并且提供了.pdb文件!)
Aaron Powell,2009年

我在Google上找到了解决方法,但似乎很麻烦。我无法正常工作。同时,我将使用“我有帽子”解决方案。谢谢。
sker

我可以通过按F5的“等待来自外部应用程序的请求”选项进行调试,但是无法使“附加到进程”正常工作(附加到INetMgr.exe)。永远不要在断点处停止。我在VS 2013中使用了VSCommands,但是VSCommands的2015年新版本尚不支持“附加到IIS”。希望我知道问题所在。
ErikE

12

我已经按照以下步骤解决了我的问题。转到工具>>单击选项>>单击项目和解决方案>> Web项目>>取消选中“关闭浏览器时停止调试”选项在此处输入图片说明


最好的解决办法,帮助我的.NET的核心项目
V319

被低估的答案
Bimal Das

9

首次打开Web /应用程序项目时,请执行Ctrl-- F5这是无需调试即可启动应用程序的快捷方式。然后当你随后打F5并启动调试器时,它将使用该IE实例。然后停止并在Visual Studio中启动调试,而不是关闭IE。

它可以在我的机器上运行。我正在使用内置的开发Web服务器。不知道那有什么区别。

Firefox也将保持打开状态,因此您可以同时调试一个或两个。


嘿,行得通!非常感谢。现在,每个编码会话我可以避免大约100个额外的窗口。另外,当我按下F5键时,VS会调整我的IE窗口大小。你知道我该怎么避免吗?
sker

抱歉,我不知道这个的答案-尽管我做上述事情并没有发生,所以可能某个地方有一个答案。也许IE记得它的窗口大小,并且与调试方案无关?
Rex Miller

7

似乎在一种情况下,上述方法均无济于事,但以下方法会有所帮助。我正在为Windows Azure云平台开发一个项目,并且具有网络角色。正如Pawel Krakowiak所指出的那样,确实在Project-> {Project name} properties中确实有一个单选按钮“不打开页面”,但是对我而言这毫无作用。但是,解决方案资源管理器中有一个主要的云项目,并且其下有Roles文件夹。如果右键单击此文件夹中的Web角色,然后选择属性,则会获得另一组设置,并且在“ 配置”选项卡上有“ 启动浏览器”标志,如果取消选中它,则在应用程序启动时不会打开新的浏览器窗口。


6

由于我的VS中没有提到的选项(Visual Studio Enterprise 2017),因此我不得不寻找其他选项。

这是我发现的:

转到工具->选项->调试标签(常规),然后取消选中“为Asp.Net(Chrome和IE)启用JavaScript调试。

在此处输入图片说明


仍然对2019年有效,谢谢。
伊曼纽尔

5

Joao Costa的回答也适用于.Net核心2项目。

launchsettings.json - > “launchBrowser”:假的

"profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": false,
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    }
}

1
这超级有帮助。值得注意的是,此launchSettings.json隐藏在“解决方案资源管理器”中的“文件夹”属性下
netpoetica,

2

我仔细查看了答案,却没有看到提到的解决方案。如果是这样,我表示歉意。就我而言,当前使用的是Visual Studio2015。在解决方案资源管理器中,右键单击Project文件,然后单击属性。转到“调试”选项卡,其中应该包含有关前两个下拉菜单如何启动“ IIS Express或Web(DNX)”的信息,然后应为“启动URL:”打勾。取消选中此选项,您每次调试应用程序时都不会自动启动浏览器。希望这可以帮助某人。


2

常见的问题较新的解决方案,有多种出色的答案,但我想为您提供更多解决方案,以解决在处理具有多个项目的解决方案时应采取的措施

在找到此解决方案之前,我一直在查看解决方案bindingInformation的applicationhost.config,不知疲倦地寻找任何提示说明为什么事情根本不起作用。

事实证明,我忽略的一件简单事情是,不同的项目也具有各自的设置。

因此,除了Project > {Project-Name} Properties... > Web > Start Action在后端项目上,我还必须Website > Start Options... > Start Action在前端项目上进行操作。到达那里后,我选择了Don't open a page. Wait for a request from an external application自己,从那以后一直很快乐!

后端设定 前端设定


2

您可以右键单击项目,然后PropertiesDebug选项卡上选择,然后取消选中launch browser复选框。



0

现在,您还可以通过单击“运行”按钮旁边的下拉箭头来访问Web属性!

  1. 点击“运行”旁边的下拉按钮
  2. {专案名称} 属性
  3. 点击左侧列表中的“网络”
  4. 在“开始操作”部分下,单击“不打开页面”。

你们都准备好了!

PS:这对我有用,我使用的是VS Professional 2019的16.5.5版本:)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.