リモート マシンの UWP アプリを Visual Studio からデバッグする

Visual Studio を使用して、別のコンピューターまたはデバイス上のユニバーサル Windows プラットフォーム (UWP) アプリを実行、デバッグ、プロファイリング、テストすることができます。 リモート マシンで UWP アプリを実行するのは、Visual Studio コンピューターで、タッチ、地理的位置、物理的な方向などの UWP 固有の機能がサポートされていない場合に特に便利です。

前提条件

リモート デバイスの UWP アプリを Visual Studio からデバッグするには:

  • Visual Studio プロジェクトは、リモート デバッグ用に構成されている必要があります。
  • リモート マシンと Visual Studio コンピューターは、ネットワークを介して接続されているか、USB またはイーサネット ケーブルを使って直接接続されている必要があります。 インターネットを介したデバッグはサポートされません。
  • Visual Studio コンピューターとリモート マシンの両方で、開発者モードを有効にする必要があります。
  • リモート コンピューターで、Remote Tools for Visual Studio を実行している必要があります。

リモート デバッグ用に Visual Studio プロジェクトを構成する

プロジェクトのプロパティを使用して、接続先のリモート デバイスを指定します。 設定は、プログラミング言語によって異なります。

注意事項

Windows 10 以降のリモート接続の場合、既定では、プロパティ ページの [認証の種類][ユニバーサル (暗号化されていないプロトコル)] が設定されます。 リモート デバッガーに接続するには、場合によって [認証] を設定する必要があります。 [ユニバーサル (暗号化されていないプロトコル)] および [認証なし] プロトコルにはネットワーク セキュリティがないため、開発用コンピューターとリモート マシンの間で受け渡されるデータは脆弱です。 これらの認証の種類は、悪意のあるトラフィックや敵対的なトラフィックのリスクがないことが確実な信頼されるネットワークに対してのみ選択してください。

[認証の種類][Windows 認証] を選択した場合は、デバッグ時にリモート マシンにサインインする必要があります。 リモート デバッガーも、Visual Studio コンピューターと同じユーザー アカウントを使用して Windows 認証 モードで実行されている必要があります。

リモート デバッグ用に C# または Visual Basic プロジェクトを構成する

  1. Visual Studio のソリューション エクスプローラーで C# または Visual Basic プロジェクトを選択し、 [プロパティ] アイコンを選択して、Alt+Enter を押すか、右クリックして [プロパティ] を選択します。

  2. [デバッグ] タブを選択します。

  3. [ターゲット デバイス] で、リモート コンピューターの場合は [リモート コンピューター] 、直接接続されている Windows Mobile 10 デバイスの場合は [デバイス] を選択します。

  4. リモート マシンの場合は、[リモート接続] ダイアログ ボックス[リモート コンピューター] フィールドにネットワーク名または IP アドレスを入力するか、 [検索] を選択してデバイスを検索します。

    Managed project properties for remote debugging

リモートデバッグ用に C++ プロジェクトを構成する

  1. Visual Studio のソリューション エクスプローラーで C++ プロジェクトを選択し、 [プロパティ] アイコンを選択して、Alt+Enter を押すか、右クリックして [プロパティ] を選択します。

  2. [デバッグ] タブを選択します。

  3. [起動するデバッガー] で、リモート コンピューターの場合は [リモート コンピューター] 、直接接続されている Windows Mobile 10 デバイスの場合は [デバイス] を選択します。

  4. リモート マシンの場合は、[リモート接続] ダイアログ ボックス[コンピューター名] フィールドにネットワーク名または IP アドレスを入力または選択するか、ドロップダウンして [検索] を選択してデバイスを検索します。

    C++ project properties for remote debugging

[リモート接続] ダイアログ ボックスを使用する

[リモート接続] ダイアログ ボックスでは、特定のリモート コンピューター名または IP アドレスを検索したり、最新の情報に更新する丸い矢印のアイコンを選択して接続を自動検出したりすることができます。 このダイアログ ボックスでは、リモート デバッガーを現在実行しているローカル サブネット上のデバイスのみが検索されます。 [リモート接続] ダイアログ ボックスですべてのデバイスを検出できるわけではありません。

Remote Connection dialog box

ヒント

名前を指定してリモート デバイスに接続できない場合は、IP アドレスを使用してみてください。 IP アドレスを確認するには、リモート デバイスのコマンド ウィンドウに「ipconfig」と入力します。 IP アドレスは IPv4 アドレスとして表示されます。

Remote Tools for Visual Studio をダウンロードしてインストールする

Visual Studio でリモート コンピューター上のアプリをデバッグするには、リモート コンピューターで Remote Tools for Visual Studio が実行されている必要があります。

  • Windows Mobile 10 デバイスでは、リモート ツールは必要なく、サポートもされていません。
  • Windows 11 PC、Creators Update (バージョン 1703) 以降を実行している Windows 10 PC、Windows 10 の Xbox、IoT、HoloLens デバイスでアプリを展開すると、リモート ツールが自動的にインストールされます。
  • Creators Update より前の Windows 10 PC では、デバッグを開始する前に、リモート コンピューターでリモート ツールを手動でダウンロードしてインストールし、実行する必要があります。

リモート ツールをダウンロードしてインストールするには:

Visual Studio マシンではなく、デバッグするリモート デバイスまたはサーバーで、次の表のリンクから適切なバージョンのリモート ツールをダウンロードしてインストールします。

  • ご使用のバージョンの Visual Studio に対応したリモート ツールの最新の更新版をダウンロードしてください。 以前のバージョンのリモート ツールには、新しいバージョンの Visual Studio との互換性がありません。 (たとえば、Visual Studio 2019 を使用している場合は、Visual Studio 2019 用のリモート ツールの最新の更新プログラムをダウンロードします。このシナリオでは、Visual Studio 2022 用のリモート ツールをダウンロードしないでください)。
  • インストール先のマシンと同じアーキテクチャを持つリモート ツールをダウンロードします。 たとえば、x64 オペレーティング システムを実行しているリモート コンピューター上で x86 アプリケーションをデバッグする場合は、x64 のリモート ツールをインストールします。 ARM64 オペレーティング システムで x86、ARM、または x64 アプリケーションをデバッグするには、ARM64 リモート ツールをインストールします。
バージョン Link メモ
Visual Studio 2022 リモート ツール すべてのバージョンの Visual Studio 2022 と互換性があります。 デバイスのオペレーティング システム (x86、x64、または ARM64) に一致するバージョンをダウンロードします。 古いバージョンの Windows Server でのリモート ツールのダウンロードについては、「ファイルのダウンロードのブロック解除」を参照してください。
Visual Studio 2019 リモート ツール すべてのバージョンの Visual Studio 2019 と互換性があります。 デバイスのオペレーティング システム (x86、x64、または ARM64) に一致するバージョンをダウンロードします。 古いバージョンの Windows Server でのリモート ツールのダウンロードについては、「ファイルのダウンロードのブロック解除」を参照してください。
Visual Studio 2017 リモート ツール すべてのバージョンの Visual Studio 2017 と互換性があります。 デバイスのオペレーティング システム (x86、x64、または 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 ドキュメントのダウンロード ページ
バージョン Link メモ
Visual Studio 2019 リモート ツール すべてのバージョンの Visual Studio 2019 と互換性があります。 デバイスのオペレーティング システム (x86、x64、または ARM64) に一致するバージョンをダウンロードします。 Windows Server の場合、リモート ツールのダウンロードについては、ファイルのダウンロードのブロック解除に関するページを参照してください。 最新バージョンのリモート ツールについては、Visual Studio 2022 ドキュメントを開きます。
Visual Studio 2017 リモート ツール すべてのバージョンの Visual Studio 2017 と互換性があります。 デバイスのオペレーティング システム (x86、x64、または 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 を使用します。これは、Visual Studio 2015 リモート ツールのダウンロードでのみ使用できます。
  • ARM64 オペレーティング システムで x64 アプリをデバッグするには、ARM64 リモート ツールと共にインストールされる x64 の msvsmon.exe を実行します。

リモート ツールを構成する

  1. リモート コンピューター上の [スタート] メニューで、 [リモート デバッガー] を見つけて起動します。

    リモート コンピューターに対する管理アクセス許可がない場合は、 [リモート デバッガー] アプリを右クリックし、 [管理者として実行] を選択します。 それ以外の場合は、通常どおり開始します。

    管理者として実行されているプロセス、または別のユーザー アカウント (IIS など) で実行されているプロセスにアタッチする場合は、 [リモート デバッガー] アプリを右クリックし、 [管理者として実行] を選択します。 詳細については、「管理者としてリモート デバッガーを実行する」を参照してください。

  2. リモート デバッガーを初めて (またはその構成を完了する前に) 開始すると、リモート デバッグ構成ウィザードが表示されます。

    ほとんどのシナリオでは、ウィザードの [Windows ファイアウォール の構成] ページが表示されるまで、[次へ] を選択します。

    Screenshot of remote debugger configuration.

    Screenshot of remote debugger configuration.

    Windows Web Services API がインストールされていない場合 (これは、Windows Server 2008 R2 でのみ発生します) は、[インストール] ボタンを選択します。

  3. リモート ツールを使用するネットワークの種類を少なくとも 1 つ選択します。 コンピューターがドメインを介して接続されている場合は、最初の項目を選択する必要があります。 コンピューターがワークグループまたはホーム グループを介して接続されている場合は、必要に応じて、2 番目または 3 番目の項目を選択します。

    次に、[完了] を選択してリモート デバッガーを起動します。

    次に、[リモート デバッグの構成] を選択してリモート デバッガーを起動します。

  4. 構成が完了すると、[リモート デバッガー] ウィンドウが表示されます。

    Screenshot of remote debugger window

    Screenshot of remote debugger window

    リモート デバッガーは接続を待機しています。 表示されているサーバー名とポート番号を使用して、Visual Studio でリモート接続構成を設定します。

リモート デバッガーを停止するには、 [ファイル]>[終了] を選択します。 リモート デバッガーを再起動するには、 [スタート] メニューを使用するか、またはコマンド ラインから次のコマンドを実行します。

<Remote debugger installation directory>\msvsmon.exe

UWP アプリをリモートでデバッグする

リモート デバッグはローカル デバッグと同じように動作します。

  1. Windows 10 の Creators Update より前のバージョンでは、リモート デバッグ モニター (msvsmon.ex) がリモート デバイスで実行されていることを確認してください。

  2. Visual Studio コンピューターで、ツールバーの緑色の矢印の横に適切なデバッグ ターゲット ( [リモート コンピューター] または [デバイス] ) が表示されていることを確認します。

  3. デバッグを開始するには、 [デバッグ]>[デバッグの開始] を選択する、F5 を押す、またはツールバーの緑色の矢印を選択します。

    プロジェクトが再コンパイルされ、リモート デバイスに展開され起動されます。 デバッガーにより、ブレークポイントで実行が中断され、コードをステップ イン、ステップ オーバー、ステップ アウトできます。

  4. 必要に応じて、 [デバッグ]>[デバッグの停止] を選択するか、Shift+F5 を押してデバッグを停止し、リモート アプリを閉じます。