Implantei o Flash Player por meio de uma política de instalação de software. Como atualizar?

8

Eu tenho uma máquina Windows Server 2008 como meu controlador de domínio. No início deste ano, criei um GPO de instalação de software para implantar o MSI do plug-in do Adobe Flash Player. Atribuí a política aos computadores, cerca da metade do Windows XP x86 e a outra metade do Windows 7 x64. Isso tudo funciona como um relógio.

Quando criei a Política de instalação de software, desabilitei o recurso de atualização automática do plug-in do Flash Player editando o MSI no Orca. Fiz isso porque queria que todas as minhas máquinas executassem exatamente a mesma versão do plug-in.

Agora, já passou algum tempo e uma versão mais recente do plugin Flash Player foi lançada. É hora de enviar a versão atualizada do plugin. Eu já tenho o novo MSI, mas estou perdido no que fazer a seguir.

  • Eu vejo a guia de atualizações no GPO de instalação de software, mas tudo o que lê é usado para complementos de um programa mestre maior e não para atualizações lançadas ao longo do tempo.
  • Li que é melhor criar uma nova política de instalação de software com o novo MSI, revogar o antigo GPO e atribuir o novo GPO. Sinto que, com o tempo, acabarei com políticas mais revogadas do que políticas ativas.
  • Também li que algumas pessoas tiveram sucesso substituindo o antigo MSI pelo novo e simplesmente dizendo ao GPO para reimplementar. Parece um método de backdoor que só me causa problemas.

Em resumo, qual é a maneira correta, recomendada ou recomendada de implementar a nova versão por meio da Diretiva de Grupo?

onze81
fonte

Respostas:

16

Já fiz isso várias vezes com o Flash Player (e outros softwares). O que você quer fazer é:

  • Use o ORCA para editá-lo com qualquer personalização que você desejar e salvá-lo como uma transformação (ou salve-o como um novo MSI, conforme o que for melhor para você).

  • Coloque esse novo MSI (e transforma) no seu compartilhamento de implantação de software.

  • Adicione este software (e transforma) à sua política existente. Ele o detectará automaticamente como uma atualização para suas versões anteriores do Flash Player. Você pode adicionar todas as versões na mesma política se foi assim que a configurou anteriormente (x86: plugin e ActiveX, x64: plugin e ActiveX) ou pode continuar com o layout de GPO que já possui. Apenas certifique-se de adicionar o mesmo na sua política e ele os detectará automaticamente como atualizações.

  • Se, por qualquer motivo, eles não forem detectados automaticamente como atualizações, você poderá definir isso na política. Essa é a maneira correta de lidar com essa situação.

Não há realmente nada de especial nisso.

Uma coisa que você deve pensar é em vez de editar o MSI com ORCA toda vez que houver uma nova versão, você pode criar um arquivo mms.cfg conforme descrito aqui com as preferências do Flash Player. Esse arquivo não será tocado nas atualizações; portanto, você só precisa enviá-lo uma vez e, em seguida, implantar uma instalação básica do Flash Player. Usei as preferências de arquivo de diretiva de grupo com a segmentação em nível de item para colocar isso no local correto em máquinas x86 e x64 em um ambiente misto.

MDMarra
fonte
5

Acredito que a atualização é o método de melhores práticas para fazer isso. Eu usei esse método bastante extensivamente no passado, sem problemas.

Adicione o novo MSI como outro pacote no objeto de Diretiva de Grupo, escolhendo o método de implantação Avançado. Ele deve ser detectado como uma atualização para o Flash Player implantado anteriormente. Caso contrário, você pode adicioná-lo à guia atualizações manualmente.

John
fonte
5

Eu tive um número horrível de falhas aparentemente aleatórias (veja minha nota na conclusão desta resposta) com alguns dos MSI v9, v10 e v11 do Adobe Flash não desinstalando ou atualizando corretamente, deixando o banco de dados MSI no PC em um estado isso me deixa desconfiado. Acabei recorrendo ao uso de um script de inicialização que:

  • Verifica o HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer\CurrentVersionvalor do registro para ver se a versão atualmente instalada está atual (adicionando uma WOW6432NODEnesse caminho, se necessário) e reforçando se a versão está atual

  • Usa o msizap.exeutilitário antigo, sem suporte e agora quase impossível , para remover MSIs com falha conhecida de "volta no dia" (incluindo {2BD2FA21-B51D-4F01-94A7-AC16737B2163}, {B7B3E9B3-FB14-4927-894B- E9124509AF5A} e {FA1D6742-0515-4A94-AD5D-F0484026E4A2}).

  • Usa o EXE desinstalador fornecido pela Adobe para remover silenciosamente as versões atuais do Flash

  • Usa o instalador EXE atual fornecido pela Adobe com o -install activexargumento (estou instalando apenas o controle ActiveX na maioria dos sites) para instalar a versão atual

  • Grava um 'mms.cfg. arquivo para impedir atualizações automatizadas

Aqui está uma versão limpa do meu script de inicialização. Você precisaria sair e pegar os EXEs apropriados se quisesse fazer isso.

@echo off
SET MSIZAP=\\my.domain.com\netlogon\bin\msizap.exe
SET DFSPATH=\\my.domain.com\dfsroot\Packages\Adobe

SET UNINSTALL=%DFSPATH%\uninstall_flash_player_x86.exe
SET INSTALL=%DFSPATH%\install_flash_player_11.4.402.278_active_x.exe 

rem Detect 64-bit Windows
IF NOT "%ProgramFiles(x86)%"=="" SET WOW6432NODE=WOW6432NODE\

SET VER_FLAG_KEY=HKEY_LOCAL_MACHINE\SOFTWARE\%WOW6432NODE%Macromedia\FlashPlayer
SET VER_FLAG_VALUE=11,4,402,278

REG QUERY "%VER_FLAG_KEY%" /v CurrentVersion | find /i "%VER_FLAG_VALUE%" > NUL 2>NUL
if errorlevel 1 goto do_install
goto :EOF

:do_install
rem Uninstall all old versions of Flash.
start /wait /min "" "%UNINSTALL%" -uninstall activex

rem MSIZAP all old versions
start /wait /min "" "%MSIZAP%" TW! {2BD2FA21-B51D-4F01-94A7-AC16737B2163}
start /wait /min "" "%MSIZAP%" TW! {B7B3E9B3-FB14-4927-894B-E9124509AF5A}
start /wait /min "" "%MSIZAP%" TW! {FA1D6742-0515-4A94-AD5D-F0484026E4A2}

rem Run new installer
start /wait /min "" "%INSTALL%" -install activex

rem Block future automatic updates
SET DEST="%windir%\system32\Macromed\Flash\mms.cfg"

rem Detect 64-bit Windows
IF NOT "%ProgramFiles(x86)%"=="" SET DEST="%windir%\SysWOW64\Macromed\Flash\mms.cfg"

rem I'm using "sort" here because the redirect is being interpreted as "1>" and
rem doing "1 >" causes a space to be stored in the file, which "breaks" the file.
echo AutoUpdateDisable=1|sort>%DEST%

Os problemas que eu já vi desinstalando MSIs Flash antigos foram principalmente:

  • "Adobe Flash Player 11 ActiveX - Erro 1714.A versão mais antiga do Adobe Flash Player 11 ActiveX não pode ser removida. Entre em contato com seu grupo de suporte técnico. Erro do sistema 1612."

  • "Erro 2753: O arquivo 'installax.exe' não está marcado para instalação"

A palha que quebrou as costas do camelo, para mim, foi a ocorrência desses erros aleatoriamente em um site do Cliente com mais de 1.000 PCs clientes. Preciso ter certeza de que as atualizações do Flash estão acontecendo e que os MSIs falham aleatoriamente na desinstalação não é uma opção. O fato de as falhas do MSI ocorrerem em cada inicialização subseqüente, retardando o processo de inicialização, apenas adiciona insulto à lesão.

Eu não olhei para um MSI v11 em detalhes. Os MSIs v9 e v10 nada mais são do que uma ação personalizada para executar o instalador do Flash baseado em EXE com argumentos de linha de comando. Não fiquei impressionado com a qualidade dos MSIs, porque usar o Windows Installer para executar apenas a instalação baseada em EXE não está usando o Windows Installer.

Evan Anderson
fonte
Mesmos problemas com versões posteriores também (14-16). Passei várias horas tentando resolver um único MSI corrompido e finalmente resolvi tudo excluindo e baixando um novo arquivo MSI para a versão corrompida. A parte difícil é que a instalação original está oculta devido à falha na instalação do MSI corrompido. Um limpador (ou script para limpeza via GPO) deve ser executado primeiro para remover a instalação com falha antes que o novo pacote seja instalado sem erros.
fyrye
1
@ fyrye - eu parei de usar as distribuições Flash baseadas em MSI há vários anos porque elas eram muito ruins. Optei por usar um script para msizapas instalações com falha de distância.
Evan Anderson
@Evan Anderson, tive a mesma experiência com as atualizações do Flash Player. Grandes quantidades de erros e falhas com as mesmas entradas do log de eventos que você descreve. Mais recentemente, o processo que utilizo é remover a versão antiga e escolher 'Desinstalar imediatamente' no próximo prompt. Em seguida, adiciono a nova versão ao mesmo GPO. Gostaria de saber se adicionar a nova versão como uma atualização funcionará melhor. Enquanto isso, eu queria perguntar se você usou o MSIZAP em máquinas com Windows 7? Não acho que seja suportado pela Microsoft, mas se funcionar na maioria dos casos, eu estaria disposto a tentar.
Satchel_74
1
@ satchel_74 - Historicamente, sou muito cauteloso com a configuração "Desinstalar imediatamente ..." nos GPOs, pois basicamente você está colocando uma instrução de desinstalação que não pode ser removida com as ferramentas suportadas no GPO. Eu usei o MSIZAP em máquinas Windows 7 de 32 bits sem problemas. Não testei extensivamente e, sinceramente, não tenho certeza de qual seria o comportamento em máquinas de 64 bits. (Não acredito que tenha havido uma versão x64 do MSIZAP.) É uma ferramenta que tento evitar o uso sempre que possível.
Evan Anderson
1

Se você adicionar uma versão mais recente do flash.msi ao mesmo GPO, o Windows detectará que esta é uma atualização da anterior (a mais antiga está listada na guia 'atualizações'). Ele também saberá que pode instalar o novo sobre o antigo, sem remover o antigo primeiro (a caixa de seleção na guia de atualização está marcada).

Essa mágica é possível pelos GUIDs no arquivo msi, inseridos pela Adobe.

Você pode adicionar qualquer número de novos flash.msi ao mesmo GPO, mas também pode remover os antigos.

Uma exceção foi a versão 11.4.402.278, porque, neste caso, a Adobe havia inserido o número da versão incorreta em alguns lugares, por isso não conseguiu se atualizar corretamente.

Por esse motivo, eu recomendo sempre ter um GPO separado que se aplique apenas a uma máquina de teste e tente lá para cada nova versão: atualização, downgrade, atualização.

Observe que essa mágica não funciona com todos os arquivos msi. Em seguida, você deve adicionar manualmente os antigos à lista na guia atualizações e deixar a caixa de seleção desmarcada.

Klaus Hartnegg
fonte