问题
I am working on an installer (MSI, Wix) for MVVM Light and have an issue. I need to run devenv.exe /setup on install and on uninstall to add/remove templates to the New Project menu. While we nailed the syntax on install, we are unable to find the correct syntax to run this on uninstall.
This is what we have:
<InstallExecuteSequence>
<Custom Action='UpdateVS2010Templates'
After='InstallFiles'>VS2010EXISTS</Custom>
<Custom Action='UpdateVS2010TemplatesUninstall'
After='RemoveFiles'>REMOVE = "All"</Custom>
</InstallExecuteSequence>
with
<CustomAction Id="UpdateVS2010Templates"
Impersonate="no"
Execute="deferred"
Directory="INSTALLLOCATION"
ExeCommand='"[VS10INSTALL]\Common7\IDE\DEVENV.EXE" /SETUP'
Return='ignore' >
</CustomAction>
<CustomAction Id="UpdateVS2010TemplatesUninstall"
Impersonate="no"
Execute="deferred"
Directory="INSTALLLOCATION"
ExeCommand='"[VS10INSTALL]\Common7\IDE\DEVENV.EXE" /SETUP'
Return='ignore' >
</CustomAction>
Can anyone indicate what the correct syntax would be?
thanks! Laurent
回答1:
This is functionality that comes with WiX. Replace all that authoring and your custom RegistrySearch with:
<CustomActionRef Id="VS2010Setup" />
回答2:
Have you tried devenv /installvstemplates after uninstalling the files?
http://msdn.microsoft.com/en-us/library/xee0c8y7.aspx
回答3:
Any chance it's a case sensitivity issue?
Try "ALL"
instead of "All"
or REMOVE ~= "ALL"
as Rob suggests.
来源:https://stackoverflow.com/questions/6607752/running-devenve-exe-setup-after-uninstall-in-wix