Windows のライセンス認証エラー 0x80070057 は「パラメーターが間違っています」という意味です。ライセンス認証の場面では、通常、ソフトウェア ライセンス サービスが自身のデータを読み取れないことを示しており、ライセンスストアが破損しているか、保留中の更新プログラムによってライセンス認証が不整合な状態になっていることが原因です。ほとんどの場合、ライセンスキャッシュを再構築すれば解決します。
この場面での 0x80070057 の意味
これはバックアップ、インストール、更新など、さまざまな場面で表示される汎用的な Windows のエラーコードです。そのため検索すると無関係なアドバイスが大量に見つかります。ライセンス認証の場面では、意味はかなり絞り込まれます。
ライセンス認証中にこのエラーが発生する状況は次の 3 つです。
- ライセンスストアの破損:ライセンス認証データを保持する tokens.dat ファイルが破損している状態で、多くは更新中の予期しないシャットダウンが原因です
- Windows 更新プログラムの不完全な適用:ソフトウェア ライセンス サービスが処理途中の状態のまま残っています
- 地域や日付形式の設定:ライセンス サービスが解析できない設定になっている場合で、頻度は低いものの実際に起こる原因です
なお、プロダクトキーの不良ではこのコードは表示されません。キーを入力した直後にこのエラーが表示された場合でも、原因はキーではありません。
対処法 1:Software Protection サービスを再起動する
手早く、何も失うことのない方法なので、まずここから始めましょう。
- Windows + R キーを押し、services.msc と入力して Enter キーを押します
- 一覧から Software Protection を探します
- 右クリックして[再起動]を選択します。[再起動]がグレー表示の場合は[開始]を選択します
- スタートアップの種類がまだ[自動 (遅延開始)]になっていない場合は設定します
- ライセンス認証をやり直します
対処法 2:ライセンスストアを再構築する
ほとんどのケースはこの方法で解決します。Windows にキャッシュされたライセンスデータを破棄させ、改めて構築させます。
- 管理者としてコマンド プロンプトを開きます
- サービスを停止します:net stop sppsvc
- ライセンスフォルダーに移動します:cd %windir%\ServiceProfiles\LocalService\AppData\Local\Microsoft\WSLicense
- トークンファイルの名前を変更します:ren tokens.dat tokens.bak
- サービスを再度開始します:net start sppsvc
- ライセンスを再登録します:slmgr /rilc
- PC を再起動し、ライセンス認証をやり直します
削除ではなく名前の変更にすることが重要です。問題が起きても tokens.bak の名前を元に戻せば、元の状態に戻せます。新しい tokens.dat は次回起動時に Windows が自動的に生成します。
対処法 3:ライセンス認証のトラブルシューティング ツールを実行する
- [設定]→[システム]→[ライセンス認証]を開きます(Windows 10 では[更新とセキュリティ]→[ライセンス認証])
- [トラブルシューティング]をクリックします
- 表示される提案に従います
トラブルシューティング ツールは、Windows がライセンス認証の問題を検出した場合にのみ表示されます。このオプションが見当たらない場合、Windows は現在ライセンス認証済みと認識しています。
対処法 4:地域と日付の設定を確認する
見落としがちですが、実際に起こります。ロケールが一致していないと、ライセンス サービスが解析できない日付文字列が生成されることがあります。
- [設定]→[時刻と言語]→[言語と地域]を開きます
- 国または地域が、PC を実際に使用している場所と一致しているか確認します
- [管理用の言語の設定]で、システム ロケールが適切か確認します
- 再起動して再試行します
対処法 5:コマンドラインからプロダクトキーを再インストールする
ライセンスストアを再構築してもエラーが続く場合は、[設定]ではなくコマンドラインから直接キーをインストールします。
- 管理者としてコマンド プロンプトを開きます
- slmgr /upk で現在のキーをアンインストールします
- slmgr /cpky でレジストリからキーを削除します
- slmgr /ipk YOUR-KEY-HERE でご自身のキーをインストールします
- slmgr /ato でライセンス認証します
返されるコードに注目してください。ここで別のエラーが表示された場合はそれが本当の問題であり、今回のエラーは副次的なものです。接続関連のコードならエラー 0x80072F8F、無効なキーのメッセージならエラー 0xC004F050 をご覧ください。
よくある質問
0x80070057 はプロダクトキーの不良が原因ですか?
いいえ。このコードは、キーが拒否されたのではなく、Windows が自身のライセンスデータを読み取る際の問題を示しています。不良なキーや一致しないキーでは別のコードが表示されます。
tokens.dat の名前を変更しても安全ですか?
はい。削除ではなく名前の変更にとどめ、先に Software Protection サービスを停止していれば安全です。ファイルは Windows が自動的に再構築します。古いコピーを tokens.bak として残しておけば、変更を元に戻すこともできます。
作業後にプロダクトキーを再入力する必要がありますか?
場合によります。ライセンスが Microsoft アカウントに紐付けられていれば自動的に再認証されます。ローカルアカウントでライセンス認証していた場合は、作業を始める前にプロダクトキーを手元に用意しておいてください。
Windows の他の場面でもこのエラーが表示されるのはなぜですか?
0x80070057 は、無効なパラメーターが渡されたことを示す汎用的なコードです。バックアップ、更新、インストールなどで、まったく別の理由により表示されます。それらの場面向けのアドバイスでは、ライセンス認証の問題は解決しません。
関連製品とガイド
| リソース | リンク |
|---|---|
| エラー 0x80072F8F の解説 | ガイドを読む |
| エラー 0xC004F050 の解説 | ガイドを読む |
| すべての Windows ライセンスキー | コレクションを見る |
