PT
Español
English
Português
    Distribuição/Projeto de Software

    Criação de Projetos / Software

    1. Para criar um projeto de distribuição, vá para a visualização Início do Console de Gerenciamento do ADM e selecione o Software no menu Cabeçalho. Na visualização de informações, exiba a lista Mais opções, Novo Projeto e clique em Software.


    Fatos básicos

    2. Na janela que está ativada no Geral, configure na seção Dados básicos Informações como: Nome e descrição.


    Distribuição de pacotes

    3. No Distribuição de pacotes, defina o tipo de sistema operacional no qual você vai distribuir (Windows, Linux ou Mac), selecione o pacote ou crie um novo pacote clicando Criar pacotes (ver Criando pacotes de software).


    Nas distribuições de software, você pode selecionar pacotes criados a partir de três ações diferentes:

    • Execução: Esse tipo de ação consiste em executar software nos dispositivos. Configurando o comando de instalação silenciosa
    • Copiar: Esse tipo de ação consiste em copiar qualquer tipo de arquivo ou executável para os dispositivos. Ao selecionar um pacote de cópia nas configurações do projeto de distribuição, indique o caminho no qual deseja salvá-lo.

    ⚐ Nota: Para sistemas operacionais Linux e Mac, não é possível usar variáveis de ambiente como no Windows (%TEMP%, %USERPROFILE%); Você deve digitar o caminho exato para o qual deseja copiar o arquivo.

    • Chaves de registro: Esse tipo de ação envolve a criação, atualização ou exclusão de chaves do Registro em dispositivos. Quando você distribui a chave do Registro, o agente abre o arquivo e executa a ação correspondente.


    O agente ADM para sistemas Windows é compilado no formato x86 (32 bits) para garantir a compatibilidade em computadores de 64 bits ou 32 bits. Portanto, algumas distribuições de chaves do Registro ou execução de arquivos com extensão (.BAT), por padrão, podem se comportar de maneira diferente em ambientes de 64 bits.

    Para garantir um comportamento consistente, se o script (.bat) precisar fazer modificações específicas no Registro ou executar comandos que dependem do contexto de arquitetura (32 bits vs. 64 bits), você poderá estender o .bat com seções que contemplam o caminho e o Registro apropriados.

    A exibição do Registro de 64 bits (HKLM\SOFTWARE) ou a exibição de 32 bits (HKLM\SOFTWARE\Wow6432Node) ajuda a evitar erros de redirecionamento, para isso, você deve considerar o tratamento adicional de %SystemRoot% e Sysnative em seus roteiros.

    1) %SystemRoot%

    Permite que o restante do caminho seja independente da letra da unidade ou das configurações específicas da máquina. Ao usar %Raiz_do_Sistema, garante que o registro do Windows seja referenciado a partir do local correto no sistema.

    2) Sysnative

    Garante que as modificações sejam aplicadas na exibição do Registro correspondente (64 bits)

    Exemplo:

    • Alteração de registro de 64 bits
    @echo off
    %SystemRoot%\Sysnative\reg.exe ADD "HKLM\SOFTWARE\Example\v1.0" /v ExampleValue /t REG_DWORD /d 1 /f
    echo.
    echo Las claves de registro (vista de 64 bits) se agregaron correctamente.
    


    • Alteração de registro de 32 bits
    @echo off
    %SystemRoot%\reg.exe ADD "HKLM\SOFTWARE\Wow6432Node\Example\v1.0" /v ExampleValue /t REG_DWORD /d 1 /f
    echo.
    echo Las claves de registro (vista de 32 bits) se agregaron correctamente.
    



    Distribuição de Pacotes PowerShell (.PS1)

    Quando você distribui um pacote de tipo Execução com extensão .PS1, o agente ADM executa o script com a seguinte estrutura, onde o Linha de comando de instalação configurado no pacote é enviado como os parâmetros do script (veja Comando para pacotes PowerShell):

    powershell.exe -Noprofile -NonInteractive -ExecutionPolicy Bypass -File "<ruta del script>" <parámetros configurados en el paquete>
    

    Diferenças entre execução local e execução ADM

    É comum para um script .ps1 ele funciona corretamente quando testado manualmente no computador, mas apresenta falhas ou um comportamento diferente quando executado via ADM, devido aos parâmetros com os quais o agente invoca o PowerShell:

    • -Noprofile- O perfil PowerShell do usuário não está carregado. Se o script depender de variáveis, módulos ou aliases definidos no perfil, que estão disponíveis ao abrir um console PowerShell comum, ele falhará apenas durante a distribuição.
    • -NonInteractive: Qualquer instrução que exija uma resposta do usuário irá bloquear ou interromper a execução (veja tabela cmdlets em Configurando o comando de instalação silenciosa).
    • -ExecutionPolicy Bypass- A política de execução do PowerShell configurada localmente no computador não é a causa de falha ao distribuir usando ADM, porque o agente sempre a ignora explicitamente.
    • Arquitetura de 32 bits- O agente ADM para Windows é um processo de 32 bits e roda a versão de 32 bits do PowerShell (%SystemRoot%\SysWOW64\WindowsPowerShell\v1.0\powershell.exe), mesmo em computadores de 64 bits. Se seu script requer módulos, caminhos de registro ou componentes disponíveis apenas na versão de 64 bits do PowerShell, o comportamento será diferente do de um console PowerShell de 64 bits aberto manualmente.

    ⚐ Nota: Para validar um script antes de distribuí-lo, execute-o localmente com a mesma versão do PowerShell (32 bits) que o agente usa: %SystemRoot%\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -Noprofile -NonInteractive -ExecutionPolicy Bypass -File "<ruta del script>" <parámetros>. Isso reproduz fielmente o comportamento da distribuição ADM.

    ⚐ Nota: Se o script exigir componentes disponíveis apenas na versão de 64 bits do PowerShell, ele pode se reiniciar sob a Sysnative para evitar o redirecionamento do WOW64, de maneira semelhante à usada nos exemplos de .bat dessa mesma seção:

    if ($env:PROCESSOR_ARCHITEW6432 -and [IntPtr]::Size -eq 4) {
        & "$env:WINDIR\Sysnative\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "$PSCommandPath" @args
        exit $LASTEXITCODE
    }
    # A partir de aquí el script continúa ejecutándose en PowerShell de 64 bits
    

    Se tudo o que o script precisa é ler o registrador de 64 bits (sem precisar de módulos de 64 bits), você pode evitar o relançamento indo diretamente para essa visualização: [Microsoft.Win32.RegistryKey]::OpenBaseKey('LocalMachine', [Microsoft.Win32.RegistryView]::Registry64).

    Pré-requisitos e considerações

    • O comando é executado no contexto das credenciais configuradas no projeto de distribuição (veja a seção Credenciais deste artigo).
    • Os parâmetros do script são configurados da mesma forma Linha de comando de instalação usado para os outros tipos de execução de pacotes de ação (veja Linhas de Comando).

    Exemplo prático

    Exemplo de script (instalar_configuracion.ps1):

    param(
        [string]$NombreUsuario,
        [string]$Modo = "Instalacion"
    )
    
    Write-Output "Ejecutando en modo: $Modo para el usuario: $NombreUsuario"
    # Lógica del script
    

    Linha de comando de instalação configurada no pacote:

    -NombreUsuario "svc_adm" -Modo "Silencioso"
    

    Comando final que o agente executa no dispositivo:

    powershell.exe -Noprofile -NonInteractive -ExecutionPolicy Bypass -File "C:\ruta\instalar_configuracion.ps1" -NombreUsuario "svc_adm" -Modo "Silencioso"
    



    Credenciais

    4. No Credenciais, você pode pesquisar credenciais que já foram criadas (Credenciais)ou você pode adicionar um novo clicando em Criar credencial.


    ⚐ Nota: As credenciais devem ser criadas com a seguinte estrutura: Domínio\Usuário. Se as credenciais não incluírem um domínio, insira apenas o usuário e o nome do host da máquina será usado internamente. Os comandos são executados no contexto de segurança do usuário e com a carga de perfil correspondente. Se o usuário não tiver permissões para executar qualquer ação exigida pelo comando, o comando falhará.

    Para sistemas operacionais Linux e Mac, a seção é bloqueada, distribuições de tipos de software sempre executarão com os maiores privilégios.


    Notificações

    5. No Notificações, agende notificações para os usuários necessários.


    Grupos de dispositivos

    6. Quando você terminar de configurar o Geralclique Salvar para confirmar as alterações feitas; na Visualização de Informações do Projeto, Grupo de dispositivos e Execuções.

    7. Na visualização do projeto, selecione o ícone Grupos e dispositivos e na lista Mais opções Selecionar Adicionar dispositivos.


    8. Selecione os dispositivos onde deseja fazer a distribuição e clique em Aplicar.


    Execuções

    9. Na visualização do projeto, selecione o ícone Execuções onde você pode visualizar e gerar o agente ou a distribuição de software. Para fazer isso, clique no botão Nova execução.


    10. A janela correspondente está ativada, onde você pode adicionar um nome e agendar a nova execução.


    11. Al guardar, la ejecución nueva se genera en estado programada. En la pestaña Información visualizará un resumen del estado del paquete de ejecución.


    12. No Atividade As informações gerais da distribuição e o andamento da execução serão exibidas de acordo com seu status (agendado, em execução ou concluído).

    Na visualização detalhada do projeto de distribuição, você pode visualizar o resumo do processo com o número total de execuções, execuções recorrentes e dispositivos alcançados.

    A tabela a seguir descreve as possíveis Estados de execução por dispositivo dentro do projeto de distribuição.

    Estado Explicação
    ⬜ Sem notificação O dispositivo ainda não foi notificado sobre a execução. O timeout depende da frequência de sincronização configurada no perfil do agente.
    🟨 Execução pendente O dispositivo está aguardando instalação.
    🟧 Na Execução A execução no dispositivo está em andamento.
    🟩 Executado A execução no dispositivo foi concluída com sucesso.
    🟥 Executado com erros A execução no dispositivo terminava com erros. É necessário consultar o registro detalhado da execução para identificar a falha.
    🟪 Descontinuado A execução no dispositivo foi interrompida pelo sistema.
    🟩 Executado A execução no dispositivo foi concluída com sucesso.
    ⬛ Cancelado A execução no dispositivo foi cancelada, é possível que tenha sido devido à intervenção do usuário ou ao término do timeout ao entrar no estado “não notificado”.

    Para visualizar o histórico de execuções, clique no botão   .   Uma janela será aberta mostrando a hora e o estágio de execução e possíveis mensagens de saída.

    A tabela a seguir descreve as possíveis Por estado de pacote na execução do dispositivo dentro do projeto de distribuição.

    Estado Explicação
    Aguardando download O pacote está esperando para ser baixado.
    Baixando O pacote está sendo baixado.
    Baixado O pacote foi baixado com sucesso.
    Erro de Download Um erro ocorreu durante o download do pacote.
    Erros máximos de download O pacote atingiu o número máximo de tentativas de download falhadas.
    Aguardando execução O pacote está em espera para execução.
    Corrida O pacote está rodando.
    Executado O pacote foi executado.
    Executado com erros O pacote foi executado com erros. Isso pode acontecer por vários motivos, como falta de permissões, arquivos bloqueados porque estão em uso, conflitos com versões anteriores do software, ou se o software já estava presente mas o instalador não conseguiu processá-lo corretamente.
    Descontinuado A instalação do pacote foi interrompida.
    Cancelado A instalação do pacote foi cancelada.
    Omitido O pacote foi baixado, mas não executado porque o sistema confirmou que o software já existia no computador e nenhuma ação foi necessária.

    O menu suspenso Mais opções Tem duas ações disponíveis:

    • Parar execução: Se a execução estiver em vigor, ela interromperá o processo de distribuição.
    • Excluir execução: remove a execução selecionada da lista.


    ⚐ Nota: As execuções em andamento podem apresentar os status de “em execução”, “agendado” ou “concluído”, esses status podem ser monitorados na solução e desta forma, ver quantos dispositivos já foram atingidos no projeto de distribuição.