最近开始学习inno setup 请大神指导下如何不让inno setup生成卸载程序

INNO SETUP卸载时为什么不能强制删除安装目录|安装与补丁 - 汉化新世纪论坛 - Powered by phpwind
查看完整版本: [--
INNO SETUP卸载时为什么不能强制删除安装目录
[code] procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);beginif CurUninstallStep = usUninstall thenif
MsgBox('您是否要删除用户配置信息?', mbConfirmation, MB_YESNO) = IDYES then//删除 {app} 文件夹及其中所有文件DelTree(ExpandConstant('{app}'), True, True, True);后生成的文件我添加了上面这些代码,怎么仍然不能卸载?求解、、、、、
用户被禁言,该主题自动屏蔽!
:代码本身没有问题。不过这个操作最好放到卸载结束时执行,即if CurUninstallStep = usDone then ( 15:10) procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);beginif CurUninstallStep = usDone thenif MsgBox('您是否要删除用户配置信息?', mbConfirmation, MB_YESNO) = IDYES then//删除 {app} 文件夹及其中所有文件DelTree(ExpandConstant('{app}'), True, True, True);// 以下为引用该示例脚本显示如何自定义卸载文件的名称(原版默认为 unins000.exe,unins001.exe 等等)。procedure CurStepChanged(CurStep: TSetupStep);varuninspath, uninsname, NewUninsName, MyAppName:beginif CurStep=ssDone thenbegin// 指定新的卸载文件名(不包含扩展名),请相应修改!NewUninsName := '卸载';// 应用程序名称,与 [SEUTP] 段的 AppName 必须一致,请相应修改!MyAppName := '自定义卸载文件名示例程序';// 以下重命名卸载文件uninspath:= ExtractFilePath(ExpandConstant('{uninstallexe}'));uninsname:= Copy(ExtractFileName(ExpandConstant('{uninstallexe}')),1,8);RenameFile(uninspath + uninsname + '.exe', uninspath + NewUninsName + '.exe');RenameFile(uninspath + uninsname + '.dat', uninspath + NewUninsName + '.dat');// 以下修改相应的注册表内容if RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1') thenbeginRegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'UninstallString', '&' + uninspath + NewUninsName + '.exe&');RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'QuietUninstallString', '&' + uninspath + NewUninsName + '.exe& /SILENT');我加了,仍然不能卸载,版主帮我看看,怎么回事儿?
用户被禁言,该主题自动屏蔽!
:你说的“不能卸载”指什么?我检查没有问题,最后会把整个安装目录删除。 ( 18:34) 软件自动生成的txt、ini文件,或者复制一个文件到这个安装目录下在卸载时都不能删除,我发现有人却用5.1.12版本的安装程序,不管你在安装后加入了多少文件,只要卸载,就可以把整个文件夹删除,这个不知道怎么做到的,谢谢版主的耐心解答
用户被禁言,该主题自动屏蔽!
[attachment=31645]我在站内下载的Inno Setup 5.5.3版本也一样出现这个问题,不知道怎么回事?
用户被禁言,该主题自动屏蔽!
我下载了你的程序试了一下,添加文件可以完全卸载,但是我用5.5.1版本的一样不行,不管使用版本里面的任何脚本,只要往安装目录下加入一个任意文件,就不能卸载,不知道怎么回事?[attachment=31647]
不能卸载的 setup [attachment=31648]
用户被禁言,该主题自动屏蔽!
:原封不动用你8楼的脚本,用 INNO 5.5.1 编译的安装程序没有你说的问题。 ( 18:00) 怪事了,我也是一样这样用的呀,怎么就不能完全卸载呢?
如果不需要询问用户,我一般直接用 [UninstallDelete]Type: Name: &{win}\AppName.ini&Type: Name: &{userappdata}\AppName&Type: Name: &{app}& 都可以直接删除整个目录,好像没有发现过LZ说的问题。如果有文件正被使用,系统会提示需要重新启动。
我也碰到过这个问题,安装目录下生成了新的文件之后,根目录就不能完全删除。我用的是 [UninstallDelete] Type: Name: &{app}&
:如果不需要询问用户,我一般直接用 Type: Name: &{win}\AppName.ini&Type: Name: &{userappdata}\AppName&....... ( 00:12) 也没有用,不知道到底是怎么一回事?它只能卸载已安装的文件
:如果不需要询问用户,我一般直接用 Type: Name: &{win}\AppName.ini&Type: Name: &{userappdata}\AppName&....... ( 00:12) 应该是wanfu说的那样&&可能卸载时,当中某个文件在被调用照成的。
查看完整版本: [--
Powered by
Time 0.059489 second(s),query:2 Gzip disabledinno setup打包的时候最后想强制执行三个.bat文件,现在是默认打上这三个钩,但是现在不想让别人修改?_百度知道还没有帐号? 赶紧
日志用户版块群组帖子
INNO SETUP卸载时为什么不能强制删除安装目录
UID:221355
在线时间81小时
金钱210威望21
[code] procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);beginif CurUninstallStep = usUninstall thenif
MsgBox('您是否要删除用户配置信息?', mbConfirmation, MB_YESNO) = IDYES then//删除 {app} 文件夹及其中所有文件DelTree(ExpandConstant('{app}'), True, True, True);后生成的文件我添加了上面这些代码,怎么仍然不能卸载?求解、、、、、
在线时间407小时
金钱-8279威望-828
用户被禁言,该主题自动屏蔽!
UID:221355
在线时间81小时
金钱210威望21
回 1楼(gnatix) 的帖子
:代码本身没有问题。不过这个操作最好放到卸载结束时执行,即if CurUninstallStep = usDone then ( 15:10) procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);beginif CurUninstallStep = usDone thenif MsgBox('您是否要删除用户配置信息?', mbConfirmation, MB_YESNO) = IDYES then//删除 {app} 文件夹及其中所有文件DelTree(ExpandConstant('{app}'), True, True, True);// 以下为引用该示例脚本显示如何自定义卸载文件的名称(原版默认为 unins000.exe,unins001.exe 等等)。procedure CurStepChanged(CurStep: TSetupStep);varuninspath, uninsname, NewUninsName, MyAppName:beginif CurStep=ssDone thenbegin// 指定新的卸载文件名(不包含扩展名),请相应修改!NewUninsName := '卸载';// 应用程序名称,与 [SEUTP] 段的 AppName 必须一致,请相应修改!MyAppName := '自定义卸载文件名示例程序';// 以下重命名卸载文件uninspath:= ExtractFilePath(ExpandConstant('{uninstallexe}'));uninsname:= Copy(ExtractFileName(ExpandConstant('{uninstallexe}')),1,8);RenameFile(uninspath + uninsname + '.exe', uninspath + NewUninsName + '.exe');RenameFile(uninspath + uninsname + '.dat', uninspath + NewUninsName + '.dat');// 以下修改相应的注册表内容if RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1') thenbeginRegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'UninstallString', '&' + uninspath + NewUninsName + '.exe&');RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'QuietUninstallString', '&' + uninspath + NewUninsName + '.exe& /SILENT');我加了,仍然不能卸载,版主帮我看看,怎么回事儿?
在线时间407小时
金钱-8279威望-828
用户被禁言,该主题自动屏蔽!
UID:221355
在线时间81小时
金钱210威望21
回 3楼(gnatix) 的帖子
:你说的“不能卸载”指什么?我检查没有问题,最后会把整个安装目录删除。 ( 18:34) 软件自动生成的txt、ini文件,或者复制一个文件到这个安装目录下在卸载时都不能删除,我发现有人却用5.1.12版本的安装程序,不管你在安装后加入了多少文件,只要卸载,就可以把整个文件夹删除,这个不知道怎么做到的,谢谢版主的耐心解答
在线时间407小时
金钱-8279威望-828
用户被禁言,该主题自动屏蔽!
UID:221355
在线时间81小时
金钱210威望21
回 5楼(gnatix) 的帖子
=700) window.open('http://bbs.hanzify.org/attachment/48_221355_fc7.jpg?76');" style="max-width:700max-height:700" onload="if(is_ie6&&this.offsetWidth>700)this.width=700;" >我在站内下载的Inno Setup 5.5.3版本也一样出现这个问题,不知道怎么回事?
在线时间407小时
金钱-8279威望-828
用户被禁言,该主题自动屏蔽!
UID:221355
在线时间81小时
金钱210威望21
回 7楼(gnatix) 的帖子
我下载了你的程序试了一下,添加文件可以完全卸载,但是我用5.5.1版本的一样不行,不管使用版本里面的任何脚本,只要往安装目录下加入一个任意文件,就不能卸载,不知道怎么回事? (328 K) 下载次数:5
UID:221355
在线时间81小时
金钱210威望21
不能卸载的 setup
(289 K) 下载次数:4
访问内容超出本站范围,不能确定是否安全
Powered by & Copyright Time now is:08-31 01:07 &
版权所有 Gzip disabled
Total 0.145306(s) query 6,Inno Setup5 如何更改卸载图标(我做出来的安装程序和卸载的一样)我想把卸载图标换成别的。_百度知道用inno setup如何让程序在安装后删除安装文件夹中无用的文件?_百度知道

我要回帖

 

随机推荐