Pergunta

Qual é a melhor maneira de usar o InstallShield para gerar instaladores para tanto 32 e 64 bits ambientes? A maioria da minha candidatura é pouco neutro (.NET, Java, arquivos de dados). Eu preferiria que eu só tive que empacotar esses arquivos uma vez. Existe uma abordagem padrão para reduzir a manutenção dos projectos InstallShield? Atualmente, a única solução que eu posso encontrar é ter dois projetos duplicados, onde cada um dos componentes são sinalizadas com 64 bits e instalação padrão set diretório para ProgramFiles64. Deve haver uma maneira melhor de fazer isso!

Apenas uma parcela muito pequena de meus cuidados aplicação como podem os bits que está sendo executado no. Temos algumas DLLs C ++ e JNI chamadas que precisam ser diferente. A maior parte desta é determinada em tempo de execução, verificando se o JRE nós estamos executando é de 64-bits.

Eu gostaria de evitar a distribuição de dois 130 arquivos MB, e, idealmente, enviar um arquivo zip grande que tem ambos os instaladores em que, cada um fazendo referência a componentes comuns. Eu preciso criar módulos de mesclagem para as coisas comuns e referenciá-los em cada um dos projectos?

Estamos usando InstallShield 2009 (Premier) se o que importa.

Foi útil?

Solução

  • Se você pode começar afastado com ter componentes de zero de 64 bits na sua configuração, então você pode apenas torná-lo uma configuração de 100% de 32 bits, e irá funcionar igualmente bem em 32-bit e 64-bit do Windows.

  • Se isso não for possível, eu recomendo o uso de bandeiras configuração do produto. Na visão "Lançamentos", criar várias configurações de produtos, tais como "XP32" e "XP64". Marcar o campo Modelo Resumo conforme apropriado: uma como "Intel; 1033" eo outro como "AMD64; 1033". Associar cada um com uma bandeira única Configuração do produto para identificá-lo, por exemplo, "XP32", "XP64". Então, para cada recurso, defina a bandeira lançamento apropriado. Você pode definir a propriedade de 64 bits em seus componentes de 64 bits como necessário; apenas certifique-se de que as características que você marcar como "XP32" não têm componentes de 64 bits em si. Isso permitirá que você só para ter um arquivo de projeto InstallShield, mas gerar ambos os lançamentos de 32 bits e de 64 bits.

Outras dicas

Se você usar um único projeto de instalação de 32 bits, como mencionado neste tópico, você pode executar em problemas para executar processos de 32 bits em sistemas de 64 bits, dependendo do que você está fazendo. Desde a sua configuração é um processo de 32 bits, o sistema operacional assume que precisa de utilizar recursos de 32 bits. Em máquinas de 64 bits, você tem ambos. Por exemplo, system32 e SysWOW64. (Estranhamente, as casas system32 os recursos de 64 bits, enquanto o SysWOW64 é de 32 bits.) Você pode forçar o sistema operacional para usar os recursos de 64 bits usando o redirecionador sistema de arquivos SYSNATIVE. Eu encontrei este útil ao configurar o IIS usando DISM.exe ou Pkgmgr.exe no Windows Server 2008R2 e 2012.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top