Why won't Windows Installer use the UI in the

2019-02-25 17:41发布

Has anyone been able to get Windows Installer to use the InstallUISequence table during removal?

I started with an MSI file produced by the Visual Studio msi builder, decompiled it into WiX source code and handcrafted it, but I cannot get the installer to use my UI during removal. It insists on using a default UI provided by Windows Installer.

I have also analyzed several MSI files, and I have been unable to find one where Windows Installer will use the provided UI during removal.

I captured the msiexec logs during removal, and sure enough, Windows Installer appears to be ignoring the InstallUISequence table.

It seems that msiexec runs with minimal UI during removal. If I specify the /qf switch (use full UI) during removal, then Windows Installer does take the UI from the .msi file. However, this doesn't help the regular user, because she won't do the removal from msiexec.

Does anyone know of a way to convince Windows Installer to use the UI in the MSI file by default?

2条回答
劫难
2楼-- · 2019-02-25 18:17

The "Why" is basically because Microsoft says so. :-) Can't say I disagree as I get annoyed when ISV's get all cute when I'm just trying to remove a program.

查看更多
甜甜的少女心
3楼-- · 2019-02-25 18:20

When removing an application from Add/Remove Programs, this will always run with "basic" UI.

You can't make uninstall run with full UI, the best you can do is prevent removal and force people to 'modify' (which does run with UI) and remove from there.

Whatever you do, there's still no way to prevent someone right clicking on the original MSI and selecting 'Remove', this will always run with basic UI.

查看更多
登录 后发表回答