Powershell: FileVersion zwracany przez Windows Explorer jest inny niż przez powershell!

30-Gru-2014

Polecenie:

Get-Item C:\windows\system32\vbscript.dll | select -expand VersionInfo | select ProductVersion

zwraca:

ProductVersion
————–
5.8.7601.16978

Tymczasem eksplorator plików we właściwościach pokazuje:

FileVersion

Kto ma rację!? Tym bardziej, że czasami (dla większości plików) obie wersje się zgadzają!

Otóż WMI i File Explorer w Windows budują wersję pliku w oparciu o wersję produktu, w skład którego ten plik wchodzi. Lepiej więc pytając powershellem o wersję plików pytać o wersję produktu. Można to zrobić następującą instrukcją:

Get-Item C:\windows\system32\vbscript.dll | select -expand VersionInfo | foreach { „$($_.ProductMajorPart).$($_.ProductMinorPart).$($_.ProductBuildPart).$($_.ProductPrivatePart)”}

Gotowe! Oto wynik:

ProductVersion
————–
5.8.7601.16978

 

Dodaj komentarz:

Autor: Rafał Kraik