1
0
Fork 0
arangodb/Installation/Windows/Plugins/OpenLink.nsh

50 lines
883 B
Plaintext

;--------------------------------
; Open a URL in a browser.
; http://nsis.sourceforge.net/Open_link_in_new_browser_window
Function openLinkNewWindow
Push $3
Exch
Push $2
Exch
Push $1
Exch
Push $0
Exch
ReadRegStr $0 HKCR "http\shell\open\command" ""
; Get browser path
DetailPrint $0
StrCpy $2 '"' ;"
StrCpy $1 $0 1
StrCmp $1 $2 +2 ; if path is not enclosed in " look for space as final char
StrCpy $2 ' '
StrCpy $3 1
loop:
StrCpy $1 $0 1 $3
DetailPrint $1
StrCmp $1 $2 found
StrCmp $1 "" found
IntOp $3 $3 + 1
Goto loop
found:
StrCpy $1 $0 $3
StrCmp $2 " " +2
StrCpy $1 '$1"' ;"
Pop $0
Exec '$1 $0'
Pop $0
Pop $1
Pop $2
Pop $3
FunctionEnd
!macro _OpenURL URL
Push "${URL}"
Call openLinkNewWindow
!macroend
!define OpenURL '!insertmacro "_OpenURL"'