Inno setup 制作安装包桌面快捷方式没有更换,还是以前旧的

xinjichang 2016-06-20 10:53:30
最近在用Inno setup制作升级包,但是在创建桌面快捷方式的时候发现:显示的快捷方式还是之前的快捷方式,右键看快捷方式的属性,图片是对的,不知道为什么会还是显示之前的快捷方式,是不是windows快捷方式有缓存啊?怎么在Inno setup中清除快捷方式的缓存?
各位大神,小弟首次接触Inno setup,请指教!!!!!
...全文
2423 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
yeqingbo2010 2016-08-10
  • 打赏
  • 举报
回复
我找到了这个问题的解决方案,就是你要自己再Icon字段里面制定图标资源文件,附上我的代码:
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon;IconFilename: "{app}\m.ico"
;Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
yeqingbo2010 2016-08-09
  • 打赏
  • 举报
回复
楼主太自私了,自己解决问题就不管了。
changcheng5555 2016-07-22
  • 打赏
  • 举报
回复
楼主怎么解决的!贴出方法供学习学习!感谢
「已注销」 2016-07-05
  • 打赏
  • 举报
回复
引用 18 楼 xinjichang 的回复:
我好像发现了问题所在: [Icons] Name: "{group}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{group}\{cm:UninstallProgram,{cm:AppName}}"; Filename: "{uninstallexe}" Name: "{commondesktop}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}" 这是个创建图标快捷方式的代码,是不是因为这个commondesktop创建了桌面快捷方式,我需要删除所有用户的桌面快捷方式啊?大神们 求解啊
跟这个无关,不管你在哪里创建,Inno Setup 的 log 会自动记录路径并删除的。
xinjichang 2016-07-01
  • 打赏
  • 举报
回复
我好像发现了问题所在: [Icons] Name: "{group}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{group}\{cm:UninstallProgram,{cm:AppName}}"; Filename: "{uninstallexe}" Name: "{commondesktop}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}" 这是个创建图标快捷方式的代码,是不是因为这个commondesktop创建了桌面快捷方式,我需要删除所有用户的桌面快捷方式啊?大神们 求解啊
xinjichang 2016-07-01
  • 打赏
  • 举报
回复
已经解决了,出了问题还是要靠自己啊
xinjichang 2016-06-30
  • 打赏
  • 举报
回复
引用 16 楼 zgl7903 的回复:
卸载是否干净? 是否是其他用户桌面上还有残余?


卸载干净了,桌面上的快捷方式都卸载掉了
可是还出现
zgl7903 2016-06-30
  • 打赏
  • 举报
回复
卸载是否干净? 是否是其他用户桌面上还有残余?
xinjichang 2016-06-30
  • 打赏
  • 举报
回复
引用 14 楼 zgl7903 的回复:
是否可以先删除或卸载原来的程序图标等?
升级包就是这样做的,先卸载原来的旧文件和旧的快捷方式,然后再安装新的文件和快捷方式的
zgl7903 2016-06-30
  • 打赏
  • 举报
回复
是否可以先删除或卸载原来的程序图标等?
xinjichang 2016-06-30
  • 打赏
  • 举报
回复
自己顶一下,路过大神帮忙看下
xinjichang 2016-06-27
  • 打赏
  • 举报
回复
自顶下!!!!!
xinjichang 2016-06-24
  • 打赏
  • 举报
回复
引用 10 楼 SXJIAKE 的回复:
Inno Setup 在有 Icons 段的情况下,会调用刷新图标功能。
如果你安装指定了图标都无效,那我上面提到的代码不用去试了。


我这里是有ICON段的:
[Icons]
Name: "{group}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{group}\{cm:UninstallProgram,{cm:AppName}}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
;Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{cm:AppName}"; Filename: "{app}\{#MyAppExeName}"


而且有效
「已注销」 2016-06-24
  • 打赏
  • 举报
回复
Inno Setup 在有 Icons 段的情况下,会调用刷新图标功能。 如果你安装指定了图标都无效,那我上面提到的代码不用去试了。
「已注销」 2016-06-24
  • 打赏
  • 举报
回复
这个应该是操作系统的问题。实际上,Windows 系统还是 XP 的 bug 最少。至少我发现,从 Windows 7 到 Windows 10 无一不例外的都有图标缓存刷新缓慢的问题。Vista 由于用得少,不知道是否存在该问题。比如你作为开发者,将一个程序的图标替换了,重新编译后,你会发现在资源管理器中,你之前默认视图下那个尺寸的图标显示的还是旧的,如果你切换到其他视图,比如大图标模式,又正确了。如果你双击程序,并且你的程序在任务栏有图标,那个图标可能还是旧的,即便你注销登录之后再进来,资源管理器的图标可能会正常,但任务栏的图标很大可能依然还是不会更新。桌面图标的缓存刷新可以用: SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL); 如果这个方法都不能解决问题,那就是 Windows 6.x 的 bug 了。你可以试试看 XP 是否存在这个问题。
xinjichang 2016-06-24
  • 打赏
  • 举报
回复
路过的大神帮忙看下啊,帖子要沉了
xinjichang 2016-06-22
  • 打赏
  • 举报
回复
引用 6 楼 Dobzhansky 的回复:
windows 有缓存, 需要重启或刷新
我重启了,不管用,windows记住了这个logo文件,我怎么能在安装包中把自身的logo缓存去掉呢?
Dobzhansky 2016-06-22
  • 打赏
  • 举报
回复
windows 有缓存, 需要重启或刷新
xinjichang 2016-06-22
  • 打赏
  • 举报
回复
各位路过的大神帮忙看下
xinjichang 2016-06-21
  • 打赏
  • 举报
回复
引用 3 楼 draculacsdn 的回复:
将 FileName := 'Human.mdb'; 改为: FileName := ExtractFilePath(ParamStr(0)) + 'Human.mdb';
不明白楼上的意思,你这个是Inno Setup吗?而且我这里没有FileName := 'Human.mdb'这句
加载更多回复(3)
Inno Setup 是一个免费的安装制作软件,小巧、简便、精美是其最大特点,支持pascal脚本,能快速制作出标准Windows2000风格的安装界面,足以完成一般安装任务。该软件用Delphi写成,其官方网站同时也提供源程序免费下载。它虽不能与Installshield这类恐龙级的安装制作软件相比,但也当之无愧算是后起之秀。 支持现在所有正在使用的 Windows 版本: 10,8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP, Windows Server 2003, 和 Windows 2000。(不需要服务包。)   广泛支持在 64 位 的 Windows XP and Windows Server 2003 版本的操作系统中的 64 位应用程序安装。支持 x64 和 Itanium 两个结构。(在 Itanium 结构中,必须在 64 位模式安装 Service Pack 1。   支持创建单个 EXE 格式的安装程序,使你的程序可以很方便地在网络上发表。同时也支持磁盘延伸。   标准的 Windows 2000/XP 样式向导界面。   定制安装类型,例如:完整安装,最小安装,自定义安装。   完整的卸载功能。   文件安装:   包括完全的“压缩”支持,bzip2 和 7-Zip LZMA/LZMA2 文件压缩。安装程序可以比较文件版本信息,替换正在使用的文件,使用共享文件计数,注册 DLL/OCX 和类型库,以及安装字体。   可以在任意地方创建快捷方式,包括开始菜单和桌面。   创建注册表 和 .INI 条目。   Running other programs before, during or after install。   支持多语言安装,including right-to-left language support.   支持密码和加密安装。   支持 数字签名 安装和卸载。   后台安装和后台卸载。   Uni code 安装。   Integrated preprocessor option for advanced compile-time customization.   完整的 Pascal 脚本 引擎选项于运行期高级自定义安装和卸载。   全部源代码公开 (Borland Delphi 2.0-5.0 和 2009)。

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧