UninstallCodeExample1.iss 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. ; -- UninstallCodeExample1.iss --
  2. ;
  3. ; This script shows various things you can achieve using a [Code] section for Uninstall
  4. [Setup]
  5. AppName=My Program
  6. AppVersion=1.5
  7. DefaultDirName={pf}\My Program
  8. DefaultGroupName=My Program
  9. UninstallDisplayIcon={app}\MyProg.exe
  10. OutputDir=userdocs:Inno Setup Examples Output
  11. [Files]
  12. Source: "MyProg.exe"; DestDir: "{app}"
  13. Source: "MyProg.chm"; DestDir: "{app}"
  14. Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme
  15. [Code]
  16. function InitializeUninstall(): Boolean;
  17. begin
  18. Result := MsgBox('InitializeUninstall:' #13#13 'Uninstall is initializing. Do you really want to start Uninstall?', mbConfirmation, MB_YESNO) = idYes;
  19. if Result = False then
  20. MsgBox('InitializeUninstall:' #13#13 'Ok, bye bye.', mbInformation, MB_OK);
  21. end;
  22. procedure DeinitializeUninstall();
  23. begin
  24. MsgBox('DeinitializeUninstall:' #13#13 'Bye bye!', mbInformation, MB_OK);
  25. end;
  26. procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
  27. begin
  28. case CurUninstallStep of
  29. usUninstall:
  30. begin
  31. MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall is about to start.', mbInformation, MB_OK)
  32. // ...insert code to perform pre-uninstall tasks here...
  33. end;
  34. usPostUninstall:
  35. begin
  36. MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall just finished.', mbInformation, MB_OK);
  37. // ...insert code to perform post-uninstall tasks here...
  38. end;
  39. end;
  40. end;