Bat脚本自动卸载软件-静默执行
通过Bat脚本卸载软件,原理是得到某软件的ProductCode,然后通过MsiExec.exe命令卸载软件,下面是卸载一个产品的基本代码示例:
set ML4.0HF4Name=Product4.0HF4
set ML4.0HF4ProduceCode=420F1D5E-A797-4FB8-B656-DAC18FAB86FE ::Product4.0HF4
echo %ML4.0HF4Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0HF4ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0HF4Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0HF4Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0HF4Name% End %date% %time%>>%logfile%
以下代码是一个完全的示例,包含所有过程,比较繁琐,有日志功能;删除产品文件夹功能
@echo off :: base parameters
set logfile=C:\UnInstallProductLog.txt
::set datetime=%date% %time%
set ProductFolder="C:\Program Files\Product" :: Name and ProductCode
set ML4.0SP1Name=Product4.0SP1
set ML4.0SP1ProduceCode=AD66CA3A-BAA3-45E4-B7D9-22BB2B8775D1 set MLDB4.0SP1Name=ProductDababase4.0SP1
set MLDB4.0SP1ProduceCode=C9823940-D109-43F2-81F7-B76C7B923DE3 set ML4.0HF4Name=Product4.0HF4
set ML4.0HF4ProduceCode=420F1D5E-A797-4FB8-B656-DAC18FAB86FE set MLDB4.0HF4Name=ProductDababase4.0HF4
set MLDB4.0HF4ProduceCode=F4410B3A-6AB8-4E63-9716-41B11693A29B set ML4.0HF3Name=Product4.0HF3
set ML4.0HF3ProduceCode=F943817E-793F-4457-A449-BE4BCEFB5114 set MLDB4.0HF3Name=ProductDababase4.0HF3
set MLDB4.0HF3ProduceCode=67F3B4E7-998B-4E88-B6DE-E84F18F9A0E2 set ML4.0HF2Name=Product4.0HF2
set ML4.0HF2ProduceCode=4D840F90-B500-4279-9768-A1339E9B75B0 set MLDB4.0HF2Name=ProductDababase4.0HF2
set MLDB4.0HF2ProduceCode=40632512-8D09-4A09-BF6C-F26EDD87773C set ML4.0HF1Name=Product4.0HF1
set ML4.0HF1ProduceCode=DE09302B-9B90-4F66-9B2A-13C67A29CCAB set ML4.0Name=Product4.0
set ML4.0ProduceCode=176C5F1C-8E45-41CD-B42D-562E8D4870C8 set DCMedia4.0Name=DisplayControllerMedia4.0
set DCMedia4.0ProductCode=F27974D3-A978-4112-9B1F-25D7D425A607 set MLDB4.0Name=ProductDatabase4.0
set MLDB4.0ProductCode=871760A0-BC0F-4591-9515-A21A12D6DF58 set ARAnimation4.0Name=AspersRouletteAnimations4.0
set ARAnimation4.0ProductCode=9845E4C0-5639-44F8-849C-B79D2182892C set BRAnimation4.0Name=BlankRouletteAnimations4.0
set BRAnimation4.0ProductCode=DE3CC285-FFE5-4A3F-9DFC-6AD8E0F2BDAF set GCRAnimation4.0Name=GCasinoRouletteAnimations4.0
set GCRAnimation4.0ProductCode=A2F491B3-23AD-4684-87E4-194C74B8231E set GRAnimation4.0Name=GrosvenorRouletteAnimations4.0
set GRAnimation4.0ProductCode=8962F6E6-B982-48CB-81EE-8A1C369A18BE set FTPServer4.0Name=FTPServer4.0
set FTPServer4.0ProductCode=750381B9-BC1C-4308-93D9-9BEC409C5733 ::Machine IP Information
echo Machine IP Information:>>%logfile%
ipconfig>>%logfile% :: Start Execute
echo Uninstall Product Start...%date% %time%>>%logfile% ::Product4.0SP1
echo %ML4.0SP1Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0SP1ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0SP1Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0SP1Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0SP1Name% End %date% %time%>>%logfile% ::ProductDababase4.0SP1
echo %MLDB4.0SP1Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%MLDB4.0SP1ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %MLDB4.0SP1Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %MLDB4.0SP1Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %MLDB4.0SP1Name% End %date% %time%>>%logfile% ::Product4.0HF4
echo %ML4.0HF4Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0HF4ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0HF4Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0HF4Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0HF4Name% End %date% %time%>>%logfile% ::ProductDababase4.0HF4
echo %MLDB4.0HF4Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%MLDB4.0HF4ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %MLDB4.0HF4Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %MLDB4.0HF4Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %MLDB4.0HF4Name% End %date% %time%>>%logfile% ::Product4.0HF3
echo %ML4.0HF3Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0HF3ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0HF3Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0HF3Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0HF3Name% End %date% %time%>>%logfile% ::ProductDababase4.0HF3
echo %MLDB4.0HF3Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%MLDB4.0HF3ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %MLDB4.0HF3Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %MLDB4.0HF3Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %MLDB4.0HF3Name% End %date% %time%>>%logfile% ::Product4.0HF2
echo %ML4.0HF2Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0HF2ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0HF2Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0HF2Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0HF2Name% End %date% %time%>>%logfile% ::ProductDababase4.0HF2
echo %MLDB4.0HF2Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%MLDB4.0HF2ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %MLDB4.0HF2Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %MLDB4.0HF2Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %MLDB4.0HF2Name% End %date% %time%>>%logfile% ::Product4.0HF1
echo %ML4.0HF1Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0HF1ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0HF1Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0HF1Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0HF1Name% End %date% %time%>>%logfile% ::Product4.0
echo %ML4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ML4.0ProduceCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ML4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ML4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ML4.0Name% End %date% %time%>>%logfile% ::DisplayControllerMedia4.0
echo %DCMedia4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%DCMedia4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %DCMedia4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %DCMedia4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %DCMedia4.0Name% End %date% %time%>>%logfile% ::ProductDatabase4.0
echo %MLDB4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%MLDB4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %MLDB4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %MLDB4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %MLDB4.0Name% End %date% %time%>>%logfile% ::AspersRouletteAnimations4.0
echo %ARAnimation4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%ARAnimation4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %ARAnimation4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %ARAnimation4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %ARAnimation4.0Name% End %date% %time%>>%logfile% ::BlankRouletteAnimations4.0
echo %BRAnimation4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%BRAnimation4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %BRAnimation4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %BRAnimation4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %BRAnimation4.0Name% End %date% %time%>>%logfile% ::GCasinoRouletteAnimations4.0
echo %GCRAnimation4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%GCRAnimation4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %GCRAnimation4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %GCRAnimation4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %GCRAnimation4.0Name% End %date% %time%>>%logfile% ::GrosvenorRouletteAnimations4.0
echo %GRAnimation4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%GRAnimation4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %GRAnimation4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %GRAnimation4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %GRAnimation4.0Name% End %date% %time%>>%logfile% ::FTPServer4.0
echo %FTPServer4.0Name% Start...%date% %time%>>%logfile%
MsiExec.exe /X{%FTPServer4.0ProductCode%} /qn /Lwme+ %logfile%
IF %ERRORLEVEL% EQU 0 echo Uninstall %FTPServer4.0Name% Successfull
IF %ERRORLEVEL% NEQ 0 IF %ERRORLEVEL% NEQ 1605 echo Uninstall %FTPServer4.0Name% Failed, ERRORLEVEL:%ERRORLEVEL%.
echo ERRORLEVEL:%ERRORLEVEL%>>%logfile%
echo %FTPServer4.0Name% End %date% %time%>>%logfile% :: End Execute
echo Uninstall Product End%date% %time%>>%logfile% ::Delete ProductFolder
rd %ProductFolder% /s /q || rem
IF %ERRORLEVEL% EQU 0 echo Delete %ProductFolder% Folder Successfull
IF %ERRORLEVEL% NEQ 0 echo Delete %ProductFolder% Folder Failed, ERRORLEVEL:%ERRORLEVEL%. pause
Bat脚本自动卸载软件-静默执行的更多相关文章
- 服务器A制定计划任务,BAT脚本自动备份oracle数据文件,拷贝至服务器B的共享目录。
运行环境:windows server 2008 R2 目的:在数据库服务器A进行数据库自动备份,并且保留5天. 为了安全,需要在web应用服务器B进行数据库的冗余备份,建立双保险.(保留15天) A ...
- C#_自动化测试 (四) 自动卸载软件
在平常的测试工作中,经常要安装软件,卸载软件, 即繁琐又累. 安装和卸载完全可以做成自动化. 安装软件我们可以通过自动化框架,自动点击Next,来自动安装. 卸载软件我们可以通过msiexec命 ...
- bat脚本自动备份文件资源
1:xcopy命令进行文件拷贝 2:脚本内容: <span style="font-size:18px;">@echo off color 0D MODE con: ...
- python(或BAT脚本)自动执行adb shell以后的命令
最近在用python做一个小工具,自动执行一些adb shell命令,使用subprocess.Popen来实现. 不过遇到个问题就是执行adb shell后就无法执行后面adb shell里的命 ...
- bat脚本自动安装Jmeter&Jdk
一句话能解决的事情,绝对不要写一篇文章:一篇文章能解决的事情,绝对不要使用各种工具:一个工具能解决的事情,绝对不要跑东跑西…… 文章主要介绍脚本如何下载.安装.配置Jmeter&Jdk. 不多 ...
- Windows下bat脚本自动发邮件
摘要:说明:很多木马会利用自身的程序截取系统敏感文件或信息发往指定的邮箱,而blat并不是木马,它小巧却有强大的发邮件功能,可不要用它做违法事,感觉和木马功能有一拼!下面先看个具体的实例(在blat同 ...
- Ubuntu 软件卸载脚本(卸载软件 + 移除配置文件 + 移除依赖项)
#!/bin/bash function z-apt-uninstall() { if [ ! $1 ] then echo "z-apt-uninstall error: software ...
- dpkg:处理 xxx (--configure)时出错解决办法,也可用于卸载软件出错的情况
dpkg:处理 xxx (--configure)时出错解决办法今早安装nfs时出现问题,找到该文,备份留用.然后在网上找到了这片文章,按步骤走就解决了,中间会提示自动卸载一下,执行那个命令就好了,我 ...
- BAT脚本如何自动执行 adb shell 以后的命令
@echo off echo su > temp.txt echo 其它命令 >> temp.txt adb shell < temp.txt del temp.txt 求问 ...
随机推荐
- asp.net使用qq邮箱发送邮件
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...
- 如何使用mybatis对mysql数据库进行操作,batis的增删改查
1.先下载Mybatis和mysql connecrt的jar包 下载地址: 链接: https://pan.baidu.com/s/1kVFfF8N 密码: ypkb 导入jar包,maven的话可 ...
- C#开发移动应用系列(4.调用系统应用,以及第三方应用(调用与被调用))
前言 上篇文章地址: C#开发移动应用系列(1.环境搭建) C#开发移动应用系列(2.使用WebView搭建WebApp应用) C#开发移动应用系列(3.使用照相机扫描二维码+各种基础知识) 写完这篇 ...
- 怎样禁止手机app 中页面有时候会把数字当做电话号码,从而自动进行打电话功能
想要禁止这种功能,只需要给头不加一个meta标签就可以了, <meta name="format-detection" content="telephone=no& ...
- js 设置下拉框的默认值
设置下拉框的默认值,直接在option中增加selected就可以了.但是现在要使用JS来设置它的默认值,代码如下: <select name="aaa" id=" ...
- POJ 3342 Party at Hali-Bula / HDU 2412 Party at Hali-Bula / UVAlive 3794 Party at Hali-Bula / UVA 1220 Party at Hali-Bula(树型动态规划)
POJ 3342 Party at Hali-Bula / HDU 2412 Party at Hali-Bula / UVAlive 3794 Party at Hali-Bula / UVA 12 ...
- socket 异步通信的一些问题
socket通信在使用时被封装很简单,像操作文件一样简单,正是因为简单里面好多细节需要深入研究一下. windows下通信有select和iocp方式,select是传统方式,在socket里使用re ...
- C# 实现语音听写
本文系原创,禁止转载. 分享如何使用c#对接科大讯飞语音听写服务,简单高效地实现语音听写. 实现语音听写主要分为录音和语音识别两部分:录音是指获取设备声卡端口的音频数据并将之保存为音频文件,语音识别就 ...
- 51nod_1627:瞬间移动
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1627 还是杨辉三角~ #include<bits/st ...
- java数组排序(冒泡、直排)反转
package lianxi; public class maopao { public static void main(String[] args){ int[] i=new int[]{45,6 ...