浮萍晓生的开发日志

记录学习的旅程,把握可预见的未来

导航

Inno Setup 卸载时删除注册信息、文件夹

Posted on 2013-12-17 13:52  浮萍晓生  阅读(2115)  评论(0)    收藏  举报

卸载时询问是否删除或是保留注册信息,可以使安装程序更加人性化。

 

界面预览:

  Inno <wbr>Setup技巧[卸载]卸载时询问是否删除注册信息

 

[Code]段添加如下代码:

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);

begin

  if CurUninstallStep = usUninstall then

    if MsgBox('您是否要删除注册信息?', mbConfirmation, MB_YESNO) = IDYES then

      RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\My Prog')

end;

 

使用时请将代码中红色部分替换为实际要保留的注册表信息。

如果想要 卸载时询问是否保留注册信息,可以把代码中蓝色部分改为 IDNO

如果想要删除 文件或文件夹 ,可使用以下代码:

  //删除 {app} 文件夹中的My Prog.exe

  DeleteFile(ExpandConstant('{app}\My Prog.exe'));

  //删除 {app} 文件夹及其中所有文件

  DelTree(ExpandConstant('{app}'), True, True, True);

  //删除 {app} 文件夹中的所有文件,但保留它本身

  DelTree(ExpandConstant('{app}'), False, True, True);