Prerequisite updates for Internet Explorer 11

  1 @echo off
  2 color 0a
  3 title Prerequisite updates for Internet Explorer 11
  4 
  5 SETLOCAL ENABLEEXTENSIONS
  6 SETLOCAL ENABLEDELAYEDEXPANSION
  7 
  8 set CONFIG_ORIGIN=config.ini
  9 set CONFIG_SWAP=.config.swp
 10 
 11 set /a TYPE=64
 12 if "%ProgramFiles(x86)%" equ "" (
 13     set /a TYPE=32
 14 )
 15 
 16 choice /c "Yn" /cs /m "Install Prerequisite updates."
 17 set /a PREREQUISITE=-1
 18 if %ERRORLEVEL% equ 1 (
 19     set /a PREREQUISITE=0
 20 )
 21 
 22 choice /c "Yn" /cs /m "Install Optional updates."
 23 set /a OPTIONAL=-1
 24 if %ERRORLEVEL% equ 1 (
 25     set /a OPTIONAL=0
 26 )
 27 
 28 if %PREREQUISITE% neq 0 (
 29     if %OPTIONAL% neq 0 (
 30         goto :BYE
 31     )
 32 )
 33 
 34 cls
 35 echo. System type: %TYPE%-bit
 36 if %PREREQUISITE% equ 0 (
 37     echo. Install Prerequisite updates.
 38 )
 39 if %OPTIONAL% equ 0 (
 40     echo. Install Optional updates.
 41 )
 42 
 43 choice /c "Yn" /cs /m "Are you ready?"
 44 if %ERRORLEVEL% neq 1 (
 45     goto :BYE
 46 )
 47 
 48 cls
 49 set /a TOTAL_INSTALL=0
 50 if %PREREQUISITE% equ 0 (
 51     echo. Installing: Prerequisite updates.
 52     call :PROC_INSTALL "[PREREQUISITE_UPDATES_%TYPE%]"
 53 )
 54 if %OPTIONAL% equ 0 (
 55     echo. Installing: Optional updates.
 56     call :PROC_INSTALL "[OPTIONAL_UPDATES_%TYPE%]"
 57 )
 58 
 59 :COMPLETED
 60 rem cls
 61 if %TOTAL_INSTALL% gtr 0 (
 62     echo. Installation complete.
 63     echo. You must restart your computer for the updates to take effect.
 64     choice /c "Yn" /cs /m "Restart Now?"
 65     if !ERRORLEVEL! equ 1 (
 66         if exist "%CONFIG_SWAP%" (
 67             del /q "%CONFIG_SWAP%"
 68         )
 69         shutdown /r /t 0
 70         exit
 71     )
 72 ) else (
 73     echo. No updates installed.
 74 )
 75 goto :BYE
 76 
 77 :PROC_INSTALL
 78 set CONFIG_LABEL=%~1
 79 
 80 cd . > "%CONFIG_SWAP%"
 81 
 82 for /f "usebackq eol=# tokens=*" %%i in ("%CONFIG_ORIGIN%") do (
 83     >> "%CONFIG_SWAP%" echo %%i
 84 )
 85 
 86 set /a LINE_NUMBER=0
 87 for /f "usebackq tokens=*" %%i in ("%CONFIG_SWAP%") do (
 88     set /a LINE_NUMBER+=1
 89     if "%%i" equ "%CONFIG_LABEL%" (
 90         call :INSTALL_PART_2
 91         goto :EOF
 92     )
 93 )
 94 echo. Not found %CONFIG_LABEL%.
 95 goto :EOF
 96 
 97 :INSTALL_PART_2
 98 for /f "usebackq skip=%LINE_NUMBER% tokens=*" %%i in ("%CONFIG_SWAP%") do (
 99     set CURRENT=%%i
100     if "!CURRENT:~0,1!" equ "[" (
101         goto :EOF
102     )
103     echo Installing [%%i].
104     wusa "%%i" /quiet /norestart
105     set /a TOTAL_INSTALL+=1
106 )
107 goto :EOF
108 
109 :BYE
110 echo. Goodbye!
111 ping /n 3 127.0.0.1 > nul
112 if exist "%CONFIG_SWAP%" (
113     del /q "%CONFIG_SWAP%"
114 )
115 exit

 

 1 # Prerequisite updates 32-bit
 2 [PREREQUISITE_UPDATES_32]
 3 Prerequisite updates\windows6.1-kb2533623-x86.msu
 4 Prerequisite updates\windows6.1-kb2670838-x86.msu
 5 Prerequisite updates\windows6.1-kb2729094-v2-x86.msu
 6 Prerequisite updates\windows6.1-kb2731771-x86.msu
 7 Prerequisite updates\windows6.1-kb2786081-x86.msu
 8 Prerequisite updates\windows6.1-kb2834140-v2-x86.msu
 9 
10 # Prerequisite updates 64-bit
11 [PREREQUISITE_UPDATES_64]
12 Prerequisite updates\windows6.1-kb2533623-x64.msu
13 Prerequisite updates\windows6.1-kb2670838-x64.msu
14 Prerequisite updates\windows6.1-kb2729094-v2-x64.msu
15 Prerequisite updates\windows6.1-kb2731771-x64.msu
16 Prerequisite updates\windows6.1-kb2786081-x64.msu
17 Prerequisite updates\windows6.1-kb2834140-v2-x64.msu
18 
19 # Optional updates 32-bit
20 [OPTIONAL_UPDATES_32]
21 Optional updates\windows6.1-kb2639308-x86.msu
22 Optional updates\windows6.1-kb2882822-x86.msu
23 Optional updates\windows6.1-kb2888049-x86.msu
24 
25 # Optional updates 64-bit
26 [OPTIONAL_UPDATES_64]
27 Optional updates\windows6.1-kb2639308-x64.msu
28 Optional updates\windows6.1-kb2882822-x64.msu
29 Optional updates\windows6.1-kb2888049-x64.msu

附件1

posted @ 2019-05-10 01:40  RMS365  阅读(...)  评论(...编辑  收藏