从“控制面板”中添加/删除程序很简单,但是当安装了多个产品时,这是单击-单击-点击的过程,请等待产品1卸载,这可能需要一段时间,然后单击#2,以此类推。对于一台机器来说这没关系,但是当有几台机器时,这确实很痛苦。
#1 楼
我用批处理文件来做。您可以将以下代码单行编写,也可以通过更新位置来创建路径/安装程序循环。SET INSTALL_PATH=\myNetworkShare\InstallerLocation\
MSIEXEC.EXE /X %INSTALL_PATH%\setup.msi /QB
以下知识库文章提供了一个良好的起点位置:
使用批处理文件安装/卸载
静默卸载
编辑:只是为了澄清,使用第二篇文章,您可以使用GUID ,因此您无需参考原始安装程序。我想一种方法对您的脚本/批处理文件更有意义
评论
这是我们使用无提示卸载的方法
– Mapperz♦
13年1月28日在19:11
#2 楼
此食谱对我们有用,是希比马答案的扩展版本。也许有更好的方法,但这对我们现在来说已经足够好了-从HowTo中获取Windows注册表产品代码:静默卸载ArcGIS产品并将其提供给msiexec:msiexec /x %product_code% /qn /passive
删除
/passive
使其以静默方式运行(没有弹出进度窗口)。我将uninstall-ALL-ArcGIS-products.bat放在一起,从8.2到10.3.1删除了所有ArcGIS产品。 。 (10.3+列表不完整,但比上述Esri KB文章更完整)。它没有智能,也没有测试来查看是否确实存在某种东西,只是蛮力地贯穿了列表。它仅适用于首先使用msi安装程序的程序,因此不包括ArcPad之类的内容。
更针对性和灵活性的方法是利用Windows Management Instrumentation Command-线(WMIC)。
卸载单个命名程序:
wmic product where ^
"name = 'ArcGIS 10.1 SP1 for Desktop Background Geoprocessing (64-bit)'" ^
call Uninstall
一次性卸载带有ArcGIS标题的所有内容(请注意古怪的通配符语法) :
wmic product where ^
"name like '%ArcGIS%'" ^
call Uninstall
WMIC摘录中许多有用的示例,例如列出已安装的程序:
wmic product where "Name like '%ArcGIS%'" ^
get Name, IdentifyingNumber, Version
wmic product where "Vendor like '%Environmental Systems Research Institute%'" ^
get Name, Version, InstallDate, InstallLocation
I之所以选择不使用wmic,是因为查询需要很长的时间才能返回(很容易想到它已被挂起,在空白且不闪烁的shell提示符下等待了数十秒钟。这可能不是)。
Python有点独立。例如,如果在ArcGIS中安装了python,则卸载ArcGIS也将卸载python,但是添加了后缀的所有第3方模块都将被抛在后面。复制并粘贴而不建议您不加理解):
删除磁盘上该版本的所有Python文件:
rd /s/q C:\Python27
使用REG删除注册表项:
reg delete HKLM\SOFTWARE\Python\PythonCore.7 /f
reg delete HKCU\SOFTWARE\Python\PythonCore.7 /f
如果没有在通常位置安装python,则可以使用
reg query HKLM\SOFTWARE\Python /s
检索它的位置,并注意InstallPath
。提出了一种简单的(可编写脚本的)方式来执行此操作,而无需安装更多工具。也就是说,在Windows中轻松地编辑PATH环境变量对于所述工具来说是一个很好的资源。还可能需要
assoc
和ftype
来检查并可能纠正文件关联:显示关联:
assoc .py
.py=Python.File
ftype Python.File
Python.File="C:\Python26\python.exe" "%1" %*
删除关联:
assoc .py=
ftype Python.File=
(由@ dash-tom-提供)爆炸堆栈溢出,同时检查
.pyc
,。pyw
)#3 楼
在卸载ArcGIS之前,请确保卸载所有第3方arcgis扩展。通常,第三方(un)安装程序会先检查以确保存在适当的Esri库,然后再进行安装-或卸载!例如,假设您有一个为10.0编写的第三方Arcmap扩展,然后卸载ArcGIS 10.0,然后安装ArcGIS 10.1。当您升级到10.1时,第3方扩展程序可能会起作用,也可能无法起作用。无论如何,当您尝试卸载10.0版本的扩展程序时,卸载程序都会抱怨缺少所需的库(换句话说,就是10.0库。)
痛苦的解决方案是:卸载10.1,重新安装10.0,卸载第三方扩展,卸载10.0,重新安装10.1。
我尝试了其他解决方案,例如ccleaner,但效果有限。如果有一种更可靠,更轻松的方法,我当然想听听。
评论
柯克(Kirk),您能说出第三方扩展名吗?我想测试一下msiexec / x%product_code%路由是否避开了这种情况。
–马特·威尔基
13年1月28日在19:26
我可以恳求第五名吗?
– Kirk Kuykendall
13年1月28日在19:28
我不确定,但是我认为数据互操作性扩展也属于此类别。确保先卸载它。
–blah238
13年1月28日在19:55
terrago,ettools。
–布拉德·尼索姆(Brad Nesom)
13年1月28日在20:19
我知道要安装什么第三方工具的最简单方法是进入Categories.exe,然后检查Hide Esri Components。每个旁边带有+的文件夹都应表明已安装了第三方工具。如果Esri的卸载程序可以执行此扫描并警告安装了第三方工具,那就太好了。
– Kirk Kuykendall
13年1月28日在20:50
#4 楼
为了完整起见,所有原始安装媒体上均包含Esri自己的卸载实用程序,请阅读指南以了解哪些产品不包括在内(主要是ArcSDE和许可证管理器)。链接指向10.1,每个主要版本都会有一个新的卸载页面和实用程序。请注意,该实用程序仅删除以前的版本。
评论
我不确定我是否会信任脚本来正确执行此操作,特别是如果您有任何自定义/第三方扩展/加载项,应首先将其卸载。这只是部分折腾,但重新格式化硬盘驱动器,重新安装Windows并重新开始有时比卸载ArcGIS及其所有组件,更新,扩展等更容易。安装例程不断告诉我我不能,因为我仍然安装了早期版本的组件,据我所知我没有。我在计算机上安装了Arc之前的硬盘驱动器映像,但最终对其进行了重新映像。
Python也是一个痛点。卸载后,它将留下未随ArcGIS发行版一起安装的任何站点包或模块的痕迹。
感谢您提醒我有关python模块@ blah238的信息,我添加了一个答案来帮助解决此问题。