使用innosetup脚本删除以前安装的应用程序文件夹

时间:2010-03-17 15:44:47

标签: inno-setup

我正在使用脚本调用我的.net app删除之前的应用程序。我想要的是从开始菜单(开始 - >程序 - > app1->卸载app1)实际删除文件夹(整个app1)?

由于 高卢

3 个答案:

答案 0 :(得分:11)

如果您只想从“开始”菜单中删除“卸载app1”图标,则以下内容应该有效:

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

如果要从开始菜单中删除整个程序组,请使用以下命令:

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

这假设你的Inno Setup脚本开始菜单文件夹名称与之前的“app1”应用程序相同。

答案 1 :(得分:6)

在解决方法之后,没有一个对我有用,这是我的解决方案; 在 [设置]

//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;

InitializeSetup 里面调用你的程序:

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

答案 2 :(得分:2)

谢谢Craig我的新应用程序没有为我工作后的同名(app2)

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