使用64位Windows 7正如你所提到的,而不是MSI我猜你是捆綁您的MSI爲引導程序包的EXE。
要將您的exe版本綁定到您的msi,請按here所述使用bind.packageVersion.PackageID
。
這裏有一個如何使用它的一個例子:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Bundle Name="Bootstrapper1"
Version="!(bind.PackageVersion.master)"
Manufacturer="Test"
UpgradeCode="$(var.UpgradeCode)">
<BootstrapperApplicationRef
Id="WixStandardBootstrapperApplication.RtfLicense" />
<Chain>
<MsiPackage Id="master" SourceFile="MyInstaller.msi" />
</Chain>
</Bundle>
</Wix>
要將MSI綁定到你所選擇的組件執行以下操作:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<Product Id="*"
Name="MyProduct"
Language="1033"
Version="!(bind.fileVersion.My.dll)"
Manufacturer="Test"
UpgradeCode="$(var.UpgradeCode)">
這應該確保以下綁定順序:
setup.exe -> install.msi -> assembly.dll
我已經使用這個版本=「!(bind.fileVersion.My.dll)」,並且這在控制面板中顯示正確的版本號,現在wh我實際上想要做的是讓(.msi和application.exe)具有相同的版本號(當使用右鍵單擊 - >屬性 - >詳細信息進行檢查時)如application.exe在控制面板中顯示的那樣。 –
超級技巧大衛 –