ボリューム ライセンスプロダクト キーを変更する方法

この記事では、ボリューム ライセンスプロダクト キーを変更する方法について説明します。

適用対象:Windows Server 2012 R2、Windows 10 - すべてのエディション
元の KB 番号: 328874

概要

警告

この記事の手順は、ボリューム ライセンス メディアでのみ有効です。 OEM メディアまたはリテール メディアでこれらの手順を試しても、プロダクト キーは変更されません。

Windows XP または Windows Server 2003 をインストールする場合、メディアはプロダクト キーと一致する必要があります。 つまり、チャネル (MSDN、リテール、OEM、ボリューム ライセンスなど)、SKU (Windows XP Professional、Windows XP Home Edition など)、および言語 (英語、フランス語など) は、プロダクト キーとメディアの間で一致する必要があります。 プロダクト キーを正常に入力できるようにするために必要です。 インストール メディアがプロダクト キーと一致しない場合は、次のエラー メッセージが表示されます。

プロダクト キーが無効です。

複数のコンピューター (ボリューム ライセンスのインストール) に Windows XP を展開するために "漏洩" プロダクト キー (公開されているプロダクト キー) を使用する場合、Windows XP Service Pack 1 (SP1) 以降のバージョンの Windows XP をインストールできないか、Windows Update Web サイトから更新プログラムを自動的に取得できない可能性があります。 たとえば、Windows XP SP1 以降のバージョンの Windows XP をインストールすると、次のエラー メッセージが表示される場合があります。

Windows のインストールに使用されるプロダクト キーが無効です。 有効なプロダクト キーを取得するには、直ちにシステム管理者または小売業者に問い合わせてください。 また、海賊版 Microsoft ソフトウェアを購入したと思われる場合は、電子メール piracy@microsoft.com で Microsoft Corporation の海賊対策チームに問い合わせることもできます。 Microsoft 海賊版対策チームに送信する個人情報は、厳重に信頼されます。

この記事は、高度なコンピューター ユーザーを対象としています。 この記事を最初に印刷すると、手順に従う方が簡単な場合があります。

詳細

前提条件

この記事の情報を使用するには、有効なプロダクト キーが必要です。 有効なプロダクト キーを取得するには、次のリンクをクリックして、Microsoft ボリューム ライセンス サービス センターにお問い合わせください。
https://www.microsoft.com/licensing/servicecenter/home.aspx

ボリューム ライセンスプロダクト キーを変更する手順

この記事では、ボリューム ライセンスのインストール後に Windows XP プロダクト キーを変更して問題を解決する方法について 2 つの方法について説明します。 1 つの方法では Windows ライセンス認証ウィザードのグラフィカル ユーザー インターフェイス (GUI) を使用し、もう 1 つの方法では Windows Management Instrumentation (WMI) スクリプトを使用します。 アクティブ化ウィザードの方法の方が簡単です。 ただし、複数のコンピューターのプロダクト キーを変更する必要がある場合は、スクリプト メソッドの方が適しています。

方法 1: ライセンス認証ウィザードを使用する

重要

このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 レジストリを変更する際には十分に注意してください。 保護を強化するため、レジストリを変更する前にレジストリをバックアップします。 こうしておけば、問題が発生した場合にレジストリを復元できます。 レジストリのバックアップ方法および復元方法の詳細を参照するには、以下のサポート技術情報番号をクリックしてください。
322756 Windows でレジストリをバックアップおよび復元する方法
変更するボリューム ライセンスプロダクト キーが数個しかない場合は、ライセンス認証ウィザードを使用できます。

注:

これらの手順に従う前に、システムの復元を実行して新しい復元ポイントを作成することをお勧めします。

Windows を非アクティブ化する
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [名前] ボックスに「regedit」と入力し、[OK] をクリックします。

  3. ナビゲーション ウィンドウで、次のレジストリ キーを見つけてクリックします。 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\WPAEvents

  4. トピック ウィンドウで OOBETimer を右クリックし、[ 変更] をクリックします。

  5. Windows を非アクティブ化するには、この値の少なくとも 1 桁を変更します。

Windows を再アクティブ化し、新しいプロダクト キーを追加する
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。

  2. [ 開く ] ボックスに次のコマンドを入力し、[ OK] をクリックします。
    %systemroot%\system32\oobe\msoobe.exe /a

  3. [ はい、カスタマー サービス担当者に電話して Windows をアクティブ化する] をクリックし、[ 次へ] をクリックします。

  4. [ プロダクト キーの変更] をクリックします。

  5. [新しいキー] ボックスに 新しいプロダクト キー を入力し、[ 更新] をクリックします。

    前のウィンドウに戻った場合は、[ 後で通知する] をクリックし、コンピューターを再起動します。

  6. 手順 1 と 2 を繰り返して、Windows がアクティブになっていることを確認します。 次のメッセージが表示されます。Windows は既にアクティブ化されています。 [OK] をクリックして終了します。

  7. [OK] をクリックします。

  8. Windows XP Service Pack 1a 以降のバージョンの Windows XP をインストールします。

Windows XP SP1 以降のバージョンの Windows XP をインストールした後に Windows を再起動できない場合は、次の手順を試してください。

  1. コンピューターを再起動し、Windows の [詳細オプション] メニューが表示されるまで F8 キーを押し始めます。
  2. メニューから [前回の既知の適切な構成] を 選択し、Enter キーを押します。 このオプションは、以前の適切な構成を使用して Windows を起動します。
  3. 「Windows を再アクティブ化し、新しいプロダクト キーを追加する」の手順 1 ~ 8 を繰り返します。

SP1 以降のバージョンの Windows XP をインストールし、Windows を再起動できる場合は、問題を解決しました。 問題が解決されていない場合は、方法 2 を試すか、「次の手順」セクションを参照して、その他のトラブルシューティング リソースを確認してください。

方法 2: スクリプトを使用する

複数のコンピューターのプロダクト キーを変更する必要がある場合は、この方法をお勧めします。 ボリューム ライセンスプロダクト キーを変更する WMI スクリプトを作成し、このスクリプトをスタートアップ スクリプトにデプロイできます。

このセクションで説明するサンプル ChangeVLKey2600.vbs スクリプトとサンプル ChangeVLKeySP1 スクリプトでは、1 つの引数として入力する新しいボリューム ライセンス キーを使用します。 これは、5 部構成の英数字形式です。

Windows XP SP1 以降のバージョンの Windows XP を実行していない Windows XP ベースのコンピューターでは、ChangeVLKey2600.vbs スクリプトを使用し、Windows XP SP1 以降のバージョンの Windows XP を実行している Windows XP ベースのコンピューターで ChangeVLKeySP1.vbs スクリプトを使用することをお勧めします。 これらのスクリプトは、次の関数を実行します。

  • 5 部構成の英数字プロダクト キーからハイフン文字 (-) を削除します。
  • win32_WindowsProductActivation クラスのインスタンスを作成します。
  • 新しいボリューム ライセンスプロダクト キーを使用して SetProductKey メソッドを呼び出します。 次のいずれかのサンプル スクリプトを使用するバッチ ファイルまたは cmd ファイルを、新しいプロダクト キーと共に引数として作成できます。

スタートアップ スクリプトの一部として展開するか、コマンド ラインから実行して、1 台のコンピューターでプロダクト キーを変更できます。

プロダクト キーをスクリプト化する方法の詳細については、次の Microsoft Web サイトを参照してください。
https://technet.microsoft.com/library/bb457096.aspx

ChangeVLKeySP1.vbs
'  
' WMI Script - ChangeVLKey.vbs  
'  
' This script changes the product key on the computer  
'  
'***************************************************************************  
ON ERROR RESUME NEXT  

if Wscript.arguments.count<1 then  
   Wscript.echo "Script can't run without VolumeProductKey argument"  
   Wscript.echo "Correct usage: Cscript ChangeVLKey.vbs ABCDE-FGHIJ-KLMNO-PRSTU-WYQZX"  
   Wscript.quit  
end if  

Dim VOL_PROD_KEY  
VOL_PROD_KEY = Wscript.arguments.Item(0)  
VOL_PROD_KEY = Replace(VOL_PROD_KEY,"-","")'remove hyphens if any  

for each Obj in GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf ("win32_WindowsProductActivation")  
   result = Obj.SetProductKey (VOL_PROD_KEY)  
   if err <> 0 then  
      WScript.Echo Err.Description, "0x" & Hex(Err.Number)  
      Err.Clear  
   end if  
Next
ChangeVLKey2600.vbs
'  
' WMI Script - ChangeVLKey.vbs  
'  
' This script changes the product key on the computer  
'  
'***************************************************************************  
ON ERROR RESUME NEXT  
if Wscript.arguments.count<1 then  
   Wscript.echo "Script can't run without VolumeProductKey argument"  
   Wscript.echo "Correct usage: Cscript ChangeVLKey.vbs ABCDE-FGHIJ-KLMNO-PRSTU-WYQZX"  
   Wscript.quit  
end if  

Dim VOL_PROD_KEY  
VOL_PROD_KEY = Wscript.arguments.Item(0)  
VOL_PROD_KEY = Replace(VOL_PROD_KEY,"-","")'remove hyphens if any  
Dim WshShell  
Set WshShell = WScript.CreateObject("WScript.Shell")  
WshShell.RegDelete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents\OOBETimer" 'delete OOBETimer registry value  
for each Obj in GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf ("win32_WindowsProductActivation")  

   result = Obj.SetProductKey (VOL_PROD_KEY)  
   if err <> 0 then  
      WScript.Echo Err.Description, "0x" & Hex(Err.Number)  
      Err.Clear  
   end if  

Next

次の例は、コマンド ラインから ChangeVLKeySP1.vbs スクリプトを使用する方法を示しています。

  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
  2. [ 開く ] ボックスに次のコマンドを入力します。 ここで、AB123-123AB-AB123-123AB-AB123 を使用する新しいプロダクト キーを入力し、[OK] をクリック します
    c:\changevlkeysp1.vbs ab123-123ab-ab123-123ab-ab123

データ収集

Microsoft サポートの支援が必要な場合は、「展開関連の問題について TSS を使用して情報を収集する」に記載している手順に従って情報を収集することをお勧めします。