Esta receita funciona para nós, uma versão estendida da resposta da KHibma . Pode haver métodos melhores, mas isso funciona bem o suficiente para nós agora - pegue os códigos de produto do registro do Windows em HowTo: Desinstale silenciosamente os produtos ArcGIS e alimente-os com o msiexec :
msiexec /x %product_code% /qn /passive
Remova a opção /passive
para executar silenciosamente (nenhuma janela de progresso pop-up).
Reuni uninstall-ALL-ArcGIS-products .bat, que remove todos os produtos ArcGIS da 8.2 a 10.3.1. (A lista 10.3+ está incompleta, mas mais completa que o artigo da Esri KB acima). Não há inteligência para isso, nenhum teste para ver se algo está realmente lá, apenas forças brutas estão na lista. Ele funciona apenas para programas que usam o instalador msi em primeiro lugar, portanto coisas como o ArcPad não estão incluídas.
Uma abordagem mais direcionada e flexível seria aproveitar a linha de comando da Instrumentação de Gerenciamento do Windows (WMIC) .
Desinstale um único programa nomeado:
wmic product where ^
"name = 'ArcGIS 10.1 SP1 for Desktop Background Geoprocessing (64-bit)'" ^
call Uninstall
Desinstale qualquer coisa com ArcGIS no título, tudo de uma só vez (observe a sintaxe peculiar de curinga ):
wmic product where ^
"name like '%ArcGIS%'" ^
call Uninstall
Muitos exemplos mais úteis no WMIC Snippets , como a lista de programas instalados:
wmic product where "Name like '%ArcGIS%'" ^
get Name, IdentifyingNumber, Version
wmic product where "Vendor like '%Environmental Systems Research Institute%'" ^
get Name, Version, InstallDate, InstallLocation
Optei por não usar o wmic porque as consultas demoram muito tempo para retornar (é tentador pensar que está travado, olhando para um prompt de shell em branco e sem piscar por muitas dezenas de segundos. Provavelmente não é assim).
Python é um pouco de animal separado. Por exemplo, se o python foi instalado com o ArcGIS, a desinstalação do ArcGIS também desinstalará o python, mas quaisquer módulos adicionados a terceiros serão deixados para trás.
Supondo que se queira remover completamente o Python 2.6 e qualquer material associado (copiar e colar às cegas sem o entendimento não recomendado) :
Remova todos os arquivos Python para esta versão no disco:
rd /s/q C:\Python27
Remova as chaves do registro com o REG :
reg delete HKLM\SOFTWARE\Python\PythonCore\2.7 /f
reg delete HKCU\SOFTWARE\Python\PythonCore\2.7 /f
Se o python não foi instalado no local habitual, você pode recuperar sua localização reg query HKLM\SOFTWARE\Python /s
e observarInstallPath
A última etapa é remover todas as entradas Python 2.7 da variável de ambiente PATH, mas ainda não vi uma maneira direta (com script) de fazer isso sem instalar mais ferramentas. Dito isto, editar a variável de ambiente PATH no Windows sem problemas é um ótimo recurso para as ferramentas mencionadas.
Também precisava possivelmente é assoc
e ftype
para verificar e possivelmente corrigir as associações de arquivo:
Associação de exibição:
assoc .py
.py=Python.File
ftype Python.File
Python.File="C:\Python26\python.exe" "%1" %*
Excluir associação:
assoc .py=
ftype Python.File=
(cortesia de @ dash-tom-bang no Stack Overflow, verifique também .pyc
,. pyw
)