デバッグの開始時にVisual Studioが新しいブラウザーウィンドウを起動しないようにしますか?


340

デバッグしているWebサイトのウィンドウが既に開いています。デバッグする必要があるたびに、VSが別のVSを起動する必要はありません。

この動作を停止する方法はありますか?


タブブラウジングが有効になっていますか?..そして、IEを使用していますか?
Quintin Robinson、

回答:


415

スタートアッププロジェクトのプロパティを開き(メインメニューから[プロジェクト] →[{ProjectName}プロパティ... ]をクリックするか、ソリューションエクスプローラーでプロジェクトを右クリックして[ プロパティ ] を選択します)、[ Web ]タブに移動し、[ 開始アクション ]で[ ページを開かない ]を選択します。外部アプリケーションからの要求を待ちます

引き続き、任意のブラウザー(またはFiddlerなど)を使用して実行中のアプリケーションにアクセスできますが、ブラウザーウィンドウは自動的に開かず、バックグラウンドで起動して要求を待機します。


それは本当に良い解決策のようですが、Slaceと同様に、ブレークポイントで実行を停止せず、シンボルが読み込まれていないと表示されます。ありがとう。
sker

9
します。いつもデバッグに使っています。構成が間違っている必要があります。web.configでデバッグが有効になっていることと、デバッグビルドを実行していることを再確認してください。
Pawel Krakowiak、

1
@mjohnsonengrこれはローカルのユーザーごとの設定であることを誓います...おそらく、.csproj.userファイルがチェックインされています(そうすべきではありません)。
Pawel Krakowiak 2016年

1
だから【ローカル設定】です。以前、その領域のすべてのプロジェクト設定はチームcsprojに格納されていると想定していました。以前に「プロジェクトURL」を変更してブラウザーが開くURLを変更しようとしたところ、.csprojで変更されていることがわかりました。よく調べてみると、そのフィールドだけを制御する「サーバー設定をすべてのユーザーに適用する」チェックマークがあることがわかります。私の悪い。
mjohnsonengr

4
Mac上のVisual Studioの場合、同等の設定は「プロジェクト>オプション>実行>デフォルト> ASP.NET Core」にあります。「アプリ起動時にウェブブラウザでURLを開く」のチェックを外します。
IronRod 2017

134

VS 15.7.1の場合ToolsOptionsProjects and SolutionsWeb Projects→チェックを外しますStop debugger when browser window is closed


6
VS 15はVisual Studio 2017、BTWです。
Uwe Keim 2018

3
これはVS 2019 Preview 4.3でも機能します
KnuturO

2
提案された変更は、質問の内容を実行しません。
アナトリエ

1
VS2019(16.4.4)で正常に動作します
Rory McCrossan

75

.NET Core Web Apiプロジェクトの更新された回答...

プロジェクトを右クリックして[プロパティ]を選択し、[デバッグ]に移動して[ブラウザを起動する]チェックボックスをオフにします(デフォルトで有効)。

ここに画像の説明を入力してください


1
@Greyこのオプション「ブラウザの起動」オプションはどこにありますか?
Ayush Singhania

答えを更新しました。プロジェクトのプロパティに移動して、オプションにアクセスする必要があります。
CennoxX

44

ASP.Net 5プロジェクトでは、これを各起動プロファイルに設定できるようになりました。

Startup Project Propertiesフォルダーの下のファイル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

私はそれを修正する方法についてグーグル検索しましたが、それは多くのトラブルのようです。うまくいきませんでした。その間は、I Have the Hatのソリューションを使用します。ありがとうございました。
sker

「外部アプリケーションからの要求を待つ」オプションを使用してF5を押すことでデバッグできますが、プロセスにアタッチする(INetMgr.exeにアタッチする)ことができません。ブレークポイントで停止することはありません。VS 2013でVSCommandsを使用していましたが、新しい2015バージョンのVSCommandsは「IISへの接続」をまだサポートしていません。問題が何であるかを知っていればいいのに。
ErikE 2016年

12

以下の手順で問題を解決しました。ツールに移動>>オプションをクリック>>プロジェクトとソリューションをクリック>> Webプロジェクト>>「ブラウザーが閉じているときにデバッグを停止する」オプションのチェックを外しますここに画像の説明を入力してください


.netコアプロジェクトに役立つ最高のソリューション
V319

過小評価された回答
Bimal Das

9

初めてweb / appプロジェクトを開いたときに、デバッグなしでアプリケーションを起動するためのショートカットであるCtrl- F5を実行します。その後、次にヒットしたときF5、デバッガを実行して起動すると、そのIEのインスタンスが使用されます。次に、IEを閉じる代わりに、Visual Studioでデバッグを停止して開始します。

それは私のマシンで動作します。私は組み込みの開発用Webサーバーを使用しています。それが違いを生むかどうかわからない。

また、Firefoxは開いたままになるため、片方または両方で同時にデバッグできます。


こんにちは!どうもありがとう。これで、コーディングセッションごとに約100の余分なウィンドウを回避できます。また、F5を押すと、VSがIEウィンドウのサイズを変更します。どうすればそれを回避できますか。
sker

申し訳ありませんが、その答えはわかりません。ただし、私が上記を行った場合は起こりません。そのため、おそらくどこかに答えがあるはずです。多分IEはそのウィンドウサイズを覚えていて、デバッグシナリオとは無関係ですか?
レックスミラー

7

上記のいずれでも解決しない場合が1つあるようです。私はWindows Azureクラウドプラットフォーム用のプロジェクトを開発しており、Webの役割があります。確かにラジオボタン[ プロジェクトでページ開かない ] -> {プロジェクト名}のプロパティがあります... Pawel Krakowiakによって指摘されましたが、私の場合はまったく影響がありません。ただし、ソリューションエクスプローラーにはメインのクラウドプロジェクトがあり、その下にRolesフォルダーがあります。このフォルダーで自分のWebロールを右クリックして[ プロパティ ]を選択すると、別の設定セットが表示され、[ 構成 ]タブに[ ブラウザー起動 ] フラグがあります。これをオフにすると、アプリケーションの起動時に新しいブラウザーウィンドウが開きません。


6

Visual Studio Enterprise 2017であるVSには上記のオプションがなかったため、他のオプションを探す必要がありました。

これが私が見つけたものです:

[ツール]-> [オプション]-> [デバッグ]タブ(全般)に移動し、[Asp.Net(ChromeおよびIE)のJavaScriptデバッグを有効にする]をオフにします。

ここに画像の説明を入力してください


2019年も引き続き有効です。
エマニュエル

5

Joao Costaの回答は、.Net core 2プロジェクトにも当てはまります。

launchsettings.json-> "launchBrowser":false

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

1
これはとても役に立ちました。このlaunchSettings.jsonが「ソリューションエクスプローラー」の「プロパティー」フォルダーの下に隠されていることに注目する価値があります
netpoetica

2

私は答えを調べましたが、言及されている解決策は見つかりませんでした。もしそうなら、私の謝罪。私の場合、現在Visual Studio 2015を使用しています。ソリューションエクスプローラーで、プロジェクトファイルを右クリックし、[プロパティ]をクリックします。[デバッグ]タブに移動すると、最初の2つのドロップダウンで「IIS ExpressまたはWeb(DNX)」を起動する方法に関する情報が表示され、[URLを起動する]のチェックマークボックスが表示されます。このオプションをオフにすると、アプリケーションのデバッグに行くたびにブラウザーが自動的に起動されません。これが誰かを助けることを願っています。


2

通常の容疑者から新しいソリューションに至るまで、いくつかの優れた答えがありますが、複数のプロジェクトでソリューションに取り組んでいるときに何をすべきかを解決するために、もう1つ提供します。

このソリューションにたどり着く前に、私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. 左側のリストで[Web]をクリックします
  4. [アクションの開始]セグメントで、[ページを開かない]をクリックします。

これで準備は完了です。

PS:これは私にとってはうまくいきます、私はVS Professional 2019のバージョン16.5.5を使用しています:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.