Determine o nome de um recurso em um MSI para instalar a partir da linha de comando

10

Estou tentando instalar um aplicativo (SalesLogix 7.2 Admin Tools e Servers) de um pacote MSI, mas desejo apenas instalar um recurso específico. Como posso determinar o nome do recurso para poder usar o parâmetro ADDLOCAL?

    
por Cylindric 16.01.2012 / 17:31

4 respostas

9

Você pode executar o instalador no modo de registro detalhado

msiexec /i product.msi /l*v log.txt

Em seguida, procure as alterações na propriedade ADDLOCAL no log. Assim, você poderá determinar quais recursos são instalados com a seleção acima na GUI.

Caso contrário, você pode usar Orca conforme sugerido por jscott e analise o pacote você mesmo. Embora eu ache que usar o log detalhado seja uma solução mais simples e você não perderá um recurso a ser adicionado ao ADDLOCAL para obter uma instalação funcional.

    
por 17.01.2012 / 06:35
5

Obtenha uma cópia de orca.exe um> - é um simples editor MSI. Existem outros editores por aí que devem funcionar tão bem para isso. Abra o MSI no Orca e verifique a tabela Feature . Esta tabela listará todos os conjuntos de recursos disponíveis, desde que o fornecedor os tenha usado no empacotamento do instalador.

    
por 16.01.2012 / 18:39
2

A maneira mais fácil seria entrar em contato com o fornecedor do aplicativo e descobrir quais são as opções da linha de comando. Com isso dito, às vezes um fornecedor escolhe não disponibilizar essa informação. Nesse caso, gosto de usar o Process Monitor para observar o processo de instalação.

A maioria dos instaladores funciona da mesma maneira. Você faz o download de um único arquivo e o arquivo extrai todos os arquivos de instalação reais em um diretório temporário. Como precisamos ver para onde o instalador está sendo extraído, use o monitor de processo para observar o instalador assim que for iniciado. Não continue com o instalador nem saia dele. Ao executar uma das ações, os arquivos temporários serão excluídos. Copie todos os arquivos extraídos do diretório temporário. Você usará esses arquivos para o seu instalador personalizado. Depois de localizar o processo específico (no Process Monitor), filtre todos os outros processos. Você pode então observar o processo enquanto continua a seqüência de instalação. O que você está procurando é um comando msiexec que chama a instalação do recurso que você solicitou.

Isso pode ser um processo demorado de tentativa e erro, mas tive grande sucesso na personalização de instalações de aplicativos em que os fornecedores não fornecem essas informações ...

    
por 16.01.2012 / 17:48
1

Você pode achar que o instalador do MSI suporta o msiexec < href="http://msdn.microsoft.com/pt-br/library/aa367541%28VS.85%29.aspx"> instalação administrativa opção msiexec /a <yourpackage.msi> . Isso executará o instalador, mas, em vez de instalar o pacote, ele gerará um ponto de instalação para o software, personalizado com as opções especificadas. Posteriormente, você poderá implantar o arquivo .msi criado no ponto de instalação especificado, da maneira que normalmente implanta o software.

Depende muito do que o fornecedor incluiu o suporte, de modo que, de acordo com a resposta do @ newmanth, talvez seja necessário ligar para o fornecedor e ver que opções de implantação ele suporta.

    
por 16.01.2012 / 17:57