NSIS打包,发现
StrCmp $FastIconState "1" "" +2
CreateShortCut "$QUICKLAUNCH\${NAME_CHINESE}.lnk" "$INSTDIR\XMusic.exe"
仅在XP下有效,WIN7下无效
原来XP和WIN7快速启动栏放的位置不一样
XP 下是在X:\Users\<User Name>\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch
而WIN7是在
X:\Users\<User Name>\AppData\Roaming\Microsoft\Internet
Explorer\Quick Launch\User Pinned\TaskBar
so。。。
ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "CurrentVersion"
${if} $R0 >= 6.0
SetOutPath $WINDIR
CreateShortcut "$DESKTOP\${NAME_CHINESE}.lnk" "$INSTDIR\test.exe"
ExecShell taskbarpin "$DESKTOP\${NAME_CHINESE}.lnk"
${else}
StrCmp $FastIconState "1" "" +2
CreateShortCut "$QUICKLAUNCH\${NAME_CHINESE}.lnk" "$INSTDIR\test.exe"
${Endif}
卸载的时候
ReadRegStr $R0
HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "CurrentVersion"
${if} $R0 >= 6.0
ExecShell taskbarunpin "$DESKTOP\${NAME_CHINESE}.lnk"
Delete "$DESKTOP\${NAME_CHINESE}.lnk"
${else}
Delete "$QUICKLAUNCH\${NAME_CHINESE}.lnk"
${Endif}
本文详细解析了使用NSIS打包软件在XP和Win7系统下创建快捷方式的不同步骤,并针对不同系统提供了相应的代码实现,确保软件在不同操作系统中都能正常运行。
4826

被折叠的 条评论
为什么被折叠?



