如果您在使用託管BA你可以試試這個代碼
<MsiPackage SourceFile="Setup.msi"> <MsiProperty Name="UNINSTALLER_PATH" Value="[UNINSTALLER_PATH]"/> </MsiPackage>
某處(電話安裝動作之前) ,您需要爲此變量設置如下的值: Engine.StringVariables["UNINSTALLER_PATH"] = string.Format(@"{0}\{1}\{2}\{3}.exe", Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "Package Cache", Engine.StringVariables["WixBundleProviderKey"], ProductName);
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) - %systemdi R%:\ ProgramData
在ProgramData封裝的cache文件夾名稱,其中安裝束緩存
Engine.StringVariables [ 「WixBundleProviderKey」] - 文件夾(GUID)的名稱通過緩存束
產品名稱創建 - 名稱你的引導程序「exe」
最後在你的產品中。WXS您可以創建快捷方式通常的方式,但在「目標」屬性,你需要通過UNINSTALLER_PATH值和「參數」設置=「/卸載」:
<Shortcut Id="Shortcut1" Name="Uninstall" Description="Uninstall" Target="[UNINSTALLER_PATH]" Arguments="/uninstall" WorkingDirectory="Programmenufolder" />
對不起,我的英語:)
所有這是Burn的實施細節:無證,可能會更改。 –