Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Office Produktnummer auslesen

Mitglied: Xaero1982

Xaero1982 (Level 4) - Jetzt verbinden

19.06.2006, aktualisiert 17.07.2006, 39738 Aufrufe, 10 Kommentare

Hi,

ich suche nach einer Möglichkeit die Produktnummer! NICHT die Seriennummer/Lizenzkey auszulesen.

Ich habe einen Registrierungsschlüssel gefunden bzw. zwei.
Der eine hat keine Leseberechtigung und der zweite geht aber.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\User information\Product Identification <-geht

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Registration\ProductID <-geht nicht

So, dies betrifft aber nur Windows 2000 und Office 2000. Leider ist dies unter Windows XP nicht der gleiche Schlüssel.

Wie kann ich alternativ diese Nummer auslesen um sie dann weiter zu benutzen.

BITTE keine Tools!

Ich brauch das in Form eines Scripts, um das in eine DB zu schreiben.

Die Windows Produktnummer kann ich problemlos auslesen.

Dank im Vorraus!
Mitglied: Xaero1982
20.06.2006 um 15:30 Uhr
Lösung:

01.
	set WshShell = CreateObject("WScript.Shell") 
02.
	 
03.
	sRegPre = "HKLM\SOFTWARE\Microsoft\Office\" 
04.
	sRegPost = "\Common\InstallRoot\" 
05.
	sRegProdPre = "HKLM\SOFTWARE\Microsoft\Office\" 
06.
	sRegProdPast = "\Registration\" 
07.
	Select Case True 
08.
		Case RegKeyExists(sRegPre & "11.0" & sRegPost) 
09.
			ProdNr = WshShell.RegRead(sRegProdPre & "11.0" & sRegProdPast & "{91110407-6000-11D3-8CFE-0150048383C9}\ProductID") 
10.
			 sOfficeVer = "Microsoft Office 2003" 
11.
		Case RegKeyExists(sRegPre & "10.0" & sRegPost) 
12.
			 ProdNr = WshShell.RegRead(sRegProdPre & "10.0" & sRegProdPast & "{91110407-6000-11D3-8CFE-0050048383C9}\ProductID") 
13.
			 sOfficeVer = "Microsoft Office 2002" 
14.
		Case RegKeyExists(sRegPre & "9.0" & sRegPost) 
15.
			 ProdNr = WshShell.RegRead(sRegProdPre & "9.0" & sRegProdPast & "ProductID\") 
16.
			 sOfficeVer = "Microsoft Office 2000" 
17.
		Case RegKeyExists(sRegPre & "8.0 " & sRegProdPast" & sRegPost) 
18.
			 ProdNr = WshShell.RegRead(sRegProdPre & "8.0" & sRegProdPast & "ProductID\") 
19.
			 sOfficeVer = "Microsoft Office 97" 
20.
		Case Else 
21.
			 sOfficeVer = "Keine" 
22.
	End Select 
23.
 
24.
Function RegKeyExists(ByVal sRegKey) 
25.
' Returns True or False based on the existence of a registry key. 
26.
 
27.
Dim sDescription, oShell 
28.
Set oShell = CreateObject("WScript.Shell") 
29.
 
30.
RegKeyExists = True 
31.
sRegKey = Trim (sRegKey) 
32.
If Not Right(sRegKey, 1) = "\" Then 
33.
sRegKey = sRegKey & "\" 
34.
End If 
35.
 
36.
On Error Resume Next 
37.
oShell.RegRead "HKEYNotAKey\" 
38.
sDescription = Replace(Err.Description, "HKEYNotAKey\", "") 
39.
 
40.
Err.Clear 
41.
oShell.RegRead sRegKey 
42.
RegKeyExists = sDescription <> Replace(Err.Description, sRegKey, "") 
43.
On Error Goto 0 
44.
End Function
So klappt das
ProdNr = Produktnummer
sOfficeVer = Version

Damit kann man dan machen was man möchte!

Danke an: http://www.winhelpline.info/forum/tipps-und-tricks-windows-xp/93668-rec ...

WICHTIG
Bei "11.0" und "10.0" kann der RegKey varriieren. Vorher bitte checken! Thx an Biber!
Bitte warten ..
Mitglied: Biber
20.06.2006 um 16:29 Uhr
Moin Xaero1982,

Hinweis: Der Key bei Office 2002 (10.0) und wahrscheinlich auch bei Office 2003 (11.0) ist unter Umständen leicht variierbar:

Bei Dir: .... "{91110407-6000-11D3-8CFE-0050048383C9}\ProductID"
Bei mir: .... "{90110407-6000-11D3-8CFE-0050048383C9}\ProductID"

...also die 2. Ziffer im ersten Block kann 0 oder 1 sein. Mindestens.

Ich würde zumindest vorher mal bei ein paar Clients (oder Freiwilligen hier im Forum) den Test mit
reg query "HKLM\SoftWare\Microsoft\office" /s |find "Registration"
..machen und den Output mal ansehen.

Denn an der Stelle reicht wahrscheinlich eine Suche nach "-6000-11D3-8CFE-"... denn die findet die ProductID, während eine exacte Suche in die Grütze geht.

Gruß
Biber
Bitte warten ..
Mitglied: Biber
20.06.2006 um 16:29 Uhr
---
Bitte warten ..
Mitglied: Xaero1982
20.06.2006 um 19:12 Uhr
Besten Dank

Meine Admins konnten mir aber nicht sagen, auf welchem PC was installiert ist und alle auslesen hat ich dann auch keine Lust.

Kann man auch nur einen Teilregkey vergleichen?

Muss ich mal testen, also dank für den Tipp!
Bitte warten ..
Mitglied: Biber
20.06.2006 um 22:58 Uhr
Na ja, Xaero,

vom CMD-Prompt aus bzw. vom Batch würde ich einfach als Oneliner abschicken:

for /f "tokens=7 delims=\" %i in ('reg query "HKLM\SoftWare\Microsoft\office\10.0\registration" ^|find "0407-6000-"') do @echo %i

... und als Antwort bekommen:
{90110407-6000-11D3-8CFE-0050048383C9}
{90120407-6000-11D3-8CFE-0050048383C9}

[Oder so ähnlich]

Das Prinzip sollte eigentlich auch mit den RegXXX()-VBS-Funktionen machbar sein, denn zumindest die RegKeys, die unterhalb der ja namentlich bekannten Verzeichnisse
- HKLM\SoftWare\Microsoft\Office\10.0\Registration
- HKLM\SoftWare\Microsoft\Office\11.0\Registration
- HKLM\SoftWare\Microsoft\Office\12.0\Registration (????) falls schon draußen
...liegen, diese RegKeys kannst Du ja ermitteln, denke ich, und diese mit der InStr()-Funktion auf "0407-6000-11D3-8CFE" prüfen.
[wobei "0407" sicherlich "deutsche Version" heißt]

Du weißt ja, mir würde das alles zu lange dauern und ich würde es per Batch-Oneliner abfackeln.

Grüße
Biber
Bitte warten ..
Mitglied: Xaero1982
21.06.2006 um 07:57 Uhr
Ich weiss, ich weiss

Ich brauche das in meinem Fall als Startscript und das soll dann automatisch in eine Access DB geschrieben werden.
In deinem Fall müsst ich das dann erst mal wieder einlesen.
Bei mir stehts direkt in einer Variable.

PS: wenn ich deinen onliner eingebe bekomme ich kein Echo
Bitte warten ..
Mitglied: JKy
15.07.2006 um 12:07 Uhr
Habe hier einen Rechner bei dem früher mal Office 2003 installiert war und jetzt Office 2000 läuft (warum auch immer).

- HKLM\SoftWare\Microsoft\Office\10.0\Registration
- HKLM\SoftWare\Microsoft\Office\11.0\Registration

Diese Schlüssel sind allerdings beide vorhanden, wie kann ich herausfinden, welche Version im Augenblick installiert ist?
Bitte warten ..
Mitglied: Xaero1982
15.07.2006 um 12:40 Uhr
Check ich nicht@ jens.

Wenn 2000 läuft müsste ein Eintrag mit 9.0 vorhanden sein, da 10.0 = Office 2002 und 11.0 =Office 2003.

Wie findest du es raus? Office starten Menü "?" dann Info und oben steht die genaue Versionsnummer.
Bitte warten ..
Mitglied: JKy
17.07.2006 um 08:42 Uhr
Sorry, habe beim beantworten nur aus dem Tread kopiert. Ich möchte aus der Registry auslesen welches Office installiert ist und auf diesem Rechner sind trotz deinstallation des höheren Office die Registryeinträge noch vorhanden. Kennt einer einen Schlüssel der zweifelsfrei die aktuelle Officeversion verrät?
Bitte warten ..
Mitglied: Xaero1982
17.07.2006 um 11:28 Uhr
Office Starten und Nummer lesen ...

Ansonsten solltest du den alten Registrierungseintrag löschen.

Es kann gut sein, dass unter:

- HKLM\SoftWare\Microsoft\Office\XX.0\

kein Schlüssel Registration vorhanden ist.

Solltest du mal checken!
Bitte warten ..
Ähnliche Inhalte
Hardware
Seriennummer per CMD auslesen
Tipp von kontextHardware2 Kommentare

Guten Morgen Mit-Administratoren, bin per Zufall über diesen Tipp gestolpert und wollte diesen euch nicht vorenthalten. Vielleicht ist er ...

Microsoft Office
Office 2013 - Aktivierungsprobleme
Tipp von TlBERlUSMicrosoft Office

Hallo Zusammen, ich verfasse dies, da ich letztens etwas gebraucht habe, um dieses Problem zu lösen / das Internet ...

Windows Server

Teamviewer-IDs von angemeldeten Benutzern auslesen

Tipp von BirdyBWindows Server10 Kommentare

Auch wenn es im Allgemeinen verpönt ist, nutzen wir derzeit noch den Teamviewer für den Remotesupport. Unter Anderem läuft ...

Router & Routing

Powershell: FritzBox über TR-064 im Netzwerk konfigurieren und auslesen

Anleitung von colinardoRouter & Routing20 Kommentare

Ich stand neulich vor der undankbaren Aufgabe eine Fritzbox per Powershell auszulesen und Aktionen darüber automatisiert auszuführen. Herausgekommen ist ...

Neue Wissensbeiträge
Backup

2016 - Restore mit WBAdmin - iSCSI Device als Sicherungsziel

Erfahrungsbericht von Henere vor 2 TagenBackup1 Kommentar

Servus zusammen, was mich eben einige graue Haare gekostet hat Server 2016. Ich habe meinem Server eine weitere M2 ...

Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 4 TagenHumor (lol)10 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 4 TagenExchange Server9 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 5 TagenErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Heiß diskutierte Inhalte
E-Mail
Deutsche e-Mail Adresse auf iPhone in Katar. Nur Probleme
gelöst Frage von vanTastE-Mail32 Kommentare

Moin, ich habe hier in Deutschland auf einem Exchange 2013 eine e-Mail Adresse (name@domain.de) für einen Kollegen in Katar ...

Windows Server
Domäne beitreten nicht möglich, unter VMWare windows Server 2016 Core
Frage von AmanuelWindows Server19 Kommentare

Ich habe auf meinem Mac unter VMWare Windows Server 2016 Core und Windows Server 2016 Desktopversion installiert. Beide Systeme ...

Windows Server
Server verliert Dateien und Ordner
gelöst Frage von routeserverWindows Server18 Kommentare

Hallo Freunde, ich habe hier ein Problem, das mich an meine Grenzen treibt und ich würde gerne wissen, ob ...

Windows Tools
User Self Service und Client Management
Frage von OrkansonWindows Tools14 Kommentare

Hallo zusammen, ich hab ein paar verschiedene Fragen: 1. Was benutzt ihr um Software im Unternehmen zu verteilen? 2. ...