更改Windows XP操作系统序列号
本文适用于:
Microsoft Windows XP Professional
Microsoft Windows XP Professional SP1
本文是用于描述如何更改Windows XP中的序列号,你有2个方法来修改在已经安装完毕的Windows XP上更改序列号,一个是使用GUI界面里面的激活向导,一个是使用WMI(Windows Management Instrumentation)来实现的。
使用激活向导修改
微软强烈建议你在修改之前作一个系统还原点,以免遭受不测。
1.点击[开始],再点击[运行];
2.输入regedit以后回车打开注册表编辑器;
3.定位到HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\Current Version\WPAEvents,在右边右键单击OOBETimer,然后选择修改;
4.至少修改一个字节,确定保存。
5.点击[开始],再点击[运行];
6.输入%systemroot%\system32\oobe\msoobe.exe /a
7.选择通过电话激活以后点击下一步;
8.点击修改序列号;
9.输入新的序列号以后选择更新;
如果退回到前一个画面,那么选择稍后激活,并重新启动;
10.反复5---8步一直到修改成功为止;
11.重新激活。
12.点击确定。
13.安装SP1。
如果你安装SP1以后不能重新启动,那么启动的时候按F8,选择使用[最后一次正确的配置],然后重复以上流程。
使用脚本
以下有2个脚本,一个是用于没有安装SP1的WinXP,一个是用于已经安装了SP1的WinXP。
下面是用于已经安装了SP1的WinXP的脚本(ChangeVLKeySp1.vbs),使用方法同没有安装SP1的WinXP的脚本,一起放在本文的最后一段里面(例子)。
'
' WMI Script - ChangeVLKeySp1.vbs
'
' Windows XP With SP1
'
' 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
下面的脚本是用于没有安装SP1的WinXP(ChangeVLKey2600.vbs)。
'
' WMI Script - ChangeVLKey2600.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
例子:脚本使用方法
以下的例子描述了在命令行里面如何使用VBS脚本程序。
1.点击[开始],然后点击[运行];
2.输入C:\ChangeVLKeySp1.vbs ABCDE-ABCDE-ABCDE-ABCDE-ABCDE-ABCDE
假设 ChangeVLKeySp1.vbs 放在C:根目录下
ABCDE-ABCDE-ABCDE-ABCDE-ABCDE-ABCDE 是新的序列号
以上 ChangeVLKeySp1.vbs 适用于已经安装了SP1的WinXP,没有安装SP1的 ChangeVLKey2600.vbs 的使用方法同样是这样的。
3.然后点击[确定]即可。
============================
命令行代码,直接复制到文本,改后缀为.vbs执行即可.序列号那里填入你想更换的序列号.
ON ERROR RESUME NEXT
Dim VOL_PROD_KEY
if Wscript.arguments.count<1 then
VOL_PROD_KEY=InputBox("此工具将自动替换你当前Windows序列号,以通过微软的验证。"&vbCr&vbCr&"序列号对OEM版无效,默认版本为 XP VLK:","Windows XP序列号自动更换器","CM3HY-26VYW-6JRYC-X66GX-JVY2D")
if VOL_PROD_KEY="" then
Wscript.quit
end if
else
VOL_PROD_KEY = Wscript.arguments.Item(0)
end if
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 "DONE!可去验证..."
end if
if err <> 0 then
Wscript.echo "替换失败!输入的 CD-KEY 与当前的版本不匹配。"
Err.Clear
end if
Next
附一些序列号:
BYCMB-R844W-KJBQX-J3D9F-V3Y6G
CM3HY-26VYW-6JRYC-X66GX-JVY2D
D8GTT-RXDKP-JDH76-R42W8-B84KB
DP7CM-PD6MC-6BKXT-M8JJ6-RPXGJ
F4297-RCWJP-P482C-YY23Y-XH8W3
HCQ9D-TVCWX-X9QRG-J4B2Y-GR2TT
MRX3F-47B9T-2487J-KWKMF-RPWBY
QC986-27D34-6M3TY-JJXP9-TBGMD
D9Y7R-K3TM4-WTMY3-2BF8R-7MHVG
BX6HT-MDJKW-H2J4X-BX67W-TVVFG
RD9TW-W2XCH-TMFKM-RBBJB-DD3F6
M6TF9-8XQ2M-YQK9F-7TBB2-XGG88 (DVOL本文转自:中国DV传媒 http://www.dvol.cn)