我需要在安装期间询问用户密码,然后将其用作安装后运行的命令的一部分.我正在使用自定义页面执行此操作,它工作正常.
我还需要在卸载期间提出相同的问题,该问题用作卸载后运行的命令的一部分.
我已经检查了帮助,似乎没有适用于卸载的PageID,我可以在我的CreateInputQuery
函数中使用它.我不特别介意,如果页面显示在卸载的开始,中间或结尾,只要它显示.
我不想使用MsgBox
卸载,因为我想要标准页面的外观.
有关如何实现这一目标的任何提示?
我将所有程序的设置存储在appdata目录%appdata%/ MyProgram中.当出现问题并且用户必须重新安装时,我想询问是否删除该目录中的数据.我正在使用Inno Setup并添加了一个自定义页面来提示用户:
if DirExists(ExpandConstant('{userappdata}\MyProgram')) then
begin
appdataPage := CreateInputOptionPage(wpSelectTasks,
'Stored Settings', 'Would you like to remove settings before re-install?',
'Please specify if you would like to remove the current settings before re-installing MyProgram.', True, False);
appdataPage.Add('Remove current settings (Recommended if MyProgram is having problems).');
appdataPage.Add('Keep all my settings and just reinstall.');
//appdataPage.Add();
appdataPage.Values[0] := true;
end;
Run Code Online (Sandbox Code Playgroud)
安装程序不会将数据放在那里,但程序会生成它,因此卸载程序不会自动删除它.我也不能指望卸载程序正在运行; 很多用户只是再次运行安装程序.
如何处理此对话框中的选择,以便他们点击"重新安装前删除"我删除文件夹%appdata%/ MyProgram?我不想总是删除它,但给他们选择.