2010-03-17 7 views

Répondre

11

Si vous voulez simplement supprimer l'icône « app1 Désinstaller » dans le menu Démarrer, ce qui suit devrait fonctionner:

[InstallDelete] 
Type: files; Name: "{group}\uninstall app1" 

Si vous souhaitez supprimer l'ensemble du groupe de programme de le menu de démarrage, utilisez ce qui suit:

[InstallDelete] 
Type: filesandordirs; Name: "{group}" 

Cela suppose que le nom de votre dossier menu script Inno Setup start est le même que le précédent "app1" application.

+1

Si vous devez supprimer l'élément de menu particulier, vous devez appliquer .lnk par exemple: Type: fichiers ; Nom: "{group} \ uninstall app1.lnk" –

2

Merci Craig ma nouvelle application n'a pas le même nom (App2) suivant a fonctionné pour moi

[InstallDelete] 
Type: filesandordirs; Name: {commonprograms}\app1 
+1

Notez que cela ne fonctionnera pas si l'utilisateur a modifié le chemin d'installation par défaut. – mghie

+0

Voulez-vous dire que cela ne fonctionnera pas si l'utilisateur n'a pas installé sous les fichiers de programme? – Gauls

6

Aucun de ceux travaillé pour moi, après le travail autour, voici ma solution; dans [Configuration]

//Delete old entry folder from start menu 
procedure DeleteOldStartMenuEntry; 
var 
entry: String; 
begin 
//Replace "Diviner" with desired folder name 
entry := ExpandConstant('{commonprograms}') + '\Diviner\'; 
if DirExists(entry) then begin 
    DelTree(entry, true, true, true); 
    end 
end; 

intérieur InitializeSetup appeler votre procédure:

function InitializeSetup: Boolean; 
var: 
    .... 
begin 
    .... 
    DeleteOldStartMenuEntry; 
    .... 
end; 
+0

Cela a fonctionné comme un charme pour moi - InnoSetup ferme même les fenêtres Explorer pour pouvoir supprimer le répertoire. – gogowitsch