|
用WINDOS200 XP 03 (WIN7 、WIN8一直没用,所以没写后半部份)
主要用于安装微软系统的三大类补丁 ( KB Q q)和IE 升级。及清理
读取注册表的补丁注册信息,智能安装, 不会,像网上流传的那些,不管有没有一顿乱敲 见东西就安。
好处,不论能不能通过微软反盗版认证, 都能升级到IE8 ,并流畅运行。
使用方法:
将要安装的补丁, 和IE 7 IE 8 升级程序放在 批处理同目录下。 它自动读取注册表判定IE 版本,和未安装的补丁。
(如果你是WIN7,你可以手动修改下面的批处理加上IE9 10什么的)
注意事项:
IE6升IE 8 要运行两次(第一次它会优先升级IE主程序然后重启电脑,也就是说真正的补丁你还一个都没有敲上去)
经验分享:
IE 6 升级到IE 8 时, 一定要先安装IE 7 别直截升IE8。不然使用起来你就会知道什么叫“用户体验” 什么理由我说不出,但用着顺不顺心我自己心里清楚。
(把IE7 IE8都放在批处理同目录它会知道选后顺序)
IE 8安装后 设置时,没通过反盗版认证的系统,不要选择快速设置,要选手动设置,最好别勾选自动更新,你懂的。
系统装过“数字安全卫士”的,建议别升IE8 ,你也懂的。(不把IE升级包丢在补丁目录或本文件目录就不会升级)
本批处理是优先升级IE主程序.低版本IE时打的补丁可能不适应于高版本IE
例:IE6的kb2586448不可能打到IE8上
因为是读取注册表安装的所以,存在的补丁没打上,一般就是版本不对或者根本不须要安装的。
以下是批处理,
在子程序跳转上进行了一点点设定。为什么。。为什么。。。因为我无聊 ^0^- @echo off&color 2f&set "title=title 系统补丁自安装程序BY_x9tian"
- setlocal enabledelayedexpansion
- !title!
- pushd %~dp0
- dir *-*-*.exe >nul 2>nul&&goto %title:~-8,2%
- set /p lg=目录不存在系统补丁,请把补丁文件夹拖放到本窗口-->
- set lg=!lg:"=!
- >"!lg!\%~nx0" type "%~0"
- start /b "" "!lg!\%~nx0"
- exit
- :Y_
- for /f "tokens=3" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer" /v Version ^|more +4') do set "version=%%i"
- call :%title:~-3,1%e%version:~0,1%
- call :%title:~0,1%f%title:~-3,1%%title:~-6,1%
- if exist ielist.dat (
- >>list.dat type ielist.dat&&del /a/q ielist.dat
- )
- ::kb
- rem 查找KB类系统补丁
- for /f %%i in ('dir /a-d/b/o:n *-kb*-*.exe 2^>nul^|findstr /v /G:list.dat') do (
- echo.开始安装%%i..
- %%i -norestart -quiet -overwriteoem
- )
- rem 查找Q/q类补丁
- for /f %%i in ('dir /a-d/b/o:n *-Q*-*.exe 2^>nul^|findstr /v /G:list.dat') do (
- echo.开始安装Q类补丁%%i...
- %%i -Q -o -Z
- )
- echo.&echo.以上为本次安装补丁...
- echo.&echo.======您可能遇到以下情况======
- echo.&echo.多次运行本程序却有几个补丁始终打不上
- echo.&echo. A: 私自修改批处理添加了-nobackup参数.
- echo. 某些微软增值业务补丁本身不支持此参数造成补丁无法打成功
- echo.&echo. B: IE补丁与IE版本不合,请删除重下载.
- echo. 本批处理是优先升级IE主程序.低版本IE时打的补丁可能不适应于高版本IE
- echo. 例:IE6的kb2586448不能打到IE8上.
- pause
- :clear
- rem 清理为未带NOBACKUP参数 残留的备份文件.
- for /f %%i in ('dir /ad/b %windir%\$*$ ^|find /v "$hf_mig$"') do (
- del /a/q/f/s %windir%\%%i\*.*
- rd /s /q "%windir%\%%i"
- )
- del /a/q list.dat >nul 2>nul %windir%\kb*.log %windir%\Q*.log
- exit
- :tfix
- (
- for /f "tokens=*" %%i in ('reg query "hklm\software\microsoft\windows NT\currentversion\hotfix" ^|more +4') do (
- for /f "delims=-_" %%a in ("%%~nxi") do echo.%%a
- )
- )>list.dat
- goto :eof
- :ie6
- if exist IE7-WindowsXP-%PROCESSOR_ARCHITECTURE%-chs.exe (
- echo. 检测到您的系统存再IE升级程序,将开始升级IE并重启机打补丁&echo.&pause
- echo.&echo. 正在安装IE7...
- if exist IE8-WindowsXP-%PROCESSOR_ARCHITECTURE%-CHS.exe (
- IE7-WindowsXP-%PROCESSOR_ARCHITECTURE%-chs.exe /passive /update-no /norestart
- dir /a-d/b ie6-*.exe ie7-*.exe>ielist.dat
- echo.&echo.安装IE8...
- IE8-WindowsXP-%PROCESSOR_ARCHITECTURE%-CHS.exe/passive /update-no /forcerestart
- ) else (
- IE7-WindowsXP-%PROCESSOR_ARCHITECTURE%-chs.exe /passive /update-no /forcerestart
- )
- )
- goto :eof
- :ie7
- if exist IE8-WindowsXP-%PROCESSOR_ARCHITECTURE%-CHS.exe (
- echo.&echo.屏敝IE6/IE7及其更新补丁...
- dir /a-d/b ie6-*.exe ie7-*.exe>ielist.dat
- echo. 检测到您的系统存再IE升级程序,将开始升级IE并重启机打补丁&echo.&pause
- IE8-WindowsXP-%PROCESSOR_ARCHITECTURE%-CHS.exe /passive /update-no /forcerestart
- )
- goto :eof
- :ie8
- ::为NT6系统留的坑,有带完善.
- goto :eof
复制代码 IE7安装程序下载
IE8安装程下载
[ 本帖最后由 x9tian 于 2012-11-9 22:34 编辑 ] |
|