Wie finde ich die aktuell installierte Office Version per batch heraus?

2 Antworten

Per Powershell kannst du dir ein paar Komponenten ausgeben lassen:

Get-WmiObject win32_product | where{$_.Name -like "Office*"} | select Name,Version

Ist aber nicht wirklich elegant.

$version = 0
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $computer)

$reg.OpenSubKey('software\Microsoft\Office').GetSubKeyNames() |% {
    if ($_ -match '(\d+)\.') {
      if ([int]$matches[1] -gt $version) {
        $version = $matches[1]
      }
    }    
  }

Gibt dir in $version die Versionsnummer aus.

Woher ich das weiß:Hobby – Mehr als 7+ Jahre Erfahrung im Bereich der Informatik

Wenn du mit Batch den Eingabeinterpreter meinst dann nicht.

Per Powershell kann man sich ein Script basteln, dass einem die Eigenschaften der fraglichen Exe anzeigt.

Alles andere hängt eher von der Installation ab. Theoretisch kann man ja nach bestimmten Ordnernamen (z.B. Office16) suchen. Wird dann aber nutzlos, wenn die Installation angepasst wurde.

Obwohl.....mit "wmic product" kann das auch funktionieren. Muss man halt einen Filter setzen. Müsste man rumspielen.

biolaxy 
Fragesteller
 10.06.2020, 10:50

Das ist per Batch möglich:

@echo off
setlocal enabledelayedexpansion

for /f "tokens=3 delims=." %%a in ('reg query "HKEY_CLASSES_ROOT\Word.Application\CurVer"') do set reg=%%a

set /a i=0
for %%b in (11 12 14 15 16) do (
 if %%b == %reg% goto setver
 set /a i+=1
)

:setver
set /a n=0
for %%c in (2003 2007 2010 2013 "2016 or newer") do (
 if !n! == !i! set ver=%%c && goto endloop
 set /a n+=1
)

:endloop
echo Microsoft Version: %ver%
echo.
endlocal

:end
pause
0
qugart  10.06.2020, 11:36
@biolaxy

Da war ich mir eben gar nicht sicher, inwieweit die Registry-Einträge auch zwangsweise stimmen müssen. Obwohl....WMI wird auch eher nur auf die Registry zugreifen.

Aber auslesen kann man die natürlich.

Was mich halt dann fragen lässt, wiso du deine eigene Frage dann beantwortest.

0
biolaxy 
Fragesteller
 10.06.2020, 16:53
@qugart

naja, er zeigt die version aber nicht den genauen namen, also office 2016, jedoch nicht ob es sich um professional, home and business oder sonstiges handelt, das war eigentlich der schwerpunkt meiner frage

0