A maneira mais simples de desinstalar todo e qualquer produto ArcGIS?

26

Qual é a maneira mais simples e direta de desinstalar todos e quaisquer produtos ArcGIS, mais ou menos de uma só vez, que possam estar presentes em uma máquina Windows? talvez com script?

Adicionar ou remover programas no Painel de controle é simples, mas quando existem vários produtos instalados, é um processo de clicar-clicar-clicar, aguarde a desinstalação do produto 1, o que pode levar algum tempo, e clique em # 2 e assim por diante. Isso é bom para uma máquina, mas quando há várias, é uma verdadeira dor.

Matt Wilson
fonte
Não tenho certeza se confiaria em um script para fazê-lo corretamente, especialmente se você tiver extensões / suplementos personalizados / de terceiros, que devem ser desinstalados primeiro.
precisa saber é
Isso é apenas parcialmente explícito, mas às vezes é mais fácil reformatar o disco rígido, reinstalar o Windows e reiniciar do que desinstalar o ArcGIS, todos os seus componentes, atualizações, extensões etc. Tentei recentemente atualizar o ArcGIS Desktop 10.1 e o A rotina de instalação continuava me dizendo que eu não podia, porque ainda tinha componentes de uma versão anterior instalada, o que, tanto quanto eu sabia, não tinha. Eu tenho uma imagem do disco rígido da instalação pré-Arc do computador, acabei reimaginando-a.
Dan C
Python também é um ponto problemático; quando for desinstalado, deixará rastros de quaisquer pacotes ou módulos de sites não instalados com a distribuição do ArcGIS.
precisa saber é
obrigado por me lembrar sobre os módulos python @ blah238, adicionei uma resposta para ajudar com isso.
Matt Wilkie

Respostas:

17

Eu faço isso com um arquivo em lotes. Você pode escrever o código abaixo como uma única linha ou, atualizando os locais, pode criar um loop de caminhos / instaladores.

SET INSTALL_PATH=\\myNetworkShare\InstallerLocation\

MSIEXEC.EXE /X %INSTALL_PATH%\setup.msi /QB

Os seguintes artigos da base de dados de dados fornecem um bom ponto de partida:

Instalar / desinstalar usando arquivos em lote

Desinstalação silenciosa

Editar: para esclarecer, usando o 2º artigo, você pode usar o GUID, para que não precise fazer referência ao instalador original. Eu acho que um método fará mais sentido para o seu arquivo de script / lote

KHibma
fonte
Este é o nosso método usando
desinstalações
12

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 /passivepara 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 /se 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 é assoce ftypepara 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)

Matt Wilson
fonte
9

Certifique-se de desinstalar todas as extensões arcgis de terceiros antes de desinstalar o ArcGIS. Frequentemente, os (des) instaladores de terceiros verificam se as bibliotecas Esri apropriadas estão presentes antes de permitir a instalação - ou desinstalação !

Por exemplo, digamos que você tenha uma extensão de Arcmap de terceiros gravada para 10.0 e desinstale o ArcGIS 10.0 e instale o ArcGIS 10.1. Quando você atualiza para a 10.1, a extensão de terceiros pode ou não funcionar. De qualquer forma, quando você tenta desinstalar a versão 10.0 da extensão, o desinstalador reclama que as bibliotecas necessárias estão ausentes (as bibliotecas 10.0 em outras palavras).

A solução dolorosa é: desinstalar 10.1, reinstalar 10.0, desinstalar as extensões de terceiros, desinstalar 10.0, reinstalar 10.1.

Eu tentei outras soluções, como ccleaner, mas com sucesso limitado. Se houver uma maneira mais confiável e menos dolorosa, eu certamente gostaria de ouvir sobre isso.

Kirk Kuykendall
fonte
Kirk, você pode nomear uma extensão de terceiros que faz isso? Eu gostaria de testar para ver se a msiexec /x %product_code%rota contorna essa situação.
Matt Wilkie
Posso defender o quinto?
Kirk Kuykendall 28/01
Não tenho certeza, mas acho que a extensão de interoperabilidade de dados também se enquadra nessa categoria. Certifique-se de desinstalar primeiro.
precisa saber é
terrago, ettools.
precisa saber é o seguinte
2
A maneira mais fácil que eu conheço para ver quais ferramentas de terceiros estão instaladas é acessar o Categories.exe e verificar o Ocultar componentes do Esri. Cada pasta com um + ao lado deve indicar que há uma ferramenta de terceiros instalada. Seria bom se o desinstalador da Esri tivesse a opção de executar essa verificação e avisasse sobre ferramentas de terceiros instaladas.
precisa saber é o seguinte
3

Para garantir a integridade, também existe o Utilitário de Desinstalação da Esri , que está em todas as mídias de instalação originais. Leia o guia para ver quais produtos estão excluídos (principalmente ArcSDE e License Manager). O link aponta para 10.1; haverá uma nova página e utilitário de desinstalação a cada versão principal.

Observe que o utilitário remove apenas as versões anteriores .

Matt Wilson
fonte