59 lines
1.9 KiB
Batchfile
59 lines
1.9 KiB
Batchfile
@Echo off
|
|
SET VCDIR=%~dp0
|
|
cd %VCDIR%\..\..\..
|
|
SET GNUPARENTDIR=%cd%
|
|
|
|
"%windir%\system32\reg.exe" query "HKU\S-1-5-19" >nul 2>&1 && (
|
|
goto :checkok
|
|
) || (
|
|
echo -------
|
|
echo *** WARNING ***
|
|
echo -------
|
|
echo.
|
|
echo.
|
|
echo ADMINISTRATOR PRIVILEGES NOT DETECTED!
|
|
echo ______________________________________
|
|
echo.
|
|
echo This script must be able to run with administrator
|
|
echo privileges.
|
|
echo.
|
|
echo To do so, right click on this script and select 'Run As Administrator'
|
|
echo.
|
|
echo.
|
|
echo Press any key to exit...
|
|
pause >nul
|
|
goto :eof
|
|
)
|
|
|
|
:checkok
|
|
|
|
if exist "%temp%\list0.txt" (del "%temp%\list0.txt")
|
|
if exist "%temp%\list1.txt" (del "%temp%\list1.txt")
|
|
if exist "%temp%\list2.txt" (del "%temp%\list2.txt")
|
|
|
|
echo Uninstalling existing Visual C++ 2005 x86 Runtime Redistributables
|
|
echo (please wait as this process may take a few moments)
|
|
wmic product where "name like 'Microsoft Visual C++ 2005 Redistributable%%'" get name >>"%temp%\list0.txt"
|
|
for /f "skip=1 delims=" %%a in ('type "%temp%\list0.txt"') do (echo "%%a")
|
|
|
|
echo Converting ucs-2 encoded list of installed products to utf-8
|
|
%GNUPARENTDIR%\GNU\iconv.exe -f UCS-2 -t UTF-8 %temp%\list0.txt > %temp%\list1.txt
|
|
echo CleanUp some errors in the list file
|
|
%GNUPARENTDIR%\GNU\sed.exe -e "s/\s*$//g" %temp%\list1.txt > %temp%\list2.txt
|
|
%GNUPARENTDIR%\GNU\sed.exe -e "/x64/d" %temp%\list2.txt > %temp%\list0.txt
|
|
|
|
echo start uninstalling old versions of product
|
|
for /f "skip=1 delims=" %%a in ('type "%temp%\list0.txt"') do (echo "%%a")
|
|
for /f "skip=1 delims=" %%a in ('type "%temp%\list0.txt"') do (wmic product where "name like '%%a%'" call uninstall /nointeractive)
|
|
|
|
echo CleanUp Tempory files
|
|
del "%temp%\list0.txt"
|
|
del "%temp%\list1.txt"
|
|
del "%temp%\list2.txt"
|
|
|
|
echo Install latest version of Visual C++ 2005 x86 Runtime Redistributables
|
|
echo (please wait as this process may take a few moments)
|
|
"%windir%\system32\msiexec.exe" /i "%VCDIR%\vcredist.msi" /q transforms="%VCDIR%\2k5-x86.mst"
|
|
|
|
:eof
|