Estou tentando instalar uma nova versão de um programa, já instalado em algumas máquinas, via GPO. Atualmente, a política é baseada no usuário e funciona corretamente se não houver uma versão anterior do programa instalada. Se houver uma versão mais antiga do programa instalada, a política não fará nada, mas ainda será considerada um sucesso. A versão mais antiga do programa foi instalada manualmente em cada máquina, então não posso fazer uma atualização.
Existe uma maneira fácil de substituir ou remover a versão antiga? Pensei em ter outra política para remover a versão antiga, mas isso parece um pouco desleixado.
se o aplicativo estiver listado em Adicionar/remover programas, você poderá identificar o comando msi a ser executado antes de fazer uma nova instalação. Normalmente, a entrada está em HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall e UninstallString específico como MsiExec.exe /I{23170F69-40C1-2702-0920-000001000000}.
Assim, você pode fazer um GPO para executar anteriormente um CMD executando esse comando com o computador iniciado e depois enviar o novo aplicativo.
Este é um exemplo para reinstalar meu Jabber com a última versão com VBS:
Verifique isso, isso está usando um lote, encontre a chave de registro UninstallString do software e desinstale o software silenciosamente, o que é muito mais confiável em comparação com o wmic que encontrei. https://community.spiceworks.com/topic/2143980-deploy-or-upgrade-java-8-via-shutdown-script-remove-old-javas