aboutsummaryrefslogtreecommitdiffstats
path: root/Installer/settings/functions.nsh
diff options
context:
space:
mode:
authorjaybinks <jaybinks@b956fd51-792f-4845-bead-9b4dfca2ff2c>2007-11-01 11:34:43 +0000
committerjaybinks <jaybinks@b956fd51-792f-4845-bead-9b4dfca2ff2c>2007-11-01 11:34:43 +0000
commitee4020d458bf0922f4f18c3b52161b55592f6ba9 (patch)
tree5b518bc2a842a0c8fc95f082abcae4f70cfbb0ad /Installer/settings/functions.nsh
parentf94239d4119164656d95dbf70321a5b17738a924 (diff)
downloadusdx-ee4020d458bf0922f4f18c3b52161b55592f6ba9.tar.gz
usdx-ee4020d458bf0922f4f18c3b52161b55592f6ba9.tar.xz
usdx-ee4020d458bf0922f4f18c3b52161b55592f6ba9.zip
changes for jira:USDX-141
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.01@545 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Installer/settings/functions.nsh')
-rw-r--r--Installer/settings/functions.nsh76
1 files changed, 76 insertions, 0 deletions
diff --git a/Installer/settings/functions.nsh b/Installer/settings/functions.nsh
new file mode 100644
index 00000000..03dcf7f4
--- /dev/null
+++ b/Installer/settings/functions.nsh
@@ -0,0 +1,76 @@
+!define exe2 "USdx" ; Current name of start exe
+; Creates Desktop Shortcut(s) if
+; checked on Finish Page
+
+Function CreateDesktopShortCuts
+
+CreateShortcut "$Desktop\$(sm_shortcut).lnk" "$INSTDIR\${exe2}.exe"
+
+FunctionEnd
+
+; Deletes only empty dirs which are
+; at the top of the stack.
+
+Function un.DeleteIfEmpty
+ FindFirst $R0 $R1 "$0\*.*"
+ strcmp $R1 "." 0 NoDelete
+ FindNext $R0 $R1
+ strcmp $R1 ".." 0 NoDelete
+ ClearErrors
+ FindNext $R0 $R1
+ IfErrors 0 NoDelete
+ FindClose $R0
+ Sleep 1000
+ RMDir "$0"
+ NoDelete:
+ FindClose $R0
+FunctionEnd
+
+; This is used to write a
+; string to config.ini
+
+Function WriteToConfig
+ Exch $0
+ Exch
+ Exch $1
+
+ FileOpen $0 $0 a
+ FileSeek $0 0 END
+ FileWrite $0 $1
+ FileClose $0
+
+ Pop $1
+ Pop $0
+FunctionEnd
+
+!macro WriteToConfig String File
+ Push "${String}"
+ Push "${File}"
+ Call WriteToConfig
+!macroend
+!define WriteToConfig "!insertmacro WriteToConfig"
+
+; Finds and kills UltraStar Deluxe process
+;
+
+!define nsProcess::FindProcess `!insertmacro nsProcess::FindProcess`
+
+!macro nsProcess::FindProcess _FILE _ERR
+ nsProcess::_FindProcess /NOUNLOAD `${_FILE}`
+ Pop ${_ERR}
+!macroend
+
+
+!define nsProcess::KillProcess `!insertmacro nsProcess::KillProcess`
+
+!macro nsProcess::KillProcess _FILE _ERR
+ nsProcess::_KillProcess /NOUNLOAD `${_FILE}`
+ Pop ${_ERR}
+!macroend
+
+
+!define nsProcess::Unload `!insertmacro nsProcess::Unload`
+
+!macro nsProcess::Unload
+ nsProcess::_Unload
+!macroend \ No newline at end of file