開発者モードの機能とデバッグ

アプリに 開発者モードをインストールする方法の基本に関心がある場合は、「デバイスを開発用に有効にする」に記載されている手順に従って作業を開始します。 この記事では、開発者モードの高度な機能、以前のバージョンの Windows 10 の開発者モード、および開発者モードのインストールでのデバッグ エラーについて説明します。

追加の開発者モード機能

各デバイス ファミリには、開発者向けの追加機能が用意されている場合があります。 これらの機能は、デバイスで開発者モードが有効になっている場合にのみ使用できます (OS のバージョンによって異なる場合があります)。

次の図は、Windows の開発者向け機能を示しています:

Windows developer settings

デバイス ポータル

Device Portal について詳しくは、「Windows デバイス ポータルの概要」をご覧ください。

デバイス固有のセットアップ手順については、以下をご覧ください:

開発者モードの有効化またはデバイス ポータルについて問題が発生した場合には、「既知の問題」フォーラムで問題の回避策を見つけるか、または「開発者モード パッケージのインストール エラー」で、開発者モード パッケージをブロック解除するための WSUS サポート技術情報をご覧ください。

SSH

デバイスで [デバイス検出] をオンにすると、SSH サービスが有効になります。 これは、デバイスが MSIX パッケージ アプリケーションのリモート展開ターゲットである場合に使用されます。 サービスの名前は、SSH Server BrokerSSH Server Proxy です。

Note

これは Microsoft の OpenSSH の実装ではありません。それは GitHub にあります。

SSH サービスを利用するには、[デバイス検出] をオンにして PIN のペアリングを許可できます。 別の SSH サービスを実行する予定の場合、別のポートにセットアップするか、開発者モードの SSH サービスを無効にできます。 SSH サービスをオフにするには、[デバイス検出] をオフにします。

SSH ログインは、認証用のパスワードを受け入れる DevToolsUser アカウントを通じて行われます。 このパスワードは、[デバイス検出] の [ペアリング] ボタンを押した後にデバイスに表示される PIN であり、PIN が表示されている間のみ有効です。 Visual Studio からルーズ ファイル配置がインストールされる DevelopmentFiles フォルダーを手動で管理するために、SFTP サブシステムも有効になります。

SSH の使用に関する注意事項

Windows で使用されている既存の SSH サーバーは、まだプロトコルに準拠していません。 SFTP または SSH クライアントを使用するには、特別な構成が必要な場合があります。 具体的には、SFTP サブシステムはバージョン 3 以下で実行されるため、中継するクライアントが古いサーバーを使うように構成する必要があります。 古いデバイスの SSH サーバーは、公開キー認証として ssh-dss が使用されます。(これは、OpenSSH によって非推奨となりました)。 このようなデバイスに接続するには、ssh-dss を受け入れるように SSH クライアントを手動で構成する必要があります。

デバイスの検出

[デバイス検出] をオンにすると、ネットワーク上の他のデバイスから mDNS を介してそのデバイスが表示できるようになります。 この機能では、[デバイス検出] がオンになると一度だけ表示される [ペアリング] ボタンを押すことで、このデバイスをペアリングするための SSH PIN を取得することもできます。 この PIN プロンプトは、そのデバイスをターゲットとする最初の Visual Studio 展開を完了するために画面に表示する必要があります。

Pair your device with Device Discovery

デバイスを展開ターゲットにする予定の場合にのみ、[デバイス検出] をオンにする必要があります。 たとえば、デバイス ポータルを使用してアプリを電話に展開してテストする場合、その電話で [デバイス検出] をオンにする必要がありますが、開発用 PC では不要です。

エクスプローラー、リモート デスクトップ、PowerShell の最適化 (デスクトップのみ)

デスクトップ デバイス ファミリの場合、[開発者向け] 設定ページには、開発タスク用 PC を最適化するために使用できる設定へのショートカットが備わっています。 スライダーを使用すると、ここで簡単に設定を有効または無効にすることができます。

Shortcuts for developers

メモ

以前のバージョンの Windows 10 Mobile では、クラッシュ ダンプ オプションが [開発者向け設定] メニューに存在していました。 これは、USB 上で排他的ではなくリモートで使用できるように、デバイス ポータルに移動されました。

Windows 10 PC から Windows 10 デバイスへのアプリの展開に使用できるツールはいくつかあります。 デバイスは両方ともワイヤード (有線) またはワイヤレスでネットワークの同じサブネットに接続されているか、または 2 台のデバイスが USB で接続されている必要があります。 どちらのオプションも、アプリ パッケージ (.appx または .appxbundle) のみをインストールします。 証明書はインストールされません。

  • Windows アプリケーションの展開 (WinAppDeployCmd) ツールを使用します。 詳しくは、WinAppDeployCmd ツールに関するページをご覧ください。
  • デバイス ポータルを使用して、ブラウザーから、Windows 10 バージョン 1511 以降を実行しているモバイル デバイスに展開できます。 デバイス ポータルのアプリ ページを使用して、アプリ パッケージ (.appx) をアップロードしてデバイスにインストールします。

開発者モード パッケージのインストール エラー

ネットワークや管理上の問題により、開発者モードが正しくインストールされないことがあります。 開発者モード パッケージは、この PC へのリモート展開に必要 (ブラウザーからデバイス ポータルを使うか、またはデバイス検出を使って SSH を有効化する) ですが、ローカル展開には必要ではありません。 これらの問題が発生した場合でも、Visual Studio を使用してローカルでアプリを展開できます。また、このデバイスから他のデバイスへ展開できます。

これらの問題 (およびその他) に対する回避策を検索するには、既知の問題フォーラムをご覧ください。

Note

開発者モードが正しくインストールされない場合、フィードバック要求を提出することをお勧めします。

  1. フィードバック ハブ アプリをインストールして (まだお持ちでない場合)、開きます。
  2. [新しいフィードバックの追加] をクリックします。
  3. [開発者プラットフォーム] カテゴリと [開発者モード] サブカテゴリを選択します。
  4. フィールドに入力し (必要に応じてスクリーンショットを添付することもできます)、[送信] をクリックします。

フィードバックを送信していただくと、発生している問題を Microsoft が解決するのに役立ちます。

パッケージを見つけられませんでした

開発者モード パッケージを Windows Update に配置できませんでした。 エラー コード: 0x80004005。 詳細については、こちらを参照してください。

このエラーは、ネットワーク接続に問題がある場合、エンタープライズ設定になっている場合、またはパッケージが見つからない場合に発生することがあります。

この問題を解決するには、次の手順に従います。

  1. お使いのコンピューターがインターネットに接続されていることを確認してください。

  2. ドメインに参加しているコンピューターの場合は、ネットワーク管理者に問い合わせます。 開発者モード パッケージは、すべてのオンデマンド機能と同様に、既定では WSUS 2.1 でブロックされています。 現在または以前のリリースで開発者モード パッケージのブロックを解除するためには、WSUS で次のサポート技術情報を許可する必要があります:

    • 4016509
    • 3180030
    • 3197985
  3. [設定] → [更新とセキュリティ] → [Windows の更新プログラム] で Windows の更新プログラムをチェックします。

  4. [設定] → [システム] → [アプリ と 機能] → [オプション機能の管理] → [機能の追加] に、Windows 開発者モード パッケージが存在することを確認します。 見つからない場合は、Windows はコンピューターの適切なパッケージを検出できません。

  5. 上記の手順のいずれかを実行後、修正を確認するために、開発者モードをオフにし、もう一度オンにします。

パッケージのインストールに失敗しました

開発者モード パッケージをインストールできませんでした。 エラー コード: 0x80004005。 詳細については、こちらを参照してください。

このエラーは、Windows のビルドと開発者モード パッケージの間に互換性の問題がある場合に発生します。

この問題を解決するには、次の手順に従います。

  1. [設定] → [更新とセキュリティ] → [Windows の更新プログラム] で Windows の更新プログラムをチェックします。
  2. すべての更新プログラムを確実に適用するために、コンピューターを再起動します。

グループ ポリシーまたはレジストリ キーを使用してデバイスを有効にする

ほとんどの開発者にとって、設定アプリを使用してデバイスのデバッグを有効にする必要があります。 特定のシナリオ (自動テストなど) では、他の方法を使用して Windows デスクトップ デバイスを開発用に有効にすることができます。

Note

これらの手順では、SSH サーバーを有効にしたり、デバイスをリモート展開とデバッグの対象にしたりすることはできません。

Windows 10 Home または Windows 11 Home をしている場合を除き、gpedit.msc を使用してデバイスを有効にするグループ ポリシーを設定できます。 その場合は、regedit または PowerShell コマンドを使用してレジストリ キーを直接設定してデバイスを有効にする必要があります。

gpedit を使ってデバイスを有効にする

  1. gpedit.msc を実行します。

  2. [ローカル コンピューター ポリシー] → [コンピューターの構成] → [管理用テンプレート] → [Windows コンポーネント] → [アプリ パッケージの展開] の順に移動します。

  3. サイドローディングを有効にするには、次のポリシーを編集します:

    • 信頼できるすべてのアプリのインストールを許可します。

    OR

    サイドローディングと開発者モードの両方を有効にするには、次のポリシーを編集します:

    • 信頼できるすべてのアプリのインストールを許可します。
    • 統合開発環境 (IDE) からの UWP アプリとインストールの開発を許可します。
    • コンピューターを再起動します。

regedit を使ってデバイスを有効にする

  1. regedit を実行します。

  2. サイドローディングを有効にするには、この DWORD の値を 1 に設定します:

    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock\AllowAllTrustedApps

    OR

    開発者モードを有効にするには、この DWORD の値を 1 に設定します:

    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock\AllowDevelopmentWithoutDevLicense

PowerShell を使ってデバイスを有効にする

  1. 管理者特権で PowerShell を実行します。

  2. サイドローディングを有効にするには、このコマンドを実行します:

    PS C:\WINDOWS\system32> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" /t REG_DWORD /f /v "AllowAllTrustedApps" /d "1"
    

    OR

    開発者モードを有効にするには、このコマンドを実行します:

    PS C:\WINDOWS\system32> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" /t REG_DWORD /f /v "AllowDevelopmentWithoutDevLicense" /d "1"
    

Windows 8.1 から Windows 10 または 11 にデバイスをアップグレードする

Windows 8.1 デバイスでアプリを作成またはサイドローディングするときに、開発者用ライセンスをインストールする必要があります。 Windows 8.1 から Windows 10 または 11 にデバイスをアップグレードする場合は、この情報が維持されます。 アップグレードした Windows デバイスからこの情報を削除するには、次のコマンドを実行します。

Note

Windows 8.1 から Windows 10 バージョン 1511 以降に直接アップグレードする場合、この手順は必要ありません。

開発者用ライセンスを登録解除するには

  1. 管理者特権で PowerShell を実行します。

  2. 次のコマンドを実行します。

    unregister-windowsdeveloperlicense
    

ライセンスの登録を解除した後、このデバイスで開発を続行できるように、(このトピックで説明されているように) デバイスを開発用に有効にする必要があります。 有効にしない場合、アプリをデバッグすると (またはそのためにパッケージを作成しようとする)、エラーが発生する可能性があります。 このエラーの例を次に示します:

エラー: DEP0700: アプリの登録に失敗しました。