Kontrol af version af program
Hvordan kan jeg fra en commandline kontrollere om versionen af et program er den rigtige?Baggrund:
Jeg har et program jeg installerer fra et domain loginscript. Hvis brugeren har programmet installeret så skal der kun installeres konfiguration. Dette virker fint, men nu skal programmet opgraderes, derfor skal scriptet også kontrollere om det er den nye eller gamle version der er installeret.
Programmet skal afinstalleres inden den nye version installerer.
Hvis jeg i windows højre klikker på filen pview.exe kan jeg i properties se hvilken version det er. Det er denne oplysning jeg gerne vil henytte.
Et alternativ kunne være at checke på fildato, men det kan jeg heller ikke finde ud af.
Jeg skal måske vile nævne at scriptet skal kunne virke på både windows NT og 2000.
Her er mit batch script:
@echo off
if not exist "c:\program files\ptc\productview\pview.exe" goto install
! if version is old then goto uninstall
goto config
:uninstall
echo uninstall old ProductView. Please wait
msiexec /x G:\install_lib\programmer\cad\ProductView\silent-installation\productView.msi /q
rd "C:\Program Files\PTC\ProductView" /s /q
:install
echo installation af ProductView. Please wait
msiexec /i G:\install_lib\programmer\cad\ProductView\silent-installation\productView.msi /q INSTALLDIR="c:\program files\ptc\productview" ALLUSERS=1
:config
echo copy config. Please wait
SET COPYCMD=/Y
xcopy /S /Q G:\install_lib\programmer\cad\ProductView\silent-installation\settings\*.* "c:\program files\ptc\productview\*.*"
regedit /s "c:\program files\ptc\productview\pvconfig.reg"
:end
exit
