Eu tenho usado uma técnica ao longo das linhas da solução de pjhayward por anos. Nossa empresa utiliza centenas de programas diferentes, alguns de grandes fornecedores comerciais e outros de empresas de um único fornecedor. As proficiências técnicas desses fornecedores estão em todo o mapa, especialmente quando se trata de projetar instaladores.
Considero os MSIs fornecidos pelo fornecedor o padrão-ouro (embora ainda haja muita variação nos designs de pacotes). Usando a ferramenta Orca da Microsoft (incorporada em um ou mais de seus SDKs de plataforma, acredito), é bem fácil criar arquivos Transform para coagir esses pacotes em nosso layout típico. Nós personalizamos o menu Iniciar para agrupar programas por categoria funcional, mudamos o diretório de instalação para agrupar aplicativos por fornecedor dentro da pasta Arquivos de Programas e banimos todos os atalhos da área de trabalho. Números de série e endereços de servidor de licença são aplicados, se apropriado, talvez um serviço de atualização automática esteja desativado, etc.
O maior benefício do uso de MSIs é que a Diretiva de Grupo da Microsoft (que funciona através do Active Directory e está incluída em todas as licenças do Windows Server) pode implantar esses pacotes, com suas transformações, em grupos designados automaticamente ou por solicitação do usuário. Usamos o método automático, atribuindo aplicativos de uso geral a todas as máquinas, aplicativos de CAD para aqueles que podem usá-los, aplicativos da Adobe para máquinas específicas (licenciamento estúpido por estação) etc. Detalhes disso seria uma questão de SF separada. , se ainda não foi perguntado e respondido.Para muitos, muitos instaladores que não estão no formato MSI, passamos por um processo de reempacotamento semelhante ao do pjhayward. A desvantagem mais significativa de fazer isso é que a instalação reempacotada perde qualquer inteligência incorporada ao instalador original. A sensibilidade às diferenças de plataforma (digamos, sistemas de 32 ou 64 bits) será prejudicada, possivelmente exigindo reempacotamentos adicionais para cobrir cada plataforma. As decisões sobre a instalação e / ou atualização de componentes de terceiros serão feitas com base na máquina de amostra, independentemente dos diferentes estados iniciais das máquinas de destino. Etc.
Falando em componentes de terceiros: Fazemos todos os esforços para instalar cada componente em um pacote separado, independentemente dos desejos frequentes dos fornecedores de agrupar tudo. Sua estratégia faz sentido para uma única pessoa instalar um punhado de produtos de software manualmente em sua própria máquina, mas é interrompida no caso de instalações automatizadas de muitos nós e muitos produtos. Não importa quantos fornecedores dependam do MSXML 6 ou de alguma ferramenta de gerenciamento de licenças obscura, instalamos cada um deles uma vez, normalmente antes de instalar os produtos com os quais foram distribuídos. Isso também nos ajuda a minimizar os downgrades inadvertidos de versões, já que podemos dizer facilmente se a versão empacotada é mais antiga ou mais recente do que a que já estamos implantando.
Usamos o WINinstall da Attachmate, que foi distribuído de forma simples com os CDs do Windows Server 2003. Temos uma licença do produto completo, mas a versão LE, em combinação com o Orca e o ocasional suplemento incorporado vbscript, foi suficiente para as minhas necessidades. Os comentários de Evan Anderson sobre o WINinstall são válidos, mas pudemos viver com suas verrugas.
A lista de pjhayward (atualmente) passa por cima de uma etapa crítica: Limpar o pacote de instalação capturado antes de usá-lo para executar instalações em outro lugar. Arquivos indesejáveis e entradas de registro são frequentemente coletados como parte do processo de captura, e é importante identificá-los e removê-los antes que eles causem danos nas instalações subseqüentes. Procure por coisas como chaves de registro de estado sequenciais que podem estar completamente erradas para uma máquina que está sendo executada há algum tempo, e arquivos de cache do Serviço de Indexação ou do Windows Update que são criados no meio da captura.
Por favor, note que o licenciamento está fora do escopo da minha resposta, mas é bastante relevante para este tipo de cenário. As técnicas de distribuição a granel devem ser equilibradas com a conscientização dos direitos de uso reais concedidos pelos contratos de licença de cada produto.
Espero que isso ajude. É talvez mais do que você está perguntando, e não é uma combinação perfeita para a abordagem de implantação que sua pergunta descreve, mas é uma solução que achamos viável há muitos anos.