Pergunta

Eu estou usando Wix 3.0.i ter uma pasta de nome "imagens" .so Eu quero copiar todos os arquivos de imagens em msi package.when i copiar todos os arquivos e instalar msi para outro PC, então não se ligou a imagens. E quando eu uso simples arquivo elemento em seguida, os arquivos de ligação ao pacote MSI. Então o que eu deveria fazer,

me Responder breve

Agradecendo Samir

Foi útil?

Solução

Aparentemente você deseja criar um aplicativo que pode gerar um instalador de screensaver que inclui uma série de arquivos de imagem selecionados pelo usuário -. Uma espécie de aplicação InstallShield especializada apenas para criar screensavers instaladores

Gostaria em primeiro lugar criar um arquivo MSI template (com wix ou qualquer outra coisa) que faz a maior parte o trabalho. Você não sabe quais arquivos o usuário vai selecionar mais tarde, então adicionar um componente de espaço reservado com a identificação "UserSelectedFiles". distribuir este arquivo de modelo MSI com sua aplicação.

Então, quando o usuário deseja gerar um novo instalador, comece copiando o modelo. Edite o msi copiado de modo que ele também instala os arquivos do usuário selecionado. Você pode fazer isso com as classes .NET pode encontrar na "implantação . Ferramentas fundação" API Este é um conjunto de conjuntos que vêm com wix; dar uma olhada C:\program files\Windows Installer XML v3\sdk.

Eu só tenho usado a API DTF para algumas coisas simples, como neste exemplo que conta as entradas da tabela de arquivos na MSI:

var database = new Database(@"\path\to\some\file.msi");
var list = database.ExecuteQuery("SELECT FileName FROM File");
Console.WriteLine(list.Count);

Seu caso será um pouco mais complicado. Você provavelmente terá que

  • gerar um arquivo CAB que contém os arquivos de imagem com as classes que você encontrar na Microsoft.Deployment.Compression.Cab namespace.
  • mesclar o arquivo CAB para o msi com Database.Merge
  • Adicionar novas entradas à tabela de arquivos da MSI
  • Alterar o código do produto para algo único para cada MSI gerado
  • etcetera

Para se ter uma ideia do conteúdo de um arquivo MSI e como ele pode ser editado, eu recomendo que você primeiro brincar um pouco com o orca e Msidb ferramentas.

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