卸载时无法删除快捷方式

nsis权限问题
在Vista,Win7,Win8中,卸载程序无法删除快捷方式,是因为权限不够,卸载程序需要管理员权限;NSIS提供了RequestExecutionLevel函数用于提升权限,该函数使用方法:
RequestExecutionLevel none|user|highest|admin,在这里,我们只需要在NSIS代码中添加下列语句:

RequestExecutionLevel admin

再重新编译脚本,就可以正常卸载 开始—>程序 中的快捷方式了。

win7帐户问题
Windows常几的有当前用户,和所有用户有些程序会将快捷方式创建在所有帐户下面,因此导致nsis中快捷方式删除了的情况,解决办法:

SetShellVarContext all
 Delete "$DESKTOP/永恒心锁.lnk"
 SetShellVarContext current
 Delete "$DESKTOP/永恒心锁.lnk"

这样将两个常见的帐户都删除一次,问题多半能够解决.

THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容