Sprache: VB
Mit dieser kleinen Funktion kann man den Windows XP Key ändern. Funktioniert ab SP1
Public Sub ChangeXPKey(ByVal Key As String)
Dim WSH As Object
Key = Replace(Key, "-", "")
WSH = CreateObject("WScript.Shell")
WSH.RegDelete("HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWPAEventsOOBETimer")
For Each Obj As Object In GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("win32_WindowsProductActivation")
Obj.SetProductKey(Key)
Next
End Sub
Public Sub ChangeXPKey(ByVal Key As String)
Dim WSH As Object
Key = Replace(Key, "-", "")
WSH = CreateObject("WScript.Shell")
WSH.RegDelete("HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWPAEventsOOBETimer")
For Each Obj As Object In GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("win32_WindowsProductActivation")
Obj.SetProductKey(Key)
Next
End Sub
Alte URL:
/snippet/windows-xp-key-aendern/265
Das verstößt gegen den Windows Lizenzvertrag.
Ach ja? Wo steht das? Es ist offiziel erlaubt seinen XP-Key zu ändern. Falls ich mich irren sollte, beweis mir bitte das Gegenteil.
Aufgrund von Änderungen in Microsoft Windows XP Service Pack 1 (SP1) ist es möglich,
dass die Installation von Windows XP Service Pack 1 oder das Downloaden von Updates
von der Windows Update-Site fehlschlägt, wenn der Computer einen Product Key verwendet,
der der allgemeinen Öffentlichkeit bekannt ist und daher missbraucht werden könnte.
Dieser Support-Artikel soll Kunden deren Key public geworden ist dabei helfen einen neuen Key, den sie von Microsoft
erhalten haben, zu verwenden.
Dies ist eine Umsetzung des Support Artikels in VB.NET.
@tim:
In dem von Jan Welker benannten Artikel der MS-Knowledgebase steht expliziet: Ändern des „Volume License Product Key“ auf einem Windows XP SP1
Also, der Volumelicensekey muss öffentlich geworden sein. Nicht der eines normales Systems.
weiß wer wenn ich es in c# convertiere was für using directiven ich benötige?
ps :
c# converter spuckt das hier aus :
[code] public void ChangeXPKey(string Key)
{
object WSH;
Key = Key.Replace(„-„, „“);
WSH = CreateObject(„WScript.Shell“);
WSH.RegDelete(„HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents\OOBETimer“);
foreach (object Obj in GetObject(„winmgmts:{impersonationLevel=impersonate}“).InstancesOf(„win32_WindowsProductActivation“))
{
Obj.SetProductKey(Key);
}
}[/code]