UninstallCodeExample1.iss 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  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. WizardStyle=modern
  8. DefaultDirName={autopf}\My Program
  9. DefaultGroupName=My Program
  10. UninstallDisplayIcon={app}\MyProg.exe
  11. OutputDir=userdocs:Inno Setup Examples Output
  12. [Files]
  13. Source: "MyProg.exe"; DestDir: "{app}"
  14. Source: "MyProg.chm"; DestDir: "{app}"
  15. Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme
  16. [Code]
  17. function InitializeUninstall(): Boolean;
  18. begin
  19. Result := MsgBox('InitializeUninstall:' #13#13 'Uninstall is initializing. Do you really want to start Uninstall?', mbConfirmation, MB_YESNO) = idYes;
  20. if Result = False then
  21. MsgBox('InitializeUninstall:' #13#13 'Ok, bye bye.', mbInformation, MB_OK);
  22. end;
  23. procedure DeinitializeUninstall();
  24. begin
  25. MsgBox('DeinitializeUninstall:' #13#13 'Bye bye!', mbInformation, MB_OK);
  26. end;
  27. procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
  28. begin
  29. case CurUninstallStep of
  30. usUninstall:
  31. begin
  32. MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall is about to start.', mbInformation, MB_OK)
  33. // ...insert code to perform pre-uninstall tasks here...
  34. end;
  35. usPostUninstall:
  36. begin
  37. MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall just finished.', mbInformation, MB_OK);
  38. // ...insert code to perform post-uninstall tasks here...
  39. end;
  40. end;
  41. end;