PDA

Показать полную графическую версию : определить версию MSOffice и Outlook


GromfBaenre@twitter
23-01-2015, 16:56
Здравствуйте, уважаемые форумчане.

Была у меня тема такая http://forum.oszone.net/thread-291593.html
Продвинулся в ней, но снова встал в лыжах на асфальт.


rem OUTLOOK CHECK
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=2013
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=2010
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=2007
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=2003
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\10.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=XP
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=2000
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=98
goto :MI
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\7.0\Outlook\InstallRoot 2>nul
if %errorlevel%==0 (
set OUTLOOK=97
goto :MI
)
set OUTLOOK=NOT Installed !!
:MI
rem OFFICE VERSION CHECK
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=2013
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=2010
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=2007
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=2003
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\10.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=XP
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=98
goto :MI2
)
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\7.0\Word\InstallRoot 2>nul
if %errorlevel%==0 (
set WORD=97
goto :MI2
)


Этот код позволяет мне определить версию офисного пакета и критичного для меня Outlook, но внезапно нашлись машины, которые имеют установленный офис, на которых этих ключей не существует. Какие ещё ветви реестра или методы получения версий вы могли бы мне посоветовать? VBS нельзя, утилиты Windows, требующие прав администратора можно, внешние утилиты можно.

Iska
23-01-2015, 19:51
VBS нельзя, »
Опять нельзя ;)?

iccup.platoon@vk
23-01-2015, 22:07
Един ли путь к Аутлуку и Офису?

Iska
23-01-2015, 23:13
iccup.platoon@vk, это звучит как «един ли путь к Красной площади и Москве»?

GromfBaenre@twitter
26-01-2015, 13:03
Да, VBS опять нельзя. На всех системах, где Офис в каком-то виде жив, может помочь этот ключ реестра "HKEY_CLASSES_ROOT\Word.Application\CurVer", но теперь это надо красиво парсить.

Можно поставить Office 2007, а Outlook купить коробкой, редкость, но возможная редкость.

GromfBaenre@twitter
26-01-2015, 17:01
Вот такой гадский вывод хочу распарсить

HKEY_CLASSES_ROOT\Word.Application\CurVer
(по умолчанию) REG_SZ Word.Application.15

iccup.platoon@vk
26-01-2015, 20:30
Iska, из больницы с телефона, со сломанной правой рукой (будучи правшой) очень трудно будет дать полноценный ответ, но я вижу реализацию посредством использования filever.exe
FOR /F "tokens=1* usebackq" %%a IN (`""filever.exe" /V "c:\windows\SkyTel.exe" | FIND "FileVersion""`) DO SET MyVar=%%a
Подстроить всё необходимое к нужным файлам - победа. Надеюсь на понимание =(

GromfBaenre@twitter
30-01-2015, 11:56
Последняя идея кончилась на том, что filever.exe находится в Support Tools CD и его работа в региональных версиях не гарантирована, хотя идея и живая.

cameron
30-01-2015, 12:05
WMIC?
wmic path Win32_Product WHERE (Caption like "%microsoft office%") get Name, Version
else
https://www.sepago.com/blog/2010/01/14/how-to-list-all-installed-applications-from-the-command-line




© OSzone.net 2001-2012