1
; NSIS Script for RasMol RasWin 2.7.4 windows install
2
; H. J. Bernstein, yaya at bernstein-plus-sons dot com
5
; >>> Include the modern user interface
7
!include "Sections.nsh"
8
!include "LogicLib.nsh"
10
; >>> Name the package, file and default install directory
11
Name "RasMol -- RasWin 2.7.4"
12
OutFile "RasWin_2_7_4_Install.exe"
13
InstallDir "$PROGRAMFILES\RasWin"
14
InstallDirRegKey HKLM "Software\RasWin" ""
16
!define MUI_ABORTWARNING
17
!define MUI_LANGDLL_REGISTRY_ROOT "HKLM"
18
!define MUI_LANGDLL_REGISTRY_KEY "Software\RasWin"
19
!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
20
!define MUI_LANGDLL_ALWAYSSHOW
21
!define MUI_COMPONENTSPAGE_SMALLDESC
25
; >>> insert the bits and pieces we want
26
!insertmacro MUI_PAGE_LICENSE "..\..\doc\Licenses.txt"
27
!insertmacro MUI_PAGE_COMPONENTS
28
!insertmacro MUI_PAGE_DIRECTORY
29
!insertmacro MUI_PAGE_INSTFILES
31
!insertmacro MUI_UNPAGE_CONFIRM
32
!insertmacro MUI_UNPAGE_INSTFILES
34
; >> set up the languages
36
!insertmacro MUI_LANGUAGE "English"
37
!insertmacro MUI_LANGUAGE "French"
38
!insertmacro MUI_LANGUAGE "German"
39
!insertmacro MUI_LANGUAGE "Italian"
40
!insertmacro MUI_LANGUAGE "Spanish"
41
!insertmacro MUI_LANGUAGE "Russian"
42
!insertmacro MUI_LANGUAGE "Bulgarian"
43
!insertmacro MUI_LANGUAGE "SimpChinese"
44
!insertmacro MUI_LANGUAGE "Japanese"
46
!insertmacro MUI_RESERVEFILE_LANGDLL
49
; >>> The actual installer
52
InstType "Without .scr and .ras extensions"
53
InstType "Without rasmol.ini"
55
Section "Install RasMol -- RasWin 2.7.4" SecInstRasWin
59
SetShellVarContext all
61
File "..\..\doc\RasMolReferenceCard.pdf"
63
File "..\..\doc\GPL.txt"
64
File "..\..\doc\NOTICE.txt"
65
File "..\..\doc\RASLIC.txt"
66
File "..\..\doc\rasmol.hlp"
67
File "..\..\doc\raswin.hlp"
71
WriteRegStr SHCTX "Software\RasWin" "" $INSTDIR
72
WriteUninstaller "$INSTDIR\Uninstall.exe"
75
"Software\Microsoft\Windows\CurrentVersion\Uninstall\RasWin" \
76
"DisplayName" "RasWin (remove only)"
78
"Software\Microsoft\Windows\CurrentVersion\Uninstall\RasWin" \
79
"UninstallString" "$INSTDIR\Uninstall.exe"
81
; >>> start-menu items
82
SetShellVarContext all
83
CreateDirectory "$SMPROGRAMS\RasWin"
84
CreateShortCut "$SMPROGRAMS\RasWin\Uninstall.lnk" \
85
"$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0
86
CreateShortCut "$SMPROGRAMS\RasWin\RasWin.lnk" \
87
"$INSTDIR\RasWin.exe" "" "$INSTDIR\RasWin.exe" 0
90
; >>> environment variable
98
Section "Install G. A. Pozhvanov's INI for initial file display" SecInstINI
102
SetShellVarContext all
103
SetOutPath "$INSTDIR"
109
Section "Place RasWin Shortcut on Desktop" SecShortcut
113
SetShellVarContext all
115
CreateShortCut "$DESKTOP\RasWin.lnk" "$INSTDIR\RasWin.exe"
119
SectionGroup "File Extensions" SecFileExt
121
Section "Register .pdb file extension" SecRegPDB
125
WriteRegStr HKCR ".pdb" "" "RasWin.Document"
128
Section "Register .ent file extension" SecRegENT
132
WriteRegStr HKCR ".ent" "" "RasWin.Document"
135
Section "Register .cif file extension" SecRegCIF
139
WriteRegStr HKCR ".cif" "" "RasWin.Document"
142
Section "Register .scr file extension" SecRegSCR
146
WriteRegStr HKCR ".scr" "" "RasWin.Script"
149
Section "Register .spt file extension" SecRegSPT
153
WriteRegStr HKCR ".spt" "" "RasWin.Script"
156
Section "Register .rsm file extension" SecRegRSM
160
WriteRegStr HKCR ".rsm" "" "RasWin.Script"
163
Section "Register .rsml file extension" SecRegRSML
167
WriteRegStr HKCR ".rsml" "" "RasWin.Script"
170
Section "Register .ras file extension" SecRegRAS
174
WriteRegStr HKCR ".ras" "" "RasWin.Script"
178
Section "Define RasWin Document Type" SecDocType
182
WriteRegStr HKCR "RasWin.Document" "" "RasMol RasWin Document"
183
WriteRegStr HKCR "RasWin.Document\DefaultIcon" "" "$INSTDIR\raswin.exe,1"
184
ReadRegStr $R0 HKCR "RasWin.Document\shell\open\command" ""
185
StrCmp $R0 "" 0 no_rdocopen
186
WriteRegStr HKCR "RasWin.Document\shell" "" "open"
187
WriteRegStr HKCR "RasWin.Document\shell\open\command" "" '$INSTDIR\RasWin.exe "%1"'
189
WriteRegStr HKCR "RasWin.Script" "" "RasMol RasWin Script"
190
WriteRegStr HKCR "RasWin.Script\DefaultIcon" "" "$INSTDIR\raswin.exe,2"
191
StrCmp $R0 "" 0 no_rscropen
192
WriteRegStr HKCR "RasWin.Script\shell" "" "open"
193
WriteRegStr HKCR "RasWin.Script\shell\open\command" "" '$INSTDIR\RasWin.exe -script "%1"'
199
Section "Install Sample Data" SecSampData
203
CreateDirectory "$INSTDIR\Data"
204
SetOutPath "$INSTDIR\Data"
205
File "..\..\data\1crn.pdb"
206
File "..\..\data\3cro.pdb"
207
File "..\..\data\4ins.CIF"
214
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
215
!insertmacro MUI_DESCRIPTION_TEXT ${SecInstRasWin} "Basic install of RasMol RasWin executable in $INSTDIR and start menu"
216
!insertmacro MUI_DESCRIPTION_TEXT ${SecInstINI} "Install of Gregory A. Pozhvanov's rasmol.ini for initial display of files in $INSTDIR"
217
!insertmacro MUI_DESCRIPTION_TEXT ${SecShortCut} "Put a RasWin Shortcut on the Desktop"
218
!insertmacro MUI_DESCRIPTION_TEXT ${SecFileExt} "Define the .pdb, .ent, .cif, .scr, .spt, .rsm, .rsml and .ras file extensions and document types"
219
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegPDB} "Define .pdb file extension as RasWin.Document"
220
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegENT} "Define .ent file extension as RasWin.Document"
221
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegCIF} "Define .cif file extension as RasWin.Document"
222
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegSCR} "Define .scr file extension as RasWin.Script"
223
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegSPT} "Define .spt file extension as RasWin.Script"
224
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRSM} "Define .rsm file extension as RasWin.Script"
225
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRSML} "Define .rsml file extension as RasWin.Script"
226
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRAS} "Define .ras file extension as RasWin.Script"
227
!insertmacro MUI_DESCRIPTION_TEXT ${SecDoctype} "Define RasMol RasWin Document (RasWin.Document) and Script (RasWin.Script) types"
228
!insertmacro MUI_DESCRIPTION_TEXT ${SecSampData} "Install sample data files in $INSTDIR\Data"
229
!insertmacro MUI_FUNCTION_DESCRIPTION_END
232
; >>> Installer Functions
235
!insertmacro MUI_LANGDLL_DISPLAY
238
Function .onInstSuccess
239
MessageBox MB_OK "You have successfully installed RasWin."
246
; >>> Uninstaller Section
249
SetShellVarContext all
250
Delete "$INSTDIR\RasMolReferenceCard.pdf"
251
Delete "$INSTDIR\rasmol.ini"
252
Delete "$INSTDIR\raswin.exe"
253
Delete "$INSTDIR\GPL.txt"
254
Delete "$INSTDIR\NOTICE.txt"
255
Delete "$INSTDIR\RASLIC.txt"
256
Delete "$INSTDIR\rasmol.hlp"
257
Delete "$INSTDIR\raswin.hlp"
258
Delete "$INSTDIR\raswin.ico"
259
Delete "$INSTDIR\raswin_doc.ico"
260
Delete "$INSTDIR\raswin_scr.ico"
261
Delete "$DESKTOP\RasWin.lnk"
262
Delete "$SMPROGRAMS\RasWin\*.*"
263
RmDir "$SMPROGRAMS\RasWin"
264
Delete "$INSTDIR\Data\1crn.pdb"
265
Delete "$INSTDIR\Data\3cro.pdb"
266
Delete "$INSTDIR\Data\4ins.CIF"
267
RmDir "$INSTDIR\Data"
269
Delete "$INSTDIR\Uninstall.exe"
271
DeleteRegKey /ifempty SHCTX "Software\RasWin"
272
DeleteRegKey SHCTX "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RasWin"
273
DeleteRegKey HKCR "RasWin.Document\shell\open\command"
274
DeleteRegKey HKCR "RasWin.Document\shell"
275
DeleteRegKey HKCR "RasWin.Document\DefaultIcon"
276
DeleteRegKey HKCR "RasWin.Document"
277
DeleteRegKey HKCR "RasWin.Script\shell\open\command"
278
DeleteRegKey HKCR "RasWin.Script\shell"
279
DeleteRegKey HKCR "RasWin.Script\DefaultIcon"
280
DeleteRegKey HKCR "RasWin.Script"
282
ReadRegStr $R0 HKCR ".pdb" ""
283
StrCmp $R0 "RasWin.Document" 0 +2
284
DeleteRegKey HKCR ".pdb"
286
ReadRegStr $R0 HKCR ".ent" ""
287
StrCmp $R0 "RasWin.Document" 0 +2
288
DeleteRegKey HKCR ".ent"
290
ReadRegStr $R0 HKCR ".cif" ""
291
StrCmp $R0 "RasWin.Document" 0 +2
292
DeleteRegKey HKCR ".cif"
294
ReadRegStr $R0 HKCR ".scr" ""
295
StrCmp $R0 "RasWin.Script" 0 +2
296
DeleteRegKey HKCR ".scr"
298
ReadRegStr $R0 HKCR ".spt" ""
299
StrCmp $R0 "RasWin.Script" 0 +2
300
DeleteRegKey HKCR ".spt"
302
ReadRegStr $R0 HKCR ".rsm" ""
303
StrCmp $R0 "RasWin.Script" 0 +2
304
DeleteRegKey HKCR ".rsm"
306
ReadRegStr $R0 HKCR ".rsml" ""
307
StrCmp $R0 "RasWin.Script" 0 +2
308
DeleteRegKey HKCR ".rsml"
310
ReadRegStr $R0 HKCR ".ras" ""
311
StrCmp $R0 "RasWin.Script" 0 +2
312
DeleteRegKey HKCR ".ras"
322
; >>> Uninstaller Functions
325
!insertmacro MUI_UNGETLANGUAGE
328
Function un.onUninstSuccess
329
MessageBox MB_OK "You have successfully uninstalled RasWin."
332
; >>> Environment Variables Functions
336
# The following functions are from
338
# http://nsis.sourceforge.net/Setting_Environment_Variables
340
!include WinMessages.nsh
342
!ifndef WriteEnvStr_RegKey
344
!define WriteEnvStr_RegKey \
345
'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"'
347
!define WriteEnvStr_RegKey 'HKCU "Environment"'
350
# WriteEnvStr - Writes an environment variable
351
# Note: Win9x systems requires reboot
354
# Push "HOMEDIR" # name
355
# Push "C:\New Home Dir\" # value
359
Exch $1 ; $1 has environment variable value
361
Exch $0 ; $0 has environment variable name
366
StrCmp $2 1 WriteEnvStr_NT
368
StrCpy $2 $WINDIR 2 ; Copy drive of windows (c:)
369
FileOpen $2 "$2\autoexec.bat" a
371
FileWrite $2 "$\r$\nSET $0=$1$\r$\n"
374
Goto WriteEnvStr_done
377
WriteRegExpandStr ${WriteEnvStr_RegKey} $0 $1
378
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} \
379
0 "STR:Environment" /TIMEOUT=5000
388
# un.DeleteEnvStr - Removes an environment variable
389
# Note: Win9x systems requires reboot
392
# Push "HOMEDIR" # name
393
# Call un.DeleteEnvStr
395
Function un.DeleteEnvStr
396
Exch $0 ; $0 now has the name of the variable
405
StrCmp $1 1 DeleteEnvStr_NT
408
FileOpen $1 "$1\autoexec.bat" r
414
DeleteEnvStr_dosLoop:
418
StrCmp $5 $0 DeleteEnvStr_dosLoop
419
StrCmp $5 "" DeleteEnvStr_dosLoopEnd
421
Goto DeleteEnvStr_dosLoop
423
DeleteEnvStr_dosLoopEnd:
427
Delete "$1\autoexec.bat"
428
CopyFiles /SILENT $4 "$1\autoexec.bat"
430
Goto DeleteEnvStr_done
433
DeleteRegValue ${WriteEnvStr_RegKey} $0
434
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} \
435
0 "STR:Environment" /TIMEOUT=5000
450
# [un.]IsNT - Pushes 1 if running on NT, 0 if not
456
# MessageBox MB_OK "Not running on NT!"
458
# MessageBox MB_OK "Running on NT!"
464
"SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
465
StrCmp $0 "" 0 IsNT_yes
478
!insertmacro IsNT "un."
b'\\ No newline at end of file'
1
; NSIS Script for RasMol RasWin 2.7.5 windows install
2
; H. J. Bernstein, yaya at bernstein-plus-sons dot com
5
; >>> Include the modern user interface
7
!include "Sections.nsh"
8
!include "LogicLib.nsh"
10
; >>> Name the package, file and default install directory
11
Name "RasMol -- RasWin 2.7.5"
12
OutFile "RasWin_2_7_5_Install.exe"
13
InstallDir "$PROGRAMFILES\RasWin"
14
InstallDirRegKey HKLM "Software\RasWin" ""
16
!define MUI_ABORTWARNING
17
!define MUI_LANGDLL_REGISTRY_ROOT "HKLM"
18
!define MUI_LANGDLL_REGISTRY_KEY "Software\RasWin"
19
!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
20
!define MUI_LANGDLL_ALWAYSSHOW
21
!define MUI_COMPONENTSPAGE_SMALLDESC
25
; >>> insert the bits and pieces we want
26
!insertmacro MUI_PAGE_LICENSE "..\..\doc\Licenses.txt"
27
!insertmacro MUI_PAGE_COMPONENTS
28
!insertmacro MUI_PAGE_DIRECTORY
29
!insertmacro MUI_PAGE_INSTFILES
31
!insertmacro MUI_UNPAGE_CONFIRM
32
!insertmacro MUI_UNPAGE_INSTFILES
34
; >> set up the languages
36
!insertmacro MUI_LANGUAGE "English"
37
!insertmacro MUI_LANGUAGE "French"
38
!insertmacro MUI_LANGUAGE "German"
39
!insertmacro MUI_LANGUAGE "Italian"
40
!insertmacro MUI_LANGUAGE "Spanish"
41
!insertmacro MUI_LANGUAGE "Russian"
42
!insertmacro MUI_LANGUAGE "Bulgarian"
43
!insertmacro MUI_LANGUAGE "SimpChinese"
44
!insertmacro MUI_LANGUAGE "Japanese"
46
!insertmacro MUI_RESERVEFILE_LANGDLL
49
; >>> The actual installer
52
InstType "Without .scr and .ras extensions"
53
InstType "Without rasmol.ini"
55
Section "Install RasMol -- RasWin 2.7.5" SecInstRasWin
59
SetShellVarContext all
61
File "..\..\doc\RasMolReferenceCard.pdf"
63
File "..\..\doc\GPL.txt"
64
File "..\..\doc\NOTICE.txt"
65
File "..\..\doc\RASLIC.txt"
66
File "..\..\doc\rasmol.hlp"
67
File "..\..\doc\raswin.hlp"
71
WriteRegStr SHCTX "Software\RasWin" "" $INSTDIR
72
WriteUninstaller "$INSTDIR\Uninstall.exe"
75
"Software\Microsoft\Windows\CurrentVersion\Uninstall\RasWin" \
76
"DisplayName" "RasWin (remove only)"
78
"Software\Microsoft\Windows\CurrentVersion\Uninstall\RasWin" \
79
"UninstallString" "$INSTDIR\Uninstall.exe"
81
; >>> start-menu items
82
SetShellVarContext all
83
CreateDirectory "$SMPROGRAMS\RasWin"
84
CreateShortCut "$SMPROGRAMS\RasWin\Uninstall.lnk" \
85
"$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0
86
CreateShortCut "$SMPROGRAMS\RasWin\RasWin.lnk" \
87
"$INSTDIR\RasWin.exe" "" "$INSTDIR\RasWin.exe" 0
90
; >>> environment variable
98
Section "Install G. A. Pozhvanov's INI for initial file display" SecInstINI
102
SetShellVarContext all
103
SetOutPath "$INSTDIR"
109
Section "Place RasWin Shortcut on Desktop" SecShortcut
113
SetShellVarContext all
115
CreateShortCut "$DESKTOP\RasWin.lnk" "$INSTDIR\RasWin.exe"
119
SectionGroup "File Extensions" SecFileExt
121
Section "Register .pdb file extension" SecRegPDB
125
WriteRegStr HKCR ".pdb" "" "RasWin.Document"
128
Section "Register .ent file extension" SecRegENT
132
WriteRegStr HKCR ".ent" "" "RasWin.Document"
135
Section "Register .cif file extension" SecRegCIF
139
WriteRegStr HKCR ".cif" "" "RasWin.Document"
142
Section "Register .scr file extension" SecRegSCR
146
WriteRegStr HKCR ".scr" "" "RasWin.Script"
149
Section "Register .spt file extension" SecRegSPT
153
WriteRegStr HKCR ".spt" "" "RasWin.Script"
156
Section "Register .rsm file extension" SecRegRSM
160
WriteRegStr HKCR ".rsm" "" "RasWin.Script"
163
Section "Register .rsml file extension" SecRegRSML
167
WriteRegStr HKCR ".rsml" "" "RasWin.Script"
170
Section "Register .ras file extension" SecRegRAS
174
WriteRegStr HKCR ".ras" "" "RasWin.Script"
178
Section "Define RasWin Document Type" SecDocType
182
WriteRegStr HKCR "RasWin.Document" "" "RasMol RasWin Document"
183
WriteRegStr HKCR "RasWin.Document\DefaultIcon" "" "$INSTDIR\raswin.exe,1"
184
ReadRegStr $R0 HKCR "RasWin.Document\shell\open\command" ""
185
StrCmp $R0 "" 0 no_rdocopen
186
WriteRegStr HKCR "RasWin.Document\shell" "" "open"
187
WriteRegStr HKCR "RasWin.Document\shell\open\command" "" '$INSTDIR\RasWin.exe "%1"'
189
WriteRegStr HKCR "RasWin.Script" "" "RasMol RasWin Script"
190
WriteRegStr HKCR "RasWin.Script\DefaultIcon" "" "$INSTDIR\raswin.exe,2"
191
StrCmp $R0 "" 0 no_rscropen
192
WriteRegStr HKCR "RasWin.Script\shell" "" "open"
193
WriteRegStr HKCR "RasWin.Script\shell\open\command" "" '$INSTDIR\RasWin.exe -script "%1"'
199
Section "Install Sample Data" SecSampData
203
CreateDirectory "$INSTDIR\Data"
204
SetOutPath "$INSTDIR\Data"
205
File "..\..\data\1crn.pdb"
206
File "..\..\data\3cro.pdb"
207
File "..\..\data\4ins.CIF"
214
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
215
!insertmacro MUI_DESCRIPTION_TEXT ${SecInstRasWin} "Basic install of RasMol RasWin executable in $INSTDIR and start menu"
216
!insertmacro MUI_DESCRIPTION_TEXT ${SecInstINI} "Install of Gregory A. Pozhvanov's rasmol.ini for initial display of files in $INSTDIR"
217
!insertmacro MUI_DESCRIPTION_TEXT ${SecShortCut} "Put a RasWin Shortcut on the Desktop"
218
!insertmacro MUI_DESCRIPTION_TEXT ${SecFileExt} "Define the .pdb, .ent, .cif, .scr, .spt, .rsm, .rsml and .ras file extensions and document types"
219
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegPDB} "Define .pdb file extension as RasWin.Document"
220
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegENT} "Define .ent file extension as RasWin.Document"
221
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegCIF} "Define .cif file extension as RasWin.Document"
222
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegSCR} "Define .scr file extension as RasWin.Script"
223
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegSPT} "Define .spt file extension as RasWin.Script"
224
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRSM} "Define .rsm file extension as RasWin.Script"
225
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRSML} "Define .rsml file extension as RasWin.Script"
226
!insertmacro MUI_DESCRIPTION_TEXT ${SecRegRAS} "Define .ras file extension as RasWin.Script"
227
!insertmacro MUI_DESCRIPTION_TEXT ${SecDoctype} "Define RasMol RasWin Document (RasWin.Document) and Script (RasWin.Script) types"
228
!insertmacro MUI_DESCRIPTION_TEXT ${SecSampData} "Install sample data files in $INSTDIR\Data"
229
!insertmacro MUI_FUNCTION_DESCRIPTION_END
232
; >>> Installer Functions
235
!insertmacro MUI_LANGDLL_DISPLAY
238
Function .onInstSuccess
239
MessageBox MB_OK "You have successfully installed RasWin."
246
; >>> Uninstaller Section
249
SetShellVarContext all
250
Delete "$INSTDIR\RasMolReferenceCard.pdf"
251
Delete "$INSTDIR\rasmol.ini"
252
Delete "$INSTDIR\raswin.exe"
253
Delete "$INSTDIR\GPL.txt"
254
Delete "$INSTDIR\NOTICE.txt"
255
Delete "$INSTDIR\RASLIC.txt"
256
Delete "$INSTDIR\rasmol.hlp"
257
Delete "$INSTDIR\raswin.hlp"
258
Delete "$INSTDIR\raswin.ico"
259
Delete "$INSTDIR\raswin_doc.ico"
260
Delete "$INSTDIR\raswin_scr.ico"
261
Delete "$DESKTOP\RasWin.lnk"
262
Delete "$SMPROGRAMS\RasWin\*.*"
263
RmDir "$SMPROGRAMS\RasWin"
264
Delete "$INSTDIR\Data\1crn.pdb"
265
Delete "$INSTDIR\Data\3cro.pdb"
266
Delete "$INSTDIR\Data\4ins.CIF"
267
RmDir "$INSTDIR\Data"
269
Delete "$INSTDIR\Uninstall.exe"
271
DeleteRegKey /ifempty SHCTX "Software\RasWin"
272
DeleteRegKey SHCTX "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RasWin"
273
DeleteRegKey HKCR "RasWin.Document\shell\open\command"
274
DeleteRegKey HKCR "RasWin.Document\shell"
275
DeleteRegKey HKCR "RasWin.Document\DefaultIcon"
276
DeleteRegKey HKCR "RasWin.Document"
277
DeleteRegKey HKCR "RasWin.Script\shell\open\command"
278
DeleteRegKey HKCR "RasWin.Script\shell"
279
DeleteRegKey HKCR "RasWin.Script\DefaultIcon"
280
DeleteRegKey HKCR "RasWin.Script"
282
ReadRegStr $R0 HKCR ".pdb" ""
283
StrCmp $R0 "RasWin.Document" 0 +2
284
DeleteRegKey HKCR ".pdb"
286
ReadRegStr $R0 HKCR ".ent" ""
287
StrCmp $R0 "RasWin.Document" 0 +2
288
DeleteRegKey HKCR ".ent"
290
ReadRegStr $R0 HKCR ".cif" ""
291
StrCmp $R0 "RasWin.Document" 0 +2
292
DeleteRegKey HKCR ".cif"
294
ReadRegStr $R0 HKCR ".scr" ""
295
StrCmp $R0 "RasWin.Script" 0 +2
296
DeleteRegKey HKCR ".scr"
298
ReadRegStr $R0 HKCR ".spt" ""
299
StrCmp $R0 "RasWin.Script" 0 +2
300
DeleteRegKey HKCR ".spt"
302
ReadRegStr $R0 HKCR ".rsm" ""
303
StrCmp $R0 "RasWin.Script" 0 +2
304
DeleteRegKey HKCR ".rsm"
306
ReadRegStr $R0 HKCR ".rsml" ""
307
StrCmp $R0 "RasWin.Script" 0 +2
308
DeleteRegKey HKCR ".rsml"
310
ReadRegStr $R0 HKCR ".ras" ""
311
StrCmp $R0 "RasWin.Script" 0 +2
312
DeleteRegKey HKCR ".ras"
322
; >>> Uninstaller Functions
325
!insertmacro MUI_UNGETLANGUAGE
328
Function un.onUninstSuccess
329
MessageBox MB_OK "You have successfully uninstalled RasWin."
332
; >>> Environment Variables Functions
336
# The following functions are from
338
# http://nsis.sourceforge.net/Setting_Environment_Variables
340
!include WinMessages.nsh
342
!ifndef WriteEnvStr_RegKey
344
!define WriteEnvStr_RegKey \
345
'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"'
347
!define WriteEnvStr_RegKey 'HKCU "Environment"'
350
# WriteEnvStr - Writes an environment variable
351
# Note: Win9x systems requires reboot
354
# Push "HOMEDIR" # name
355
# Push "C:\New Home Dir\" # value
359
Exch $1 ; $1 has environment variable value
361
Exch $0 ; $0 has environment variable name
366
StrCmp $2 1 WriteEnvStr_NT
368
StrCpy $2 $WINDIR 2 ; Copy drive of windows (c:)
369
FileOpen $2 "$2\autoexec.bat" a
371
FileWrite $2 "$\r$\nSET $0=$1$\r$\n"
374
Goto WriteEnvStr_done
377
WriteRegExpandStr ${WriteEnvStr_RegKey} $0 $1
378
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} \
379
0 "STR:Environment" /TIMEOUT=5000
388
# un.DeleteEnvStr - Removes an environment variable
389
# Note: Win9x systems requires reboot
392
# Push "HOMEDIR" # name
393
# Call un.DeleteEnvStr
395
Function un.DeleteEnvStr
396
Exch $0 ; $0 now has the name of the variable
405
StrCmp $1 1 DeleteEnvStr_NT
408
FileOpen $1 "$1\autoexec.bat" r
414
DeleteEnvStr_dosLoop:
418
StrCmp $5 $0 DeleteEnvStr_dosLoop
419
StrCmp $5 "" DeleteEnvStr_dosLoopEnd
421
Goto DeleteEnvStr_dosLoop
423
DeleteEnvStr_dosLoopEnd:
427
Delete "$1\autoexec.bat"
428
CopyFiles /SILENT $4 "$1\autoexec.bat"
430
Goto DeleteEnvStr_done
433
DeleteRegValue ${WriteEnvStr_RegKey} $0
434
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} \
435
0 "STR:Environment" /TIMEOUT=5000
450
# [un.]IsNT - Pushes 1 if running on NT, 0 if not
456
# MessageBox MB_OK "Not running on NT!"
458
# MessageBox MB_OK "Running on NT!"
464
"SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
465
StrCmp $0 "" 0 IsNT_yes
478
!insertmacro IsNT "un."