ServicePack-Stand von Windows 2000 per Batch-Datei erkennen
Hallo,
wie bekomme ich heraus ob auf einem Windows 2000 Professional PC ein älteres Servicepack installiert ist.
Ich möchte eine Batch-Datei ausführen die eine Software automatisch installiert. Leider funzt die Installation per MSI erst ab SP3. Ich habe aber teilweise noch PC´s mit SP2. Jetzt würde ich gern vorher SP4 drüberjagen und dann meine Software installieren.
Hat jemand eine Idee?
Gruß da_brain
wie bekomme ich heraus ob auf einem Windows 2000 Professional PC ein älteres Servicepack installiert ist.
Ich möchte eine Batch-Datei ausführen die eine Software automatisch installiert. Leider funzt die Installation per MSI erst ab SP3. Ich habe aber teilweise noch PC´s mit SP2. Jetzt würde ich gern vorher SP4 drüberjagen und dann meine Software installieren.
Hat jemand eine Idee?
Gruß da_brain
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 31607
Url: https://administrator.de/contentid/31607
Ausgedruckt am: 20.11.2024 um 16:11 Uhr
2 Kommentare
Neuester Kommentar
Hm, da_brain,
es gibt viele Möglichkeiten, die ServicePack-Version herauszufinden - die Frage ist nur, ob die Win2000-Rechner die Utilities und die Rechte haben.
Wie installierst Du denn diese Software? Übers LogIn der Clients?
Oder hängen die nicht im Netz und Du installierst über CD?
Starten die die Installation oder läuft eh die ganze Installation mit Adminrechten?
Am einfachsten im Batch wäre entweder ein Oneliner, der die Search.vbs aus dem ResKit aufruft (wenn es bei Dir eine LDAP-Grundlage gibt) und Dir die betroffenen Rechner raussucht:
[wenn Du denn den ermittelten Rechnern eine Sonderbehandlung geben willst]
-oder-
Nutze die PsInfo.exe von www.sysinternals.com
-oder-
wenn die Clients die Rechte haben, geh über leknilk0815's Vorschlag mit HKLM
reg query HKLM\....\CurrentVersion
CSDVersion REG_SZ Service Pack 2 ---> so heißt es bei XP
Kann sein, das es bei Win2000 noch "...\CurrentVersion\BuildLab" hieß. Läßt sich vorher prüfen.
Grüße
Biber
es gibt viele Möglichkeiten, die ServicePack-Version herauszufinden - die Frage ist nur, ob die Win2000-Rechner die Utilities und die Rechte haben.
Wie installierst Du denn diese Software? Übers LogIn der Clients?
Oder hängen die nicht im Netz und Du installierst über CD?
Starten die die Installation oder läuft eh die ganze Installation mit Adminrechten?
Am einfachsten im Batch wäre entweder ein Oneliner, der die Search.vbs aus dem ResKit aufruft (wenn es bei Dir eine LDAP-Grundlage gibt) und Dir die betroffenen Rechner raussucht:
For /f "tokens=2" %%i in ('CScript //nologo \\server\pfad\search.vbs "LDAP://dc=deine,dc=firma,dc=com" /Q /C:"&(ObjectCategory=computer)(operatingsystem=Windows 2000 Professional)(operatingsystemservicepack=service pack 2)"^| find " objects."') do Echo %%j
-oder-
Nutze die PsInfo.exe von www.sysinternals.com
for /f "tokens=3" %%i in ('psinfo -s 2^>nul^|find /i "Service Pack"') do Set /a SP=%%i
::in der Variablen %SP% landet dann also "2" bei SP2; "3" bei SP3 etc
-oder-
wenn die Clients die Rechte haben, geh über leknilk0815's Vorschlag mit HKLM
reg query HKLM\....\CurrentVersion
CSDVersion REG_SZ Service Pack 2 ---> so heißt es bei XP
Kann sein, das es bei Win2000 noch "...\CurrentVersion\BuildLab" hieß. Läßt sich vorher prüfen.
Grüße
Biber