教你更改windows xp操作系统序列号

时间:2021-05-23

你有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,选择使用[最后一次正确的配置],然后重复以上流程。

<FONT face=Verdana>

  使用脚本

  以下有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.然后点击[确定]即可。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章