如何检查NSIS中是否存在startmenu?

时间:2013-09-18 09:12:26

标签: nsis

我使用以下代码创建了快捷菜单文件夹。在我的脚本中包含修复选项。 如果用户安装第二次修复选项工作正常。第二次用户选择与现有快捷菜单不同的快捷菜单。在这种情况下,创建了两个快捷菜单目录。

 CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
 CreateShortCut "$SMPROGRAMS\$StartMenuFolder\Uninstall.lnk" "$INSTDIR\Uninstall.exe"

那么如果用户第二次安装需要检查快捷菜单是否存在?

如何检查已存在的快捷菜单?

1 个答案:

答案 0 :(得分:0)

我真的不明白这个问题或修复功能是什么,但是您可以检查IfFileExists是否存在文件/文件夹。

我怀疑真正的问题是,当您再次运行安装程序时,不会恢复$ StartMenuFolder变量。如果您正在使用MUI,它有可以帮助您执行此操作的宏,如果不是,您需要在安装期间将$ StartMenuFolder写入注册表或.ini文件并尝试在.onInit中恢复它...