Pergunta

Eu tenho um projeto de instalação para o meu programa C #, e este projeto de instalação tem uma versão em suas propriedades. Eu gostaria que o arquivo MSI que é gerado ter esta versão embutida nele, para que eu possa mouse sobre ele no explorador e ver qual a versão é o arquivo.

Eu estou usando VS2008. Como posso fazer isso?

Foi útil?

Solução

Se você simplesmente adicionar o "Version: 1.5.0" texto na propriedade Descrição da configuração do projeto, o número da versão também mostra sobre o arquivo MSI assim:

http://screencast.com/t/A499i6jS

Outras dicas

Essa é uma boa pergunta, mas eu não sei qualquer ferramenta de configuração que poderia fazer isso. Além disso eu nunca encontrou um arquivo MSI com a versão do arquivo recurso embutido nele, por isso não é uma prática comum. Normalmente, se eu quiser saber a versão de um arquivo MSI Eu tenho que abri-lo no Orca e verificar ProductVersion propriedade lá (na tabela de propriedade).

Tanto quanto eu sei arquivo MSI nunca vai mostrar a versão. simples razão é que os arquivos MSI não são arquivos PE, eles são espécie de banco de dados. Msiexec.exe então interpreta esse banco de dados para fazer a instalação real. A propriedade versão que você menciona é usado pelo motor MSI internamente para upgrades, desinstala etc e nunca é exibido.

Abra o arquivo .vdproj associada em um editor de texto. Procure a seção "Produtos", em seguida, modificar o "ProductVersion", e os campos "fabricante".

 "Product"
    {
    "Name" = "8:Microsoft Visual Studio"
    "ProductName" = "8:tidAxCleanupScript"
    "ProductCode" = "8:{0949AAAD-2C29-415E-851C-825C74C9CA81}"
    "PackageCode" = "8:{8F012EF1-D5D0-43DC-BBFD-761A639DDB07}"
    "UpgradeCode" = "8:{38DE1949-0782-4EF3-BDC2-080EB5B73EF8}"
    "RestartWWWService" = "11:FALSE"
    "RemovePreviousVersions" = "11:TRUE"
    "DetectNewerInstalledVersion" = "11:TRUE"
    "InstallAllUsers" = "11:FALSE"
    "ProductVersion" = "8:**1.5.0**"
    "Manufacturer" = "8:**Default Company Name**"
    "ARPHELPTELEPHONE" = "8:"

Eu posso estar errado, mas não a versão msi seguir a versão no arquivo AssemblyInfo do seu projeto de inicialização?

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