如果$R0 >= 6.0就是win7以上的版本,否则就是win7以下的版本
;创建快捷方式
Function CreateBarlnk
ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "CurrentVersion"
${if} $R0 >= 6.0
SetOutPath $INSTDIR
CreateShortCut "$DESKTOP\Test.lnk" "$INSTDIR\Test.exe" ; ; 注意这句与下一句是有先后顺序的
ExecShell taskbarpin "$DESKTOP\Test.lnk"
${else}
CreateShortCut "$QUICKLAUNCH\Test.lnk" "$INSTDIR\Test.exe"
${Endif}
FunctionEnd
;卸载时删除快捷方式
Function un.DelBarlnk
ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "CurrentVersion"
${if} $R0 >= 6.0
ExecShell taskbarunpin "$DESKTOP\Test.lnk"
Delete "$DESKTOP\Test.lnk"
${else}
delete "$QUICKLAUNCH\Test.lnk"
${Endif}
FunctionEnd
注意事项:
1、在安装的时候调用:Call CreateBarlnk
2、在卸载的时候调用:Call un.DelBarlnk
3、其中要注意的是:Call un.DelBarlnk不要放太后面,要不然会快捷方式卸载不成功,原因暂时不明,最好放在Section Uninstall的第一行。
本文介绍了一种判断Windows系统版本的方法,并提供了在安装和卸载过程中为应用程序创建和删除桌面及快速启动栏快捷方式的示例。特别针对Windows 7及以上版本的任务栏固定功能进行了说明。
1738

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



