NSIS覆盖快捷方式
有没有办法告诉NSIS不要覆盖我的“开始”菜单快捷方式。我不想让它覆盖的原因是,当用户升级到新版本时,他们的命令行选项不会被清除。我试过了,但没有用:NSIS覆盖快捷方式,nsis,Nsis,有没有办法告诉NSIS不要覆盖我的“开始”菜单快捷方式。我不想让它覆盖的原因是,当用户升级到新版本时,他们的命令行选项不会被清除。我试过了,但没有用: Section -AdditionalIcons SetOverwrite off CreateDirectory "${START_MENU_DIR}" CreateShortCut "${START_MENU_LNK}" "$INSTDIR\${PRODUCT_NAME}.exe" SectionEnd 你为什么不能直接和我核
Section -AdditionalIcons
SetOverwrite off
CreateDirectory "${START_MENU_DIR}"
CreateShortCut "${START_MENU_LNK}" "$INSTDIR\${PRODUCT_NAME}.exe"
SectionEnd
你为什么不能直接和我核实一下
如果您想全力以赴,您可以更新路径和工作目录,但保留参数和图标,但要做到这一点,您必须自己调用IShellLink COM接口(使用系统插件或自定义插件/应用)以下是一个有效的示例:
Section -AdditionalIcons
CreateDirectory "${START_MENU_DIR}"
IfFileExists "${START_MENU_LNK}" SkipShortcut
CreateShortCut "${START_MENU_LNK}" "$INSTDIR\${PRODUCT_NAME}.exe"
SkipShortcut:
SectionEnd
是的,谢谢。我昨晚才意识到。它工作得很好。我把一些示例代码作为另一个答案。