Mon programme d'installation crée la clé reg sous HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Desktop \ NameSpace qui crée une icône sur le bureau lors de l'installation, mais après la désinstallation, cette icône reste jusqu'à J'appuie sur F5. Je googlé et trouvé à partir here, donc j'ajouté:VBScript pour actualiser le bureau dans Wix ou MSI
<CustomAction Id="CA_RefreshDesktopVB" Script="vbscript">
<![CDATA[
Set WSHShell = CreateObject("WScript.Shell")
strDesktop = WSHShell.SpecialFolders("Desktop")
WSHShell.AppActivate strDesktop
WSHShell.SendKeys "{F5}"
]]>
</CustomAction>
<InstallExecuteSequence>
...
<Custom Action="CA_RefreshDesktopVB" OnExit="success"/>
Cependant, il ne rafraîchit pas quand la désinstallation terminée. Ai-je fait quelque chose de mal ou est-ce simplement au-delà de VB Script?
Si vous vous connectez, la désinstallation indique-t-elle que l'action personnalisée est en cours d'exécution? – scott
Oui, c'est le cas. Notez que puisque l'icône n'a pas été créée sous "Bureau" du profil utilisateur, par ex. C: \ Users \ john \ Desktop ou C: \ Users \ public \ Desktop, cela n'a pas fonctionné je pense. – Petronius
Eh bien, j'ai abandonné l'utilisation de VBScript. Au lieu de cela, je viens de créer CA Type 1 en utilisant des API shell, par ex. SHGetSpecialFolderLocation() et SHChangeNotify() b/c Je sais que cela fonctionne. – Petronius