別のコンピューターに展開されたVisual Studio アプリケーションをデバッグするには、アプリを展開したコンピューターにリモート ツールをインストールして実行し、Visual Studioからリモート コンピューターに接続するようにprojectを構成してから、アプリを実行します。
リモート デバッガー コンポーネントのスクリーンショット。Remote_debugger_components
ユニバーサル Windows アプリ (UWP) のリモート デバッグの詳細については、「インストールされているアプリ パッケージ をデバッグするを参照してください。
必要条件
リモート デバッガーは、Windows 7 以降および Windows Server 2008 Service Pack 2 以降のバージョンの Windows Server でサポートされています。 要件の完全な一覧については、「要件」を参照してください。
手記
プロキシ経由で接続されている 2 台のコンピューター間のデバッグはサポートされていません。 ダイヤルアップ インターネットなどの待機時間の長い接続または低帯域幅の接続、または国/地域間のインターネット経由でのデバッグは推奨されず、失敗したり、許容できないほど遅くなったりする可能性があります。
リモート ツールをダウンロードしてインストールする
Visual Studio コンピューターではなく、デバッグ対象のリモート デバイスまたはサーバーで、次の表のリンクから正しいバージョンのリモート ツールをダウンロードしてインストールします。
- Visual Studioのバージョンのリモート ツールの最新の更新プログラムをダウンロードします。 Visual Studio 2022 および 2026 用のリモート ツールは、どちらのバージョンのVisual Studioでも使用できます。 ただし、Visual Studio 2022 より前のバージョンのリモート ツールは、以降のVisual Studio バージョンと互換性がありません。 (たとえば、Visual Studio 2019 を使用している場合は、Visual Studio 2019 のリモート ツールの最新の更新プログラムをダウンロードします。このシナリオでは、Visual Studio 2022 用のリモート ツールをダウンロードしないでください)。
- Visual Studioのバージョンのリモート ツールの最新の更新プログラムをダウンロードします。 以前のバージョンのリモート ツールは、以降のVisual Studio バージョンと互換性がありません。 (たとえば、Visual Studio 2019 を使用している場合は、Visual Studio 2019 のリモート ツールの最新の更新プログラムをダウンロードします。このシナリオでは、Visual Studio 2022 用のリモート ツールをダウンロードしないでください)。
- リモート ツールをインストールするコンピューターと同じアーキテクチャでダウンロードします。 たとえば、x64 オペレーティング システムを実行しているリモート コンピューターで x86 アプリケーションをデバッグする場合は、x64 リモート ツールをインストールします。 ARM64 オペレーティング システムで x86、ARM、または x64 アプリケーションをデバッグするには、ARM64 リモート ツールをインストールします。
| バージョン | リンク | メモ |
|---|---|---|
| Visual Studio 2026 | リモート ツール | Visual Studio 2022 以降のバージョンと互換性があります。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 以前のバージョンの Windows Server では、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2022 | リモート ツール | Visual Studio 2022 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 以前のバージョンの Windows Server では、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2019 | リモート ツール | Visual Studio 2019 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 以前のバージョンの Windows Server では、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2017 | リモート ツール | Visual Studio 2017 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 Windows Server で、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2015 | リモート ツール | Visual Studio 2015 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 Windows Server で、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2013 | リモート ツール | Visual Studio 2013 ドキュメントのダウンロード ページ |
| Visual Studio 2012 | リモート ツール | Visual Studio 2012 ドキュメントのダウンロード ページ |
| バージョン | リンク | メモ |
|---|---|---|
| Visual Studio 2022 | リモート ツール | すべてのVisual Studio 2022 バージョンと互換性があります。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 以前のバージョンの Windows Server では、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2019 | リモート ツール | Visual Studio 2019 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 以前のバージョンの Windows Server では、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2017 | リモート ツール | Visual Studio 2017 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 デバイスのオペレーティング システム (x86、x64 (AMD64)、または ARM64) に一致するバージョンをダウンロードします。 Windows Server で、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2015 | リモート ツール | Visual Studio 2015 のリモート ツールは、My.VisualStudio.com から入手できます。 メッセージが表示されたら、無料の Visual Studio Dev Essentials プログラムに参加するか、Visual Studio サブスクリプション ID でサインインします。 Windows Server で、リモート ツールのダウンロードに関するヘルプについては、「ファイルのダウンロード のブロックを解除する」を参照してください。 |
| Visual Studio 2013 | リモート ツール | Visual Studio 2013 ドキュメントのダウンロード ページ |
| Visual Studio 2012 | リモート ツール | Visual Studio 2012 ドキュメントのダウンロード ページ |
リモート デバッガーを実行するには、リモート ツールをインストールするのではなく、リモート コンピューターに msvsmon.exe をコピーします。 ただし、リモート デバッガー構成ウィザード (rdbgwiz.exe) は、リモート ツールをインストールする場合にのみ使用できます。 リモート デバッガーをサービスとして実行する場合は、構成にウィザードを使用することが必要になる場合があります。 詳細については、「(省略可能) リモート デバッガーをサービスとして構成する」を参照してください。
手記
- ARM デバイスで Windows 10 以降のアプリをデバッグするには、最新バージョンのリモート ツールで使用できる ARM64 を使用します。
- Windows RT デバイスでWindows 10 アプリをデバッグするには、arm を使用します。ARM は、Visual Studio 2015 リモート ツールのダウンロードでのみ使用できます。
- ARM64 オペレーティング システムで x64 アプリをデバッグするには、ARM64 リモート ツールと共にインストールされている x64 msvsmon.exe を実行します。
ヒント
一部のシナリオでは、ファイル共有からリモート デバッガーを実行するのが最も効率的な場合があります。 詳細については、「ファイル共有からリモート デバッガーを実行する」を参照してください。
リモート デバッガーを設定する
リモート デバッガーをインストールしたら、次の手順に従います。
リモート コンピューターで、の [スタート] メニューから リモート デバッガー を見つけて起動します。
リモート コンピューターに対する管理アクセス許可がない場合は、リモート デバッガー アプリを右クリックし、[管理者 として実行]選択します。 それ以外の場合は、通常どおりに起動するだけです。
管理者として実行されているプロセス、または別のユーザー アカウント (IIS など) で実行しているプロセスにアタッチする場合は、リモート デバッガー アプリを右クリックし、[管理者として実行] 選択。 詳細については、「リモート デバッガーを管理者として実行する」を参照してください。
リモート デバッガーを初めて起動するとき (またはリモート デバッガーを構成する前)、リモート デバッグ構成 ウィザードが表示されます。
ほとんどのシナリオでは、[ リモート デバッグの構成] を選択します。
リモート デバッガー構成のスクリーンショット。リモート デバッガー構成
ほとんどのシナリオでは、ウィザードの [Windows ファイアウォール の構成] ページに移動するまで、[次の ] を選択します。
リモート デバッガー構成のスクリーンショット。リモート デバッガー構成
リモート ツールを使用するネットワークの種類を少なくとも 1 つ選択します。 コンピューターがドメイン経由で接続されている場合は、最初の項目を選択する必要があります。 コンピューターがワークグループまたはホームグループ経由で接続されている場合は、必要に応じて 2 番目または 3 番目の項目を選択します。
次に、[完了] を選択してリモート デバッガーを起動します。
構成が完了すると、リモート デバッガーの ウィンドウが表示されます。
リモート デバッガー ウィンドウリモート デバッガー ウィンドウのスクリーンショット
リモート デバッガー ウィンドウリモート デバッガー ウィンドウのスクリーンショット
これで、リモート デバッガーは接続を待機しています。 表示されているサーバー名とポート番号を使用して、Visual Studioでリモート接続の構成を設定します。
リモート デバッガーを停止するには、[ファイル] 選択します。 の [スタート] メニューまたはコマンド ラインから再起動できます。
<Remote debugger installation directory>\msvsmon.exe
手記
追加のユーザーのアクセス許可を追加する必要がある場合は、リモート デバッガーの認証モードまたはポート番号を変更する リモート デバッガーを構成するを参照してください。
projectをリモート デバッグする
デバッガーは、Visual C# または Visual Basic デスクトップ アプリケーションをリモート コンピューターに展開できませんが、次のようにリモートでデバッグすることはできます。 次の手順では、次の図に示すように、MJO-DL 名前のコンピューターでデバッグすることを前提としています。
MyWpf という名前のWPF projectを作成します。
WPFの代わりに MAUI アプリをリモート デバッグする場合は、「Remote debug a .NET MAUI app on Windowsを参照してください。
簡単に到達できるコード内のどこかにブレークポイントを設定します。
たとえば、ボタン ハンドラーにブレークポイントを設定できます。 これを行うために、MainWindow.xaml を開き、ツールボックスから Button コントロールを追加してから、ボタンをダブルクリックしてイベントハンドラーを開きます。
Solution Explorerで、projectを右クリックし、[
Properties。 [プロパティ] ページで、[デバッグ] タブを選択します。
Visual Studio 2022 以降、.NET Core または .NET 5 以降を対象とする C# プロジェクトの場合は、
Debug タブから を選択して、リモート デバッグの設定を構成します。Debug 起動プロファイル UI
それ以外の場合、.NET Framework の場合は、Debug タブでリモート デバッグ設定を直接変更します。
Visual Studio Projectプロパティの [デバッグ] タブのスクリーンショット。[リモート コンピューターの使用] プロパティが 'MJO-DL:4026'. Visual Studio 2022 以降、.NET Core または .NET 5 以降を対象とする C# プロジェクトの場合は、
Debug タブから を選択して、リモート デバッグの設定を構成します。Debug 起動プロファイル UI
それ以外の場合、.NET Framework の場合は、Debug タブでリモート デバッグ設定を直接変更します。
Visual Studio Projectプロパティの [デバッグ] タブのスクリーンショット。[リモート コンピューターの使用] プロパティが 'MJO-DL:4026'. 作業ディレクトリ テキスト ボックスが空であることを確認します。
[リモート コンピューターを使用する] をオンにして、テキスト ボックスに「yourmachinename:port」と入力します。 ポート番号がリモート デバッガー ウィンドウに表示されます。
この例では、次を使用します。
MJO-DL:4026 Visual Studio 2022 以降
[ネイティブ コードデバッグを有効にする] が選択されていないことを確認します。
プロジェクトをビルドします。
リモート コンピューター上に、Visual Studio コンピューターの Debug フォルダーと同じパスであるフォルダー (<source パス>\MyWPF\MyWPF\bin\Debug を作成します。
Visual Studio コンピューターから作成した実行可能ファイルを、リモート コンピューター上の新しく作成したフォルダーにコピーします。
注意
コードに変更を加えたり、再構築したりしないでください (または、この手順を繰り返す必要があります)。 リモート コンピューターにコピーした実行可能ファイルは、ローカル ソースとシンボルと完全に一致している必要があります。
projectを手動でコピーしたり、XCopy、Robocopy、PowerShell などのオプションを使用したりできます。
リモート デバッガーがターゲット コンピューターで実行されていることを確認します (実行されていない場合は、の [スタート] メニューでリモート デバッガー 検索します)。 リモート デバッガー ウィンドウは次のようになります。
VS 2022 のリモート デバッガー ウィンドウのスクリーンショット。リモート デバッガー ウィンドウの
Visual Studioでデバッグを開始します (Debug > デバッグの開始、または F5)。
メッセージが表示されたら、ネットワーク資格情報を入力してリモート コンピューターに接続します。
必要な資格情報は、ネットワークのセキュリティ構成によって異なります。 たとえば、ドメイン コンピューターでは、ドメイン名とパスワードを入力できます。 ドメイン以外のコンピューターでは、正しいパスワードと共に、マシン名と有効なユーザー アカウント名 (MJO-DL\など) を入力できます。
WPF アプリケーションのメイン ウィンドウがリモート コンピューターで開かれていることがわかります。
必要であれば、ブレークポイントを達成するためのアクションを取ります。 ブレークポイントがアクティブであることがわかります。 そうでない場合は、アプリケーションのシンボルが読み込まれていません。 再試行してください。それでも問題が解決しない場合は、シンボルの読み込みとシンボル ファイルとVisual Studioのシンボル設定でのトラブルシューティング方法に関する情報を取得します。
Visual Studio コンピューターで、ブレークポイントで実行が停止していることがわかります。
アプリケーションで使用する必要があるコード以外のファイルがある場合は、それらをVisual Studio projectに含める必要があります。 追加のファイルのprojectフォルダーを作成します (Solution Explorer で、追加>新しいフォルダーをクリックします)。 次に、フォルダーにファイルを追加します (Solution Explorer で、 [追加] >[既存のアイテム] をクリックし、ファイルを選択します。 ファイルごとの [プロパティ] ページで、[出力ディレクトリにコピー] を [常にコピーする] に設定します。
Windows で .NET MAUI アプリをリモート デバッグする
.NET MAUI アプリは、リモート コンピューターにコピーするだけでなく、デプロイ時に登録する必要があるパッケージ アプリです。 リモート デバッグには、パッケージ化されていないバージョンのアプリをデプロイできます。
リモート デバッグには、次のいずれかの方法を使用します。
CLI を使用して Windows 用のパッケージ化されていない.NET MAUI アプリを発行します 、この記事の手順に従ってリモート デバッグします。 (アプリをコピーする手順をスキップします)。この記事の手順に従って、projectのデバッグ起動プロファイルを作成する手順を含めます。 デバッグを開始する前に、launchSettings.json ファイルを手動で編集し、次に示すように、commandName
Project値をMsixPackageに置き換えます。"Remote Profile": { "commandName": "MsixPackage", "remoteDebugEnabled": true, "remoteDebugMachine": "170.200.20.22", "authenticationMode": "None" }デバッグを開始すると、このメソッドは最初にパッケージ化されていないバージョンのアプリをデプロイして起動します。
手記
値を に変更すると、[デバッグ起動プロファイル] ダイアログ ボックスで を編集することはできません。
リモート シンボルを使用したデバッグの設定
Visual Studio コンピューターで生成したシンボルを使用してコードをデバッグできる必要があります。 ローカル シンボルを使用すると、リモート デバッガーのパフォーマンスが大幅に向上します。 リモート シンボルを使用する必要がある場合は、リモート コンピューター上のシンボルを検索するようにリモート デバッグ モニターに指示する必要があります。
次の msvsmon コマンド ライン スイッチを使用して、マネージド コードにリモート シンボルを使用できます。
詳細については、リモート デバッグのヘルプを参照してください (リモート デバッガー ウィンドウで F1 を押すか、[ヘルプ] [使用法] クリックします)。
関連コンテンツ
- Visual Studio でのデバッグ
- はじめてのデバッガー
- リモート デバッグ用の Windows ファイアウォールの構成
- リモートデバッガーポートの割り当て
- リモート IIS コンピューターでの ASP.NET のデバッグ
- リモートデバッグエラーとトラブルシューティング