サービス メタデータを作成するための開発者ガイド
MBAE 非推奨に関する警告
重要
Windows 10 バージョン 1803 以降では、MBAE アプリ エクスペリエンスは MO UWP アプリに置き換えられました。 MO UWP アプリの詳細については、「UWP モバイル ブロードバンド アプリ」を参照してください。
このガイドでは、以前は Sysdev と呼ばれていた Windows デベロッパー センター ハードウェア ダッシュボードでサービス メタデータ パッケージを作成するプロセスについて説明します。 モバイル ブロードバンド アプリをハードウェア デバイスに接続するには、サービス メタデータが必要です。 ユーザーがモバイル ブロードバンド デバイスをコンピューターに接続すると、関連付けられているサービス メタデータがダウンロードされ、モバイル ブロードバンド アプリが自動的にダウンロードされます。
サービス メタデータを利用して、Windows と深く統合されたエクスペリエンスを作成できます。 サービス メタデータ パッケージを使用すると、アイコンや通信事業者名などのブランド化情報を含め、SIM ハードウェアと個人用ホットスポットにアクセスするための設定とアクセス許可を構成し、モバイル ブロードバンド アプリをモバイル ブロードバンド デバイスで動作するようにプロビジョニングできます。
Note
モバイル ブロードバンド アプリが自動的にインストールされている場合でも、ユーザーは手動でスタート画面にピン留めする必要があります。
作業の開始
サービス メタデータ パッケージを正常に作成するには、このセクションに含まれる手順を完了する必要があります。
Windows デベロッパー センター ハードウェア ダッシュボードに会社を登録する
会社の Windows デベロッパー センター ハードウェア ダッシュボードにアクティブなアカウントがあります。 会社が Windows デベロッパー センター ハードウェア ダッシュボードにアカウントを持っていない場合は、新しいアカウントを作成し、会社にユーザー アカウントを追加できます。 詳細については、Windows デベロッパー センター ハードウェア ダッシュボードのヘルプの「管理」を参照してください。
会社には、パッケージに署名するための VeriSign コード署名証明書があります。
サービス メタデータ ウィザードのアクセスとサービス識別子の登録
MNO と MVNO は、サービス メタデータ パッケージを作成する前に、次の手順を完了する必要があります。
- サービス メタデータ ウィザードへのアクセスを要求する
- サービス識別子を登録する
上記の手順を完了するには、パートナー センター ダッシュボードのテクニカル サポートに移動し、次の情報を入力する必要があります。
- Windows デベロッパー センター ハードウェア ダッシュボードに登録するときに使用する組織名。
- ユーザーがモバイル ネットワーク通信事業者かモバイル仮想ネットワーク通信事業者か。
- サービス メタデータ パッケージを作成する必要がある理由に関する Web サイトと理由。
必要に応じて、次のサービス識別子を含めます。
- GSM プロバイダー ID のリスト
- GSM プロバイダー名のリスト
- CDMA SID のリスト
- CDMA プロバイダー名のリスト
要求を受信した 24 時間の確認メールを受信する必要があります。 ただし、要求の処理には最大 5 営業日かかる場合があります。 競合が発生した場合は、追加情報を求める電子メールが送信されます。
モバイル ブロードバンド アプリ
サービス メタデータ パッケージを作成する前に、モバイル ブロードバンド アプリが開発され、Microsoft Store に関連付けられていることを確認します。 このアプリは、プランの購入、データの使用量、ヘルプとサポート、通信事業者からの付加価値サービスの強調表示などの主要なエクスペリエンスを提供する必要があります。 モバイル ブロードバンド アプリの作成方法の詳細については、次のリンクを参照してください。
Note
モバイル ブロードバンド アプリは、サービス メタデータがテストされ、外部に公開できる準備が整うまで、Microsoft Store に発行する必要はありません。 サービス メタデータ パッケージがプレビュー モードのテストに合格した後にのみ、アプリを Microsoft Store に公開することをお勧めします。
デバイス メタデータ パッケージの作成
サービス メタデータ パッケージの作成は、Windows デベロッパー センター ハードウェア ダッシュボードで使用できるサービス メタデータ ウィザードから始まります。 サービス メタデータ ウィザードの詳細については、「ステップ 2 - サービス メタデータ パッケージを作成する」を参照してください。 サービス メタデータ ウィザードを使用して、新しいサービス メタデータ パッケージを作成したり、既存のサービス メタデータ パッケージを編集したりできます。 ウィザードを実行して値を入力すると、ウィザードはエラーや警告が検証して通知します。 この検証には、不足しているフィールドまたは正しくないフィールドのチェック、サービス識別子の所有権、Microsoft Store でのモバイル ブロードバンド アプリの存在などが含まれます。
最終的な確認ページで送信する準備ができたら、開発者モードまたはプレビュー モードでパッケージを送信できます。
開発者モード 最初の段階で使用するのは、サービス メタデータ パッケージを作成し、オフライン テスト目的で使用するだけの場合です。 このモードでは、パッケージは署名されず、検証のために手動でダウンロードしてテスト マシンにインストールする必要があります。 このモードは、サービス メタデータ パッケージを作成してデバイスで動作することを確認するための迅速な方法と見なすことができます。
プレビュー モード パッケージが正しく作成され、エンド ツー エンドテストのために提出する準備ができていることを確信している場合に使用されます。 このモードでは、テスト マシンが正しくプロビジョニングされていれば、パッケージは Windows デベロッパー センター ハードウェア ダッシュボードによって署名され、テスト マシンに自動的にダウンロードされます。
プレビュー テストを完了し、パッケージがすべてのシナリオで動作することを確認したら、パッケージを公開できます。
次の図では、ワークフローについて説明します。
新しいサービス メタデータ パッケージを作成するには、「サービス メタデータ パッケージを作成する手順」を参照してください。
既存のサービス メタデータ パッケージを編集するには、「サービス メタデータ パッケージを編集する手順」を参照してください。
サービス メタデータ パッケージを作成する手順
Windows デベロッパー センター ハードウェア ダッシュボードでサービス メタデータ パッケージを作成するには、次の手順に従います。
- 1 - サービス メタデータ パッケージに必要な情報を収集する
- 2 - サービス メタデータ パッケージを作成する
- 3 - ストア マニフェスト ファイルを Microsoft Store デバイス アプリに挿入する
- 4 - サービス メタデータ パッケージをテストする
- 5 - サービス メタデータ パッケージを発行する
1 - サービス メタデータ パッケージに必要な情報を収集する
このトピックのステップ 2 のサービス メタデータ ウィザードの手順を実行するときは、デバイスに関連付けるモバイル ブロードバンド アプリ プロジェクトの package.appxmanifest ファイルに格納されているいくつかの情報が必要です。 次の手順を使用して情報を収集し、このトピックのステップ 2 の準備が整うようにします。
注意事項
このステップで値を収集する前に、モバイル ブロードバンド アプリを Microsoft Store に関連付ける必要があります。 モバイル ブロードバンド アプリを関連付けると、パッケージ マニフェスト ファイル内の値が更新され、Microsoft Store 開発者アカウントの情報が使用されます。 ただし、モバイル ブロードバンド アプリを Microsoft Store に公開する必要はありません。 サービス メタデータ パッケージを発行する準備が整うまで、ローカル開発環境を維持できます。
UWP デバイス アプリ情報を収集するには
Visual Studio 2013 を使用してモバイル ブロードバンド アプリ プロジェクトを開きます。
右側のウィンドウで Package.appxmanifest ファイルを右クリックし、[コードの表示] をクリックします。
package.appxmanifest ファイルから次の属性を収集します。
- Identity 要素から、サービス メタデータ ウィザードの [パッケージ名] フィールドに Name 属性が使用されます。
- Identity 要素から、サービス メタデータ ウィザードの [発行元] フィールドに Publisher 属性が使用されます。
- Applications 要素から、Application 子要素の Id 属性が、サービス メタデータ ウィザードの [アプリ ID] フィールドに使用されます。
package.appxmanifest ファイルを閉じます。
次の手順を実行して、Visual Studio を使用しないでこれを完了することもできます。
Visual Studio を使用しないでモバイル ブロードバンド アプリ情報を収集するには
モバイル ブロードバンド アプリの package.appxmanifest ファイルに移動します。
ファイルを右クリックして、[プログラムから開く] をクリックします。
[すべての .appxmanifest ファイルにこのアプリを使用する] チェックボックスをオフにして、[その他のオプション] をクリックし、[メモ帳] をクリックします。
package.appxmanifest ファイルから次の属性を収集します。
- Identity 要素から、サービス メタデータ ウィザードの [パッケージ名] フィールドに Name 属性が使用されます。
- Identity 要素から、サービス メタデータ ウィザードの [発行元] フィールドに Publisher 属性が使用されます。
- Applications 要素から、Application 子要素の Id 属性が、サービス メタデータ ウィザードの [アプリ ID] フィールドに使用されます。
package.appxmanifest ファイルを保存して閉じます。
2 - サービス メタデータ パッケージを作成する
サービス メタデータは、Windows デベロッパー センター ハードウェア ダッシュボードのサービス メタデータ ウィザードを使用して作成されます。
サービス メタデータ パッケージを作成するには
sysdev.microsoft.com に移動します。
[デバイス メタデータ] 見出しの下にある [モバイル ブロードバンド エクスペリエンスの作成] をクリックします。
[サービス情報] ページで、次のフィールドに入力し、[次へ] をクリックします。
[Windows ネットワーク選択 UI で使用するネットワークの名前を入力する] – Windows 接続マネージャーの顧客に表示されるネットワークの名前。
[サービス番号を入力する] – プロビジョニング メタデータの通信事業者 ID フィールドと一致する必要がある GUID。 VISUAL Studio 2013 を使用して GUID を作成できます。 GUID の作成方法の詳細については、「GUID の作成 (guidgen.exe)」を参照してください。
[Windows ネットワーク選択 UI に表示されるアイコンをアップロードする] – [参照] を選択し、Windows 接続マネージャーで顧客に表示されるアイコンを選択します。
[アプリに Windows 通知イベント ハンドラーを入力する (以下でエンタイトルメント チェックが必要な場合を除き、省略可能)] – これは、モバイル ブロードバンド アプリに登録された通知ハンドラーです。
[ユーザーがモバイル ブロードバンド接続 (個人用ホットスポット) を共有できるようにするか?] – 使用可能なオプションは、[常に許可]、[エンタイトルメント チェックでのみ許可する (Windows 通知イベント ハンドラーが必要)]、[許可しない] です。 既定のオプションは、常に許可します。
[SIM で PIN のロック解除を実行するためにシステム管理者特権を要求するか?] – SIM カードのロックを解除するためにシステム管理者特権を必要とする場合は、[はい] オプションをクリックします。
[ハードウェア情報] ページで、エクスペリエンスを識別するために使用する情報を選択します。 チェック ボックスをオンにすると、適切なネットワーク範囲を追加できます。 生成された ID は、適切なサブスクライバーが識別されるように、Windows COSA データベースに存在する必要があります。 COSA データベースの詳細については、「COSA データベース送信」を参照してください。
国際モバイル サブスクライバー ID (IMSI) を使用する GSM プロバイダーの場合は、[GSM] 見出しの下にある [IMSI] チェック ボックスをオンにします。 [プロバイダー ID] ボックスに、GSM サービス プロバイダー ID を入力します。 [IMSI/ICCID 範囲] 見出しの下に範囲を入力し、[追加] をクリックします。
IC カード識別子 (ICCID) を使用する GSM プロバイダーの場合は、[GSM] 見出しの下にある [SIM ICC ID] チェック ボックスをオンにします。 [プロバイダー ID と ICC ID の範囲の入力] 見出しの下に範囲を入力し、[追加] をクリックします。
ホーム プロバイダー名を使用する GSM プロバイダーの場合は、[GSM] 見出しの下にある [ホーム プロバイダー名] チェック ボックスをオンにします。 [ホーム プロバイダー名の入力] または [プロバイダー ID (MCC+ MNC) の入力] 見出しにプロバイダー ID とプロバイダー名を入力し、[追加] をクリックします。
SID を使用する CDMA プロバイダーの場合は、[CDMA] 見出しの下にある [SID] チェック ボックスをオンにします。 [SID の入力] ボックスに「CDMA SID」と入力します。
プロバイダー名を使用する CDMA プロバイダーの場合は、[CDMA] 見出しの下にある [プロバイダー名] チェック ボックスをオンにします。 [プロバイダー名の入力] ボックスに、CDMA サービス プロバイダー名を入力します。
[次へ] を選択します。
[アプリ情報] ページで、このトピックのステップ 1 で収集した情報を入力します。 特権アプリを追加する場合は、[追加] をクリックし、さらに 7 つまで入力します。 すべての特権アプリを入力したら、[次へ] をクリックします。
[確認] ページで、情報が正しいことを確認します。 [開発者モード] または [プレビュー モード] オプションを選択し、[送信] をクリックします。
開発者モード – パッケージは署名されておらず、すべてのコンピューターに手動でダウンロードしてインストールする必要があります。 オフライン開発用にパッケージを保存する場合は、このオプションを使用します。
プレビュー モード – パッケージは署名され、適切なレジストリ設定が構成されたテスト コンピューターに Microsoft から自動的にダウンロードされます。 プレビュー モードでは、モバイル ブロードバンド アプリが Microsoft Store に発行されるようにチェックされません。
3 - ストア マニフェスト ファイルを Microsoft Store デバイス アプリに挿入する
ストア マニフェスト ファイルは、UWP デバイス アプリに含まれている必要があります。 サービス メタデータ パッケージからストア マニフェスト ファイルをダウンロードし、モバイル ブロードバンド アプリ プロジェクトに挿入するには、次の手順に従います。
ストア マニフェスト ファイルを挿入する
Windows デベロッパー センター ハードウェア ダッシュボードのサービス メタデータ パッケージの管理エクスペリエンス ページで、サービス メタデータ パッケージをクリックし、[StoreManifest.xml] をクリックしてストア マニフェスト ファイルをダウンロードします。
Visual Studio 2013 を使用してモバイル ブロードバンド アプリ プロジェクトを開きます。
プロジェクトを右クリックして [追加] をクリックし、[既存の項目] をクリックします。
ダウンロードしたストア マニフェスト ファイルを参照し、[追加] をクリックします。
モバイル ブロードバンド アプリを再コンパイルし、もう一度 Microsoft Store に発行します。
4 - サービス メタデータ パッケージをテストする
サービス メタデータ パッケージをテストするには、モバイル ブロードバンド デバイスとサービス メタデータ パッケージ ファイルが必要です。 テスト システムを構成してサービス メタデータ パッケージをインストールする手順は、パッケージのモードによって異なります。
開発者モードでサービス メタデータ パッケージをテストする
シナリオが正しく機能するためには、パッケージを手動でダウンロードし、適切な場所にインストールする必要があります。 開発者モード パッケージには、新しいパッケージを作成したか既存のパッケージを作成したかに応じて、2 つの異なるエントリ ポイントからアクセスする必要があります。
新しいパッケージを作成した場合は、Windows デベロッパー センター ハードウェア ダッシュボードで、[エクスペリエンスの管理] をクリックし、[関連付けられていない開発パッケージ] (エクスペリエンスの管理テーブルの最初のエントリ) をクリックします。 次の図は例を示しています。
エクスペリエンスに既に関連付けられている既存のサービス メタデータ パッケージを編集した場合は、[エクスペリエンスの管理] テーブルからエクスペリエンスを選択すると、[メタデータ パッケージ] テーブルに開発者モード パッケージが表示されます。 [MBAE Zip パッケージの編集のダウンロード] を選択してそれをダウンロードします。
サービス メタデータ パッケージをダウンロードしたら、サービス メタデータ パッケージが署名されていないため、テスト署名を有効にする必要があります。 テスト署名を有効にするには、管理者特権でのコマンド プロンプトから bcdedit –set testsigning on を実行し、コンピューターを再起動します。
テスト署名がオンになった後、*.devicemetadata-ms ファイルをサービス メタデータ パッケージから %ProgramData%\Microsoft\Windows\DeviceMetadataStore\<culture> にコピーします。ここで、<culture> はコンピューターの現在のカルチャ コードです。
プレビュー モードでサービス メタデータ パッケージをテストする
サービス メタデータ パッケージがプレビュー モードの場合は、テスト コンピューターで PreviewKey レジストリ エントリを作成する必要があります。 PreviewKey レジストリ エントリの構成の詳細については、「プレビュー パッケージの作成」を参照してください。
Note
プレビュー モードのサービス メタデータ パッケージをテストするために、テスト署名を有効にする必要はありません。
PreviewKey レジストリ エントリが作成されたら、モバイル ブロードバンド デバイスを接続し、ネットワークのリストに表示されていることを確認します。 そうでない場合は、「トラブルシューティング」セクションを参照してください。
既存のサービス メタデータをクリアする
サービス メタデータが PC にインストールされている場合、メタデータに含まれる値は、レジストリ、メタデータ キャッシュ、メタデータ ストア、WWAN プロファイル、開発ノードなど、さまざまな場所に格納されます。 これにより、同じメタデータ パッケージまたは異なるメタデータ パッケージを使用して複数のテストを繰り返すのが困難になる場合があります。 サービス メタデータが正しくインストールされるようにするには、既存のサービス メタデータをクリアする必要があります。 すべてのトレースを削除する PowerShell スクリプトを実行するようにテスト コンピューターを設定することで、既存のサービス メタデータをクリアできます。 まず、テスト コンピューターで環境を設定する必要があります。
Note
これは Windows RT デバイスでは機能しません。 「Windows RT を実行しているデバイスでサービス メタデータをクリアするには」という手順に従います。
サービス メタデータをクリアするための環境を設定するには
psexec.exe (https://go.microsoft.com/fwlink/p/?linkid=330071) をダウンロードし、フォルダーに展開します。
Driver Kit Windows 8.1 (https://go.microsoft.com/fwlink/?LinkId=330072) をダウンロードしてインストールします。
WDK ファイルがインストールされている場所に移動します。 既定の場所は C:\Program Files (x86)\Windows Kits\8.1\Tools です。 テスト コンピューターで x86 が実行されている場合は、x86 フォルダーから psexec.exe と同じフォルダーに devcon.exe をコピーします。 テスト コンピューターで x64 が実行されている場合は、x64 フォルダーから devcon.exe をコピーします。
次のスクリプトを MetadataRemovalScript.ps1 として、Devcon.exe および PsExec.exe と同じフォルダーに保存します。
Note
[保存の種類] ボックスで、ファイルを保存する前に [すべてのファイル (*.*)] を選択してください。
# DEVICE SHOULD BE CONNECTED TO MACHINE
Write-Host "Launching devcon to remove MBAE software device nodes devcon.exe remove @SWD\MBAE\*"
$DevconParameters = ' remove @SWD\MBAE\* '
try
{
Start-Process devcon.exe -ArgumentList $DevconParameters
}
catch
{
$Error[0] # Dump details about the last error
Write-Host "Error running devcon.exe " $DevconParameters
exit
}
Write-Host "Removing MB Profiles"
$mbprcmd = "mbn sh pr i=*"
$mddelprcmd = "mbn del pr i=* name="
$cmdout = $mbprcmd | netsh | Out-String
$tokens = $cmdout.Split( [String[]] ("`r`n"), [StringSplitOptions]::RemoveEmptyEntries)
if($tokens.Length -gt 3)
{
for($i=3;$i -lt $tokens.Length-1;$i++)
{
$x = $mddelprcmd + '"' + $tokens[$i].trim() +'"'
Write-Host "Deleting Profile Cmd :" $x
$x | netsh
}
}
Write-Host ""
Write-Host "Disabling ALL Mobile Broadband Adapters"
$MBAdapters = Get-Netadapter -Name "Mobile Broadband*"
foreach($MBAdapter in $MBAdapters)
{
Write-Host "Disabling MB Adapter :"$MBAdapter.Name
Disable-NetAdapter -Name $MBAdapter.Name -Confirm:$false
}
Write-Host "Stopping Device Setup Manager Service"
Stop-Service DsmSvc
Write-Host "Removing MBAE metadata packages in store"
#Find Package Ids
$MBAEPackageRegKeyHive = "HKLM:\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\Accounts\"
if(Test-Path $MBAEPackageRegKeyHive)
{
$DevMetadataStorePath = join-path -Path $Env:ProgramData -ChildPath "Microsoft\Windows\DeviceMetadataStore"
$PackageIds = Get-ChildItem $MBAEPackageRegKeyHive | ForEach-Object {Get-ItemProperty $_.pspath} | where-object {$_.MetadataPackageId} | Foreach-Object {$_.MetadataPackageId}
foreach($PackageId in $PackageIds)
{
$PackageStoreFile = $PackageId + ".devicemetadata-ms"
$PackageStorePath = Get-ChildItem $DevMetadataStorePath -Recurse -Filter $PackageStoreFile
if($PackageStorePath -ne $null)
{
Write-Host "Deleting Device Metadata Store @" $PackageStorePath.FullName
Remove-Item -Force $PackageStorePath.FullName
}
}
}
Write-Host "Removing all metadata from cache"
$DevMetadataCachePath = join-path -Path $Env:ProgramData -ChildPath "Microsoft\Windows\DeviceMetadataCache\*"
if(Test-Path $DevMetadataCachePath)
{
Write-Host "Delete All Metadata Packages under "$DevMetadataCachePath
Remove-Item -Recurse -Force $DevMetadataCachePath
}
Write-Host "Cleanup MBAE registry keys"
$MBAERegKeyPath = "HKLM:\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\*"
if(Test-Path $MBAERegKeyPath)
{
Write-Host "Found MBAE reg keys - deleting"
Remove-Item -Path $MBAERegKeyPath -Recurse
}
Write-Host "Enabling all MB Adapters, press any key to continue"
$keypress = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp")
$MBAdapters = Get-Netadapter -Name "Mobile Broadband*"
foreach($MBAdapter in $MBAdapters)
{
Write-Host "Enabling MB Adapter :"$MBAdapter.Name
Enable-NetAdapter -Name $MBAdapter.Name -Confirm:$false
}
Write-Host "END of Script"
# DEVICE SHOULD BE CONNECTED TO MACHINE
Write-Host "Launching devcon to remove MBAE software device nodes devcon.exe remove @SWD\MBAE\*"
$DevconParameters = ' remove @SWD\MBAE\* '
try
{
Start-Process devcon.exe -ArgumentList $DevconParameters
}
catch
{
$Error[0] # Dump details about the last error
Write-Host "Error running devcon.exe " $DevconParameters
exit
}
Write-Host "Removing MB Profiles"
$mbprcmd = "mbn sh pr i=*"
$mddelprcmd = "mbn del pr i=* name="
$cmdout = $mbprcmd | netsh | Out-String
$tokens = $cmdout.Split( [String[]] ("`r`n"), [StringSplitOptions]::RemoveEmptyEntries)
if($tokens.Length -gt 3)
{
for($i=3;$i -lt $tokens.Length-1;$i++)
{
$x = $mddelprcmd + '"' + $tokens[$i].trim() +'"'
Write-Host "Deleting Profile Cmd :" $x
$x | netsh
}
}
Write-Host ""
Write-Host "Please remove the MB device from the system and press any key to continue"
$keypress = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
Write-Host "Removing MBAE metadata packages in cache and store"
#Find Package Ids
$MBAEPackageRegKeyHive = "HKLM:\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\Accounts\"
if(Test-Path $MBAEPackageRegKeyHive)
{
$DevMetadataCachePath = join-path -Path $Env:ProgramData -ChildPath "Microsoft\Windows\DeviceMetadataCache"
$DevMetadataStorePath = join-path -Path $Env:ProgramData -ChildPath "Microsoft\Windows\DeviceMetadataStore"
$PackageIds = Get-ChildItem $MBAEPackageRegKeyHive | ForEach-Object {Get-ItemProperty $_.pspath} | where-object {$_.MetadataPackageId} | Foreach-Object {$_.MetadataPackageId}
foreach($PackageId in $PackageIds)
{
$PackageCacheFolder = Get-ChildItem $DevMetadataCachePath -Recurse -Filter $PackageId
if($PackageCacheFolder -ne $null)
{
Write-Host "Deleting Device Metadata Cache @" $PackageCacheFolder.FullName
Remove-Item -Recurse -Force $PackageCacheFolder.FullName
}
$PackageStoreFile = $PackageId + ".devicemetadata-ms"
$PackageStorePath = Get-ChildItem $DevMetadataStorePath -Recurse -Filter $PackageStoreFile
if($PackageStorePath -ne $null)
{
Write-Host "Deleting Device Metadata Store @" $PackageStorePath.FullName
Remove-Item -Force $PackageStorePath.FullName
}
}
}
Write-Host "Cleanup MBAE registry keys"
$MBAERegKeyPath = "HKLM:\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\*"
if(Test-Path $MBAERegKeyPath)
{
Write-Host "Found MBAE reg keys - deleting"
Remove-Item -Path $MBAERegKeyPath -Recurse
}
Write-Host "END"
環境が設定されたら、既存のサービス メタデータをクリアするたびに次の手順を実行します。
サービス メタデータをクリアするには
- モバイル ブロードバンド デバイスがテスト コンピューターに接続されていることを確認します。
- 管理者特権でのコマンド プロンプトから、psexec.exe を抽出したフォルダーに移動し、psexec /s /i powershell を実行します。
- PowerShell コマンド プロンプトで、psexec.exe を抽出したフォルダーに移動します。
- 「set-executionpolicy unrestricted」と入力し、Enter キーを押します。
- 「Y」と入力し、Enter キーを押します。
- 「.\MetadataRemovalScript.ps1」と入力し、Enter キーを押します。
- メッセージが表示されたら、モバイル ブロードバンド デバイスを削除し、Enter キーを押します。
- テスト コンピューターからサービス メタデータをクリアするたびに、これらのステップを繰り返します。
Windows RT を実行しているデバイスでサービス メタデータをクリアするには
ソフトウェア デバイス ノードを削除します。
- デバイス マネージャーで、[表示] をクリックし、[非表示のデバイスの表示] をクリックします。
- [ソフトウェア デバイス] を展開します。
- 次のデバイス ノードを右クリックし、[アンインストール: Windows.Devices.Sms.SmsDevice] と [Windows.Networking/NetworkOperators.MobileBroadbandAccount] をクリックします。
すべてのインターフェイスからすべてのモバイル ブロードバンド プロファイルを削除します。
- 管理者特権でのコマンド プロンプトから、「netsh mbn sho pro i=\*」と入力します。
- プロファイルごとに、「netsh mbn delete profile name = "The profile name here" i=\*」と入力し、Enter キーを押します。
すべてのモバイル ブロードバンド アダプターを無効にします。
- デバイス マネージャーで、[ネットワーク アダプター] を展開します。
- 各モバイル ブロードバンド デバイスを右クリックし、[無効にする] をクリックします。
管理者特権のコマンド プロンプトで、「sc stop dsmsvc」と入力して DSM サービスを停止し、Enter キーを押します。
%ProgramData%\Microsoft\Windows\DeviceMetadataStore からサービス メタデータ パッケージを含むフォルダーを削除して、デバイス メタデータ ストアからサービス メタデータ パッケージを削除します。 サービス メタデータ パッケージを識別するには、MobileBroadbandInfo.xml ファイルを探します。
WWAN SVC MBAE レジストリ エントリをすべて削除します。
- レジストリ エディターで、次のレジストリ エントリとすべての子エントリを削除します: HKEY_LOCAL_MACHINE\Software\Microsoft\WwanSvc\MobileBroadbandAccounts。
- レジストリ エントリを削除するアクセス権がない場合は、フル コントロールのアクセス許可を自分に付与する必要があります。
すべてのモバイル ブロードバンド アダプターを有効にします。
- デバイス マネージャーで、[ネットワーク アダプター] を展開します。
- 各モバイル ブロードバンド デバイスを右クリックし、[有効にする] をクリックします。
5 - サービス メタデータ パッケージを発行する
サービス メタデータ パッケージが正しく動作することを確認したら、最後のステップとしてパッケージを解放します。 次に示すように、[解放] ボタンをクリックして、特定のエクスペリエンスにアタッチされているパッケージを選択することで、パッケージを解放できます。
サービス メタデータ パッケージを編集する手順
サービス メタデータ パッケージは、Windows デベロッパー センター ハードウェア ダッシュボードの [エクスペリエンスの管理] ページを使用して編集できます。
トラブルシューティング
ネットワークのリストを開き、モバイル ブロードバンド ネットワークを探します。 サービス メタデータ パッケージ ServiceInfo.xml ファイルで使用した名前とアイコンを使用してネットワークがリスト表示されている場合、パッケージは正しく解析されます。 同じ名前とアイコンを持つサービス メタデータ パッケージを更新する場合、または約 1 分後に名前またはアイコンがリストに表示されていない場合は、次の説明に従って追加の手順を実行する必要があります。
- メタデータの更新を強制する
- メタデータ キャッシュを確認する
- レジストリを確認する
- WWAN ログを確認する
メタデータの更新を強制する
メタデータとモバイル ブロードバンド アプリ システムの一部はネットワーク アクセスに依存しているため、障害が発生し、コンピューターの状態が不整合になる可能性があります。 この場合、サービス メタデータがインストールされていないか、モバイル ブロードバンド アプリがインストールされていない状況が発生する可能性があります。 システムは定期的に状況を解決しようとしますが、電力を節約するために、再試行はかなりまれです (1 日に数回)。 次回の再試行を待つ代わりに、更新がすぐに行われるよう手動で強制できます。 この操作を行うには、次の手順に従います。
- デスクトップの[コントロール パネル] を開きます。
- [デバイスとプリンター] を開きます。
- [表示] メニューの [最新の情報に更新] をクリックするか、F5 キーを押します。 このアクションにより、メタデータが再解析され、バックグラウンド イベントが再登録されます。
重要
サービス メタデータ パッケージが既に正常に解析されている場合、システムはこの更新をメタデータ更新として扱います。 この場合、メタデータ パッケージのファイル名には別の GUID が含まれ、PackageInfo.xml の LastModifiedDate 要素には更新されたタイムスタンプが含まれている必要があります。
メタデータ キャッシュを確認する
メタデータの更新で問題が解決しない場合は、サービス メタデータ パッケージがオンであり、正しいハードウェア ID があることを確認してください。 この操作を行うには、次の手順に従います。
%programdata%\Microsoft\Windows\DeviceMetadataCache\dmrccache\culture に移動します。ここで、culture はテスト コンピューターの現在のカルチャのカルチャ コードです (en-us、es-es など)。
メタデータ パッケージと同じ名前のフォルダー (.devicemetadata-ms 拡張子なし) を探します。 このディレクトリが存在しない場合は、次の 4 つのいずれかを意味する可能性があります。
- サービス メタデータ パッケージが破損している。
- サービス メタデータ パッケージに正しいハードウェア ID がない。
- モバイル ブロードバンド デバイスは、メタデータをダウンロードできる状態ではないか、サービス メタデータ パッケージをコピーする前にデバイスに接続している。
- メタデータ パッケージでデジタル署名を確認するときに問題が発生した。 これは通常、テスト コンピューターでテスト署名がオンになっていないことによって発生します。
パッケージが破損していないことを確認し、サービス メタデータ パッケージをコピーした後に最初にモバイル ブロードバンド デバイスに接続した場合は、IMSI 範囲を確認します。 0 や 9 が多かったり少なかったりすることがよくあります。 これらの項目を確認または修正しても問題が解決しない場合は、レジストリを確認する必要があります。
レジストリを確認する
警告
アプリケーションに属していないレジストリ データは、絶対に必要でない限り編集しないでください。 レジストリにエラーが発生した場合、システムが正常に機能しない可能性があります。 どのような状況でも、MobileBroadbandAccounts レジストリ キーを削除しないでください。 Windows では再作成されず、機能が中断されます。
レジストリを確認するには、次の手順を実行します。
レジストリ エディターを開きます。
HKLM\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts に移動します。
このレジストリ キー内で、他の 3 つのキー (Accounts、NetworkInterfaceBindings、Data) を探します。 これらのキーは既定では存在しません。モバイル ブロードバンド デバイスが初めて挿入、オン、または接続されるときに自動的に作成されます。
Accounts キーまたは NetworkInterfaceBindings キーが存在せず、モバイル ブロードバンド アダプターを既に接続またはオンにしている場合は、WWAN ログを確認します。
これらのキーの一部またはすべてが存在する場合は、ツリー ビューで [アカウント] キーを展開します。 GUID に似た名前を持つ 1 つ以上のレジストリ キーが、その中に存在する必要があります。 レジストリ ツリーのエントリは、次に示すレジストリ ツリーに似ている必要があります。
レジストリ キーが上記の図に似ている場合 (アカウントが GSM または CDMA ネットワーク上にあるかどうかによって値の名前が若干異なります)、ネットワークのリストにアイコンが表示されない場合は、イベント ログを確認する必要があります。
レジストリ エントリが次の図と似ている場合は、サービス メタデータ パッケージがデバイス メタデータ ストアにコピーされる前にモバイル ブロードバンド アダプターが挿入された、サービス メタデータ パッケージが破損している、ハードウェア ID が正しくないことを意味します。 メタデータ パッケージをメタデータ ストアにコピーする前にデバイスを接続またはオンにした状況を解決するには、「メタデータの更新を強制する」の手順を実行します。 それ以外の場合は、「WWAN ログを確認する」の手順に従います。
WWAN ログを確認する
HKLM\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts の下に Accounts または NetworkInterfaceBindings レジストリ キーがない場合、または完全に設定されていないエントリがある場合は、WWAN ログを確認する必要があります。 次の手順では、コンピューターが既知の状態にリセットされます。
モバイル ブロードバンド デバイスを取り外すかオフにします (デバイスが埋め込まれている場合は、[デバイス マネージャー] で無効にします)。
次のレジストリ キーを削除します。
- HKLM\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\Accounts
- HKLM\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\NetworkInterfaceBindings
警告
どのような状況でも、HKLM\SOFTWARE\Microsoft\WwanSvc\MobileBroadbandAccounts\ レジストリ キーを削除しないでください。 Windows では再作成されず、機能が中断されます。
ログに含まれるエントリには、アカウント管理 WWAN サービス エントリのログ エントリとパーサー タスク エントリの 2 種類があります。 最初の型は、ネットワーク ハードウェアの問題によって発生する問題をデバッグするのに役立ち、2 番目の型はメタデータ解析の問題をデバッグするのに役立ちます。
正常に処理されたネットワークのアカウント管理 WWAN サービス エントリ ログ エントリは、次のようになります。
[0]02CC.0CD0::2012-01-04 09:22:26.567 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Account updater started for network interface {7a0a0dce-0a51-471a-8c16-6e767cd0b861.
[0]02CC.0CD0::2012-01-04 09:22:26.567 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Getting home provider ID from hardware device for network interface {7A0A0DCE-0A51-471A-8C16-6E767CD0B861}. Provider ID is "234567".
[0]02CC.0CD0::2012-01-04 09:22:26.567 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Getting home provider name from hardware device for network interface {7A0A0DCE-0A51-471A-8C16-6E767CD0B861}. Provider name is "MS GSM".
[0]02CC.0CD0::2012-01-04 09:22:26.586 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Network identity not recognized, assigning new network account ID.
[0]02CC.0CD0::2012-01-04 09:22:26.597 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Devnode create/update started.
[0]02CC.0CD0::2012-01-04 09:22:26.617 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Devnode create/update finished.
[0]02CC.0CD0::2012-01-04 09:22:26.617 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Data store create/update started.
[0]02CC.0CD0::2012-01-04 09:22:26.707 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Data store create/update finished.
[0]02CC.0CD0::2012-01-04 09:22:26.707 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Account updater finished for network interface {7a0a0dce-0a51-471a-8c16-6e767cd0b861}.
これらのエントリは、アカウント管理のログを検索することで確認できます。 この場合、最も重要なエントリは、データ ストアの作成/更新が開始されたエントリと、データ ストアの作成/更新が完了したエントリです。 これらのエントリが存在し、エラー メッセージがない場合、ハードウェアは正しく動作しています。 (ここで参照されるデータ ストアには、「レジストリを確認する」で説明されているレジストリ キーが含まれています)。
一方、SIM が削除されたデバイスでは、通常、エントリは次のようになります。
[0]02CC.03E4::2012-01-04 09:29:50.309 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Account updater started for network interface {7a0a0dce-0a51-471a-8c16-6e767cd0b861}.
[0]02CC.03E4::2012-01-04 09:29:50.309 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Detected removal of SIM from device bound to network interface {7A0A0DCE-0A51-471A-8C16-6E767CD0B861}.
[0]02CC.03E4::2012-01-04 09:29:50.309 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Devnode create/update started.
[0]02CC.03E4::2012-01-04 09:29:50.309 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Devnode create/update finished.
[0]02CC.03E4::2012-01-04 09:29:50.309 [Microsoft-Windows-WWAN-SVC-EVENTS]Account Management: Account updater finished for network interface {7a0a0dce-0a51-471a-8c16-6e767cd0b861}.
Note
後者の例では、データ ストアの作成/更新が開始された、またはデータ ストアの作成/更新が完了したエントリはありません。 SIM に格納されている情報はアカウント管理プロセスにとって重要であるため、SIM を持たないデバイスには必要なメタデータが関連付けられません。
ハードウェアが正常に処理されたが、ネットワークのリストにロゴまたは名前が表示されない場合は、メタデータ パッケージに問題がある可能性があります。 これは、ログ内のパーサー タスク エントリを使用して調査できます。 これらのエントリを見つけるには、Parser-Task を検索します。 正常な解析のログ エントリは、通常、次のようになります。
[0]0DA8.0A2C::2012-01-04 09:22:32.007 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parser task started.
[0]0DA8.0A2C::2012-01-04 09:22:32.030 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parsing metadata for device container with id "{972238E7-36F4-11E1-BC81-00155DE96B01}" for culture "en-US".
[0]0DA8.0A2C::2012-01-04 09:22:32.297 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting parse of mobile broadband service information file.
[0]0DA8.0A2C::2012-01-04 09:22:32.297 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Metadata package contains no data for culture "en-US". Using fallback data.
[0]0DA8.0A2C::2012-01-04 09:22:32.356 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished parse of mobile broadband service information file.
[0]0DA8.0A2C::2012-01-04 09:22:32.356 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting update of stored network account information.
[0]0DA8.0A2C::2012-01-04 09:22:32.377 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]The mobile broadband account now contains service provider information.
[0]0DA8.0A2C::2012-01-04 09:22:32.378 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished update of stored network account information.
[0]0DA8.0A2C::2012-01-04 09:22:32.378 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Applying WWAN profiles for service provider Contoso GSM.
[0]0DA8.0A2C::2012-01-04 09:22:32.378 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting creation and/or update of WWAN profiles.
[0]02CC.0CD0::2012-01-04 09:22:32.512 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: Profile Update Notification received
[0]02CC.0CD0::2012-01-04 09:22:32.519 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: Complete Scanning
[0]02CC.0CD0::2012-01-04 09:22:32.519 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: WWAN Interface information
[0]02CC.0CD0::2012-01-04 09:22:32.586 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: Profile Update Notification received
[0]02CC.0CD0::2012-01-04 09:22:32.651 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: Profile Update Notification received
[0]0DA8.0A2C::2012-01-04 09:22:32.659 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished creation and/or update of WWAN profiles.
[0]0DA8.0A2C::2012-01-04 09:22:32.659 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]WWAN profiles applied successfully for service provider Contoso GSM.
[0]0DA8.0A2C::2012-01-04 09:22:32.659 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Adding trusted provisioning certificates for service provider Contoso GSM.
[0]0DA8.0A2C::2012-01-04 09:22:32.659 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting setting of trusted certificates for network provisioning.
[0]0DA8.0A2C::2012-01-04 09:22:33.016 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished setting of trusted certificates for network provisioning.
[0]0DA8.0A2C::2012-01-04 09:22:33.016 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Trusted provisioning certificates added successfully for service provider Contoso GSM.
[0]0DA8.0A2C::2012-01-04 09:22:33.017 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parser task finished.
[0]0DA8.0A2C::2012-01-04 09:22:33.017 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]MbaeParserTask completed successfully.
これらのログは、MobileBroadbandInfo.xml ファイルが正しく解析されたこと、パーサー タスクが WWAN プロファイルを (プロファイルを正常に更新した WWAN サービス ログと共に) 適用していること、およびパーサー タスクが MobileBroadbandInfo.xml に記載されている信頼されたプロビジョニング証明書を設定したことを示しています。
プロセスの一部が失敗した場合は、そのエラーがログに記録されます。 たとえば、サービス プロバイダー アイコン ファイルでデジタル署名チェックが失敗した場合、通常、ログ エントリは次のようになります。
[0]0F24.0C70::2012-01-04 10:09:49.271 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parser task started.
[0]0F24.0C70::2012-01-04 10:09:49.288 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parsing metadata for device container with id "{97223B34-36F4-11E1-BC81-00155DE96B01}" for culture "en-US".
[0]0F24.0C70::2012-01-04 10:09:49.483 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting parse of mobile broadband service information file.
[0]0F24.0C70::2012-01-04 10:09:49.483 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Metadata package contains no data for culture "en-US". Using fallback data.
[0]0F24.0C70::2012-01-04 10:09:49.547 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished parse of mobile broadband service information file.
[0]0F24.0C70::2012-01-04 10:09:49.547 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Starting update of stored network account information.
[0]0F24.0C70::2012-01-04 10:09:49.688 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Digital signature verification failed for file "c:\programdata\microsoft\windows\devicemetadatacache\dmrccache\en-us\B68264FF-E4D1-49B1-AB5F-2B9C1C16EF5D\ServiceInformation\ContosoBroadband.ico".
[0]0F24.0C70::2012-01-04 10:09:49.690 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Finished update of stored network account information.
[0]0F24.0C70::2012-01-04 10:09:49.692 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]Parser task finished.
[0]0F24.0C70::2012-01-04 10:09:49.692 [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]MbaeParserTask did not complete successfully. Error is 0x80070306: One or more errors occurred while processing the request.
通常、パーサー タスクは複数回実行されるため、複数の [Microsoft-Windows-Mobile-Broadband-Experience-Parser-Task]
ログ エントリのセットが表示される場合があります。 この場合、エントリのセットは通常同じです。同じでない場合は、断続的な問題を示す可能性があります。
その他のリソース
Windows 8.1 と Windows 10 のモバイル ブロードバンドの詳細については、次のリンクを参照してください。