Office SP mit Batch auslesen und in .txt schreiben
Ich möchte wissen, ob und welches ServicePack für Office 2003 auf den Clients installiert ist.
Guten morgen,
wie im Vorwort schon beschrieben, möchte ich gerne das ServicePack von Office über ein Batch auslesen.
Leider konnte ich im Netz nur Skripts zur Office-Version finden.
Es handelt sich um XP-Pro-Clients.
Gibt es eine Möglichkeit das auszulesen? Wenn ja, wie muss die bat aussehen?
DANKE schonmal
Guten morgen,
wie im Vorwort schon beschrieben, möchte ich gerne das ServicePack von Office über ein Batch auslesen.
Leider konnte ich im Netz nur Skripts zur Office-Version finden.
Es handelt sich um XP-Pro-Clients.
Gibt es eine Möglichkeit das auszulesen? Wenn ja, wie muss die bat aussehen?
DANKE schonmal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 163461
Url: https://administrator.de/contentid/163461
Ausgedruckt am: 25.11.2024 um 10:11 Uhr
15 Kommentare
Neuester Kommentar
Aloha,
nun wie bei der Office-Version (HKLM_Software_Microsoft_Office_XX.0) lässt sich auch per registry die SP-Version auslesen, allerdings(!) nur indirekt über die ProductVersion (Office_XX.0_Common_ProductVersion) der letzte Block ist die Build-Version, die sich zwar je nach SP unterscheidet aber auch innerhalb des SP je nach Update unterscheiden kann.
Du müsstest also die Build-Versionen der SP-Versionen recherchieren, dann per batch (denke mal zum Punkt 1 hast du schon was gefunden, bisschen umbasteln geht schnell) die ausgelesene Version mit den vorgegebenen vergleichen, um die Aussage zu bekommen, welches SP installiert ist.
greetz André
nun wie bei der Office-Version (HKLM_Software_Microsoft_Office_XX.0) lässt sich auch per registry die SP-Version auslesen, allerdings(!) nur indirekt über die ProductVersion (Office_XX.0_Common_ProductVersion) der letzte Block ist die Build-Version, die sich zwar je nach SP unterscheidet aber auch innerhalb des SP je nach Update unterscheiden kann.
Du müsstest also die Build-Versionen der SP-Versionen recherchieren, dann per batch (denke mal zum Punkt 1 hast du schon was gefunden, bisschen umbasteln geht schnell) die ausgelesene Version mit den vorgegebenen vergleichen, um die Aussage zu bekommen, welches SP installiert ist.
greetz André
moin,
dein Problem ist zwar gelöst - ich würde dir aber trotzdem ein zwei Ansätze mitgeben wollen
"So" mußt du die allinclusive Datei mühsam abflücken.
Gruß
dein Problem ist zwar gelöst - ich würde dir aber trotzdem ein zwei Ansätze mitgeben wollen
- Ansatz 1:
echo auf %computername% ist das ServicePack 3 installiert!!! >> U:\SP3.txt
Auch wenn es dir "jetzt" noch eindeutig logisch erscheint, dass es sich um das Office 11 Sp3 handelt - irgendwann ist es das nicht mehr.else (echo %computername%--------SP3 ist nicht installiert--------%computername% >> u:\SP3.txt
Ist (in meinen Augen) auch suboptimalelse (echo %computername%--------SP3 ist nicht installiert--------%computername%>> u:\NO_Office_11_SP3.txt
Gäbe es - nachdem alle Rechner dieses Script abgearbeitet haben keine Datei NO_Office_11_SP3.txt - wüsstest du - alle im Boot."So" mußt du die allinclusive Datei mühsam abflücken.
- Ansatz 2:
- Ansatz 3:
Gruß
Aloha
greetz André
Ansatz 3:
Wie meinst du denn das genau?
Wie üblich perWie meinst du denn das genau?
net use U: \\DATEIAUSGABE
set RegKey=HKLM\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion
Reg query %RegKey% /v lastproduct|FIND /I "11.0.8173">NUL
IF NOT ERRORLEVEL 1 (echo %computername% hat Office2003 installiert > U:\%computername%.txt)
for /f "tokens=3" %%i in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion\ /v LastProduct') do set "ver=%%i"
IF "%ver%"=="11.0.8173.0" (echo auf %computername% ist das ServicePack 3 installiert!!! >> U:\SP3.txt) else (echo %computername%--------SP3 ist nicht installiert--------%computername% >> u:\SP3.txt)
net use u: /delete /yes
greetz André
Moin L4SCHI,
ich formuliere es mal um...
Das hier ist deine Variante mit zwei REG QUERY-Abfragen..
Was unterscheidet diese vom Ergebnis her von einer Variante mit einer REG QUERY-Abfrage wie dieser...???
Grüße
Biber
ich formuliere es mal um...
Das hier ist deine Variante mit zwei REG QUERY-Abfragen..
net use U: \\DATEIAUSGABE
set RegKey=HKLM\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion
Reg query %RegKey% /v lastproduct|FIND /I "11.0.8173">NUL
IF NOT ERRORLEVEL 1 (echo %computername% hat Office2003 installiert > U:\%computername%.txt)
for /f "tokens=3" %%i in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion\ /v LastProduct') do set "ver=%%i"
IF "%ver%"=="11.0.8173.0" (echo auf %computername% ist das ServicePack 3 installiert!!! >> U:\SP3.txt) else (echo %computername%--------SP3 ist nicht installiert--------%computername% >> u:\SP3.txt)
net use u: /delete /yes
Was unterscheidet diese vom Ergebnis her von einer Variante mit einer REG QUERY-Abfrage wie dieser...???
net use U: \\DATEIAUSGABE
set "RegKey=HKLM\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion"
set "VersID=11.0.8173.0" && REM VersionsID von SP3
Reg query %RegKey% /v lastproduct|FIND /I "%VersID%">NUL
IF NOT ERRORLEVEL 1 (
echo %computername% hat Office2003 installiert > U:\%computername%.txt)
echo auf %computername% ist das ServicePack 3 installiert!!! >> U:\SP3.txt
) else (
echo %computername%--------SP3 ist nicht installiert--------%computername% >> u:\SP3.txt
)
net use u: /delete /yes
Grüße
Biber
moin ihr zwei hybschen
@Biber so genau hab ich mir das gestern gar nicht angesehen - denn auf meinem Apfel will ich batch und dieses regquery Windowszeugs garnicht
(außerdem war der Pistazieneishakenmann ja auch schon da)
Obwohl ich - in der Firma - ja gerne mit reg gedöhnsfallerie und Hoppssassa werkel - ist mir das ungetestet in dem Zusammenhang so auch suspekt.
Ich hab sowas nämlich schonmal gebaut und dann erlebt, dass der d00feliche Office importkonverter sich in der Registry auch als Office ausgibt.
ACHTUNG - das ist für den genauen Fall ungetestetes Halbwissen! - ich vermute im speziellen fall wäre ein
Und das SP würde ich evtl. auch über die reste / das Logfile vom installer auslesen - existiert die LogDatei und steht da success drin.
Gruß
edit:
Wsus will man sich bei uns nicht leisten
ich gebs offen und ehrlich zu - meine Wsusse laufen auf irgendwelchen Servern in den Standorten auf jeweils Billich ungesicherten und ungespiegelten WD Black SATA 2 TB Platten
Der frisst so kein Brot und einen Mirror brauchts da nicht - Platte im Orkus - Wsus runter - neue Platte rein Wsus wieder drauf - im Startupscript ein wuauclt /reportnow reingedrückt und in 1 Woche ist alles wieder komplett da
@Biber so genau hab ich mir das gestern gar nicht angesehen - denn auf meinem Apfel will ich batch und dieses regquery Windowszeugs garnicht
(außerdem war der Pistazieneishakenmann ja auch schon da)
Obwohl ich - in der Firma - ja gerne mit reg gedöhnsfallerie und Hoppssassa werkel - ist mir das ungetestet in dem Zusammenhang so auch suspekt.
Ich hab sowas nämlich schonmal gebaut und dann erlebt, dass der d00feliche Office importkonverter sich in der Registry auch als Office ausgibt.
ACHTUNG - das ist für den genauen Fall ungetestetes Halbwissen! - ich vermute im speziellen fall wäre ein
if exist "%programfiles%\pfad\msaccess.exe"
sinniger - auch hier ich hab hier windowsfreie Zone und da bin ich stolz drauf Und das SP würde ich evtl. auch über die reste / das Logfile vom installer auslesen - existiert die LogDatei und steht da success drin.
Gruß
edit:
Wsus will man sich bei uns nicht leisten
ich gebs offen und ehrlich zu - meine Wsusse laufen auf irgendwelchen Servern in den Standorten auf jeweils Billich ungesicherten und ungespiegelten WD Black SATA 2 TB Platten
Der frisst so kein Brot und einen Mirror brauchts da nicht - Platte im Orkus - Wsus runter - neue Platte rein Wsus wieder drauf - im Startupscript ein wuauclt /reportnow reingedrückt und in 1 Woche ist alles wieder komplett da
Moin L4SCHI,
Ich bin der Meinung, dass in beiden REQ QUERY-Abfragen inhaltlich identisch abgefragt wird und es sich daher nicht im ersten Fall auf "Office 2003 installiert UND SP3 installiert" und im zweiten Fall auf irgendetwas anderes handelt könnte.
Deine Variante schritt-by-schritt am CMD-Prompt:
Grüße
Biber
Ich bin der Meinung, dass in beiden REQ QUERY-Abfragen inhaltlich identisch abgefragt wird und es sich daher nicht im ersten Fall auf "Office 2003 installiert UND SP3 installiert" und im zweiten Fall auf irgendetwas anderes handelt könnte.
Deine Variante schritt-by-schritt am CMD-Prompt:
>set RegKey=HKLM\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion
>reg query %regkey%
! REG.EXE VERSION 3.0
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion
LastProduct REG_SZ 11.0.8173.0
>reg query "%regkey%" /v LastProduct|find "11.0.8173.0"
LastProduct REG_SZ 11.0.8173.0
#### bis hier war es die erste REG QUERY
### ab hier die zweite wie im Schnipsel OHNE Variable %regkey%"
>reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion\ /v LastProduct
! REG.EXE VERSION 3.0
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\ProductVersion\
LastProduct REG_SZ 11.0.8173.0
Grüße
Biber