Любой язык - [решено] WMIC получении версии файла. Win7 и XP разные результаты

Ответить
Аватара пользователя
gora

Любой язык - [решено] WMIC получении версии файла. Win7 и XP разные результаты

Сообщение gora »

Столкнулся с проблемой получения версии файла.

Код:

Код: Выделить всё

@Echo Off
Set texe=c:\Program Files\7-Zip\7z.exe
WMIC datafile where name='%texe:\=\\%' get version>verEXE.txt
Type verEXE.txt
Pause>Nul

На Win 7 имеем:

Код:

Код: Выделить всё

Version   
9.25.0.0

На Win XP имеем:

Код:

Код: Выделить всё

Version     
9.25 alpha

Т.о. читаются разные строки из ресурсов. На Win7 это числовой параметр FileVersion, а на XP его строковый аналог.

Можно заставить WMIC и на Win XP выводить числовой параметр FileVersion или есть другие варианты получения этого значения без применения сторонних утилит?
Аватара пользователя
Morpheus

Re: Любой язык - [решено] WMIC получении версии файла. Win7 и XP разные результаты

Сообщение Morpheus »

Цитата:



'filever.vbs



Код:

Код: Выделить всё

Set fso = WScript.CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
if objArgs.Count1 then WScript.Quit()
if NOT fso.FileExists(objArgs(0)) then WScript.Quit()
WScript.Echo fso.GetFileVersion(objArgs(0))

to call the script just use

cscript -nologo filever.vbs "c:\WINNT\system32\notepad.exe"



Batch files - Check file versions - MSFN Forum
Ответить

Вернуться в «Скриптовые языки администрирования Windows»