nsis 卸载程序不会删除链接

标签 nsis shortcut uninstallation

我有这个问题:
在安装程序部分我有这个;

Section "Start Menu Shortcuts"
    SetShellVarContext current
    CreateDirectory "$SMPROGRAMS\myProgram"
    CreateShortCut "$SMPROGRAMS\myProgram\myProgram.lnk" "$INSTDIR\myProgram.exe" 
    CreateShortCut "$SMPROGRAMS\myProgram\Uninstall myProgram.lnk" "$INSTDIR\myProgram-Uninstall.exe"
SectionEnd

Section "Desktop Shortcut"
    SetShellVarContext current
    CreateShortCut "$DESKTOP\myProgram.lnk" "$INSTDIR\myProgram.exe"
SectionEnd

它工作正常,我有桌面上的图标和图标加上开始\程序...树上的卸载图标

卸载程序部分是这样的:
SetShellVarContext current
Delete "$DESKTOP\myProgram.lnk"
Delete "$SMPROGRAMS\myProgram\myProgram.lnk"
Delete "$SMPROGRAMS\myProgram\Uninstall myProgram.lnk"
RMDir "$SMPROGRAMS\myProgram"

并且桌面链接已删除,但带有链接的其他文件夹没有..
有任何想法吗?

存储的文件夹是这个(我在win 7 64位):
C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs

最佳答案

你有没有RequestExecutionLevel在你的脚本中?没有它,Windows 可能会做一些 compatibility hacks用你的快捷方式。

如果这没有帮助,请尝试 Process Monitor ,或许能对这个问题有所启发……

关于nsis 卸载程序不会删除链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15069932/

相关文章:

mysql - 启动可能与现有服务存在端口冲突的服务

electron - 激活 Electron 生成器NSIS安装程序中的日志记录

r - 在 R 中将复制的文本转换为字符串的快速方法?

javascript - 有选择地启用 HTML 文本区域中的回车键(javascript)

ruby-on-rails - 从 UBUNTU 14.0.4 LTS 卸载 Ruby 时出错

NSIS - 删除除一个文件之外的所有文件

nsis - 如何在 NSIS 中获取命令输出?

ios - 从自定义快捷操作中传递参数

xcode - 如何卸载旧版本的 Xcode

eclipse - 如何从Juno卸载Egit功能?