Create Internet Shorcuts during installation: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
Line 15: Line 15:
; URLDesc = The description of our shortcut, when mouse hoover it.
; URLDesc = The description of our shortcut, when mouse hoover it.


Name "Create Internet Shorcut"
Name "Create Internet Shortcut"
OutFile "makeURL.exe"
OutFile "makeURL.exe"


Line 45: Line 45:
Also it's enough to create only .ini file:<br>
Also it's enough to create only .ini file:<br>
<highlight-nsis>
<highlight-nsis>
!macro "CreateURLSortCut" "URLFile" "URLSite" "URLDesc"
!macro "CreateURLShortCut" "URLFile" "URLSite" "URLDesc"
   WriteINIStr "${URLFile}.URL" "InternetShortcut" "URL" "${URLSite}"
   WriteINIStr "${URLFile}.URL" "InternetShortcut" "URL" "${URLSite}"
!macroend
!macroend

Revision as of 17:44, 8 May 2009

Author: Joel (talk, contrib)


The Script

; This Macro will create a Internet Shorcut (*.url).
; Well, you might created first then compile it.
; But, let's create a few during installation. :)
; This example put the Internet Shortcut in the $EXEDIR
; with a shortcut in the $DESKTOP.
; Modify the macro according to your needs.
; Created by Joel
; Notes:
; URLFile = The name of our .url file.
; URLSite = The url to the site.
; URLDesc = The description of our shortcut, when mouse hoover it.
 
Name "Create Internet Shortcut"
OutFile "makeURL.exe"
 
!Macro "CreateURL" "URLFile" "URLSite" "URLDesc"
  WriteINIStr "$EXEDIR\${URLFile}.URL" "InternetShortcut" "URL" "${URLSite}"
  SetShellVarContext "all"
  CreateShortCut "$DESKTOP\${URLFile}.lnk" "$EXEDIR\${URLFile}.url" "" \
                 "$EXEDIR\makeURL.exe" 0 "SW_SHOWNORMAL" "" "${URLDesc}"
!macroend
 
Function ".onInit"
  !insertmacro "CreateURL" "Nsis Website" "http://nsis.sf.net" "Visit NSIS Website"
  MessageBox MB_OK "Done"
  Quit
FunctionEnd
 
Section "-boo"
;
SectionEnd


Note:
Internet Shortcut file extension MUST be capitalized, e.g:
SomeSite.url <--- error
SomeSite.URL <--- works

Also it's enough to create only .ini file:

!macro "CreateURLShortCut" "URLFile" "URLSite" "URLDesc"
  WriteINIStr "${URLFile}.URL" "InternetShortcut" "URL" "${URLSite}"
!macroend


It will be valid shortcut for valid browser with valid icon.