Windows 7 Tipp: Die Aktivierung „retten“

Nach einer Neuinstallation von Windows7 wird auch eine Neuaktivierung nötig. Wer sich das „Upgrade“ dank Family-Pack gibt und tatsächlich nur einen PC hat, der hat es gut, denn er kann theoretisch bis zu neun Mal neu installieren, bevor ein erstmaliger Anruf bei Microsoft nötig wird. Für alle anderen ist dieser Tipp vielleicht die Rettung. Es gibt noch eine weitere Situation, in welchen sich dieser Tipp lohnt, beispielsweise wenn man gerade keine Internetverbindung zur Verfügung hat.

Der Krux mit der Aktivierung

Nach der Installation will Microsoft, dass das Betriebssystem aktiviert wird. Das ist so weit auch in Ordnung und Microsofts gutes Recht, doch das Zeromon, welches damit verbunden ist, kann unter Umständen zur Last werden.
Die ersten drei Mal geht alles wunderbar online. Die Aktivierung ist nur ein Knopfdruck. Danach wird erstmalig ein Telefonanruf nötig. Man plappert einer Computerdame den Produktschlüssel ins Ohr und bekommt den „Aktivierungscode“ zurück. Das ist schon einmal Irrsinn, weil man zuerst den immerhin 25-stelligen Schlüssel eingibt, daraufhin dann einen mindestens genauso langen Aktivierungsschlüssel. Furchtbar!
Vertippt man sich oder verlegt den Aktivierungsschlüssel bevor man ihn in den PC eingeklimpert hat, verliert man eine weitere erfolgreiche Aktivierung.
Hat man sich nun dreimal mit einem Computer unterhalten, so darf man bei der siebten Aktivierung wieder mit einem Menschen sprechen. Meist sind diese nicht deutschen Ursprungs und versuchen holprigst Fragen zu platzieren wie: Warum mussten Sie so oft aktivieren?
Das Gute: Beantwortet man diese Frage richtig, bspw. mit „Hardwaredefekt“, so kann es schon sein, dass man danach wieder drei Versuche für die Online-Aktivierung hat.
Derjenige der viel an seinem PC herumbastelt, für den ist das aber nur ein schwacher Trost. Aber es gibt vielleicht Abhilfe.

Grundsätzlich

Windows7 speichert die Aktivierungsdaten (ausgenommen den Produktschlüssel selbst) in der Datei „Tokens.Dat“ sowie „Pkeyconfig.xrm-ms“.
In ersterer Datei befindet sich einfach gesagt, das, was vom „Microsoft Aktvierungsserver“ kommt, in der zweiten der eigene, Verschlüsselte Aktivierungsschlüssel.
Beide Dateien sind verschlüsselt und man benötigt effektiv drei Dinge um sie „lesen“ zu können. Die beiden Dateien und den eigenen Product-Key.
Der „Trick“ ist nun, Windows7 eine erfolgreiche Aktivierung unterzujubeln, indem man zwei zueinander Korrespondierende Dateien unterschiebt.
Liegt Windows7 eine korrekte Tokens.Dat und eine dazu passende pkayconfig.xrm-ms vor, so geht Windows7 von einer korrekt durchgeführten Aktivierung aus, die nur aus irgendwelchen Gründen „deaktiviert“ wurde.
Im letzten Schritt muss man also trotz allem „aktivieren“, dies jedoch nicht Online oder Telefonisch, sondern rein „lokal“.

Batch-Scripts machen das Leben leichter

Da ich es so einfach wie möglich machen möchte, hier zwei Skripten, welche bspw. im Wordpad in einer Textdatei mit Endung .cmd, bspw. „sichern.cmd“ und „aktivieren.cmd“ gespeichert werden können.

Skript zum Sichern der Aktivierung „sichern.cmd“

Dieses Skript kopiert die beiden Dateien an den Speicherort des Skriptes.
@echo off
cls
echo Stoppe Software-Protection-Dienst
net stop sppsvc
cls
echo — Sichere Tokens.dat hierher —
echo Mache mir den Ordner zu eigenen
takeown /F %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\ /R
echo … und geben den Admins Vollzugriff
icacls %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\SoftwareProtectionPlatform /grant administratoren:F /L
echo So, und nun kopieren wir die Tokens.dat
copy %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\tokens.dat /Y

echo — Kopiere PkeyConfig.xrm-ms —
echo Hier bitte für die jeweilige „Edition“ (x64 und x32) die Befehlsfolge wählen
echo So sieht der Befehl für Windows7 x64-Edition aus
echo Die Berechtigungen
takeown /F %windir%\SysWOW64\spp\tokens\ /R
icacls %windir%\SysWOW64\spp\tokens\pkeyconfig\ /grant administratoren:F /L /T
icacls %windir%\SysWOW64\spp\tokens\pkeyconfig\ /grant ersteller-besitzer:F /L /T
echo So, und nun auch die pkeyconfig kopieren… muss ja ooch gemacht werden
copy %windir%\SysWOW64\spp\tokens\pkeyconfig\ pkeyconfig.xrm-ms /Y
echo ENDE des Windows7 x64-Teils
echo Und so sieht der Befehl für Windows7 x32-Edition aus
echo Die Berechtigungen
takeown %windir%\System32\spp\tokens\ /R
icacls %windir%\System32\spp\tokens\pkeyconfig\ /grant administratoren:F /L /T
icacls %windir%\System32\spp\tokens\pkeyconfig\ /grant ersteller-besitzer:F /L /T
echo So, und nun auch die pkeyconfig kopieren… muss ja ooch gemacht werden
copy %windir%\System32\spp\tokens\pkeyconfig\pkeyconfig.xrm-ms /Y
echo ENDE des Windows7 x32-Teils

echo Starte Software-Protection-Dienst
echo ———————————
net start sppsvc
echo DAS WARS! Die beiden Dateien sind (wenn da oben keine Fehlermeldung steht) gesichert.
pause

Skript zum Wiederherstellen der Aktivierung „aktivieren.cmd“

Dieses Skript kopiert die beiden Dateien wieder zurück.
@echo off
cls
echo Stoppe Software-Protection-Dienst
net stop sppsvc
cls
echo — Kopiere Tokens.dat —
echo Mache mir den Ordner zu eigenen
takeown /F %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\ /R
echo … und geben den Admins Vollzugriff
icacls %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\SoftwareProtectionPlatform /grant administratoren:F /L
echo So, und nun kopieren wir die Tokens.dat
copy tokens.dat %windir%\Servic~2\Networ~1\AppData\Roaming\Microsoft\SoftwareProtectionPlatform /Y
echo — Kopiere PkeyConfig.xrm-ms —

echo Hier bitte für die jeweilige „Edition“ die Befehlsfolge wählen (x64 oder x32)
echo So sieht der Befehl für Windows7 x64-Edition aus
echo Die Berechtigungen
takeown /F %windir%\SysWOW64\spp\tokens\ /R
icacls %windir%\SysWOW64\spp\tokens\pkeyconfig\ /grant administratoren:F /L /T
icacls %windir%\SysWOW64\spp\tokens\pkeyconfig\ /grant ersteller-besitzer:F /L /T
echo So, und nun auch die pkeyconfig kopieren… muss ja ooch gemacht werden
copy pkeyconfig.xrm-ms %windir%\SysWOW64\spp\tokens\pkeyconfig /Y
echo ENDE des Windows7 x64-Teils

echo Und so sieht der Befehl für Windows7 x32-Edition aus
echo Die Berechtigungen
takeown %windir%\System32\spp\tokens\ /R
icacls %windir%\System32\spp\tokens\pkeyconfig\ /grant administratoren:F /L /T
icacls %windir%\System32\spp\tokens\pkeyconfig\ /grant ersteller-besitzer:F /L /T
echo So, und nun auch die pkeyconfig kopieren… muss ja ooch gemacht werden
copy pkeyconfig.xrm-ms %windir%\System32\spp\tokens\pkeyconfig /Y
echo ENDE des Windows7 x32-Teils

echo Wenn das bis hierher nicht hinhaut, hier Fenster schliessen, Besitzrechte setzen und neu versuchen, sonst wirds Murks
pause
cls
echo Starte Software-Protection-Dienst
echo ———————————
net start sppsvc
echo .
echo Aktiviere Windows (Anstelle von XXXXX den eigenen Produktschlüssel eintragen!)
echo —————–
slmgr.vbs -ipk XXXXX-XXXXX-XXXXX-XXXXX
echo DAS WARS!
pause

Step-by-Step

  1. Sichern.cmd und aktivieren.cmd an einen Ort kopieren, welcher nicht bei der Neuinstallation gelöscht wird. (Bspw. einen USB-Stick)
  2. Rechtsklick auf die „Sichern.cmd“ und „Als Administrator ausführen“ – danach kontrollieren, dass die beiden Dateien erfolgreich kopiert wurden.
  3. Windows7 Neuinstallation starten – beim Dialog für die Aktivierung dabei den Produktschlüssel eintragen (wichtig: es kann irgend einer sein, aber gültig muss er sein und zur eigenen Windows-Edition passen. Leer lassen wiederum geht nicht!) und das Häkchen für die „Automatische Online-Aktivierung“ raus nehmen.
  4. Nach der Installation von Windows7 zum Speicherort unserer „aktivieren.cmd“ (und idealerweise der Tokens.dat und pkeyconfig.xrm-ms) navigieren und diese mit Rechtsklick  „Als Administrator ausführen“ starten
pco 2011