Mercurial > pidgin
annotate gaim-installer.nsi @ 3978:4aae287ea06d
[gaim-migrate @ 4166]
comment some things
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Sun, 17 Nov 2002 00:55:55 +0000 |
parents | ff8eb6508202 |
children | 85980320d468 |
rev | line source |
---|---|
3630 | 1 ; Installer script for win32 Gaim |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
2 ; Herman Bloggs <hermanator12002@yahoo.com> |
3630 | 3 |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
4 ; NOTE: this .NSI script is designed for NSIS v2.0b0+ |
3630 | 5 |
3966
ff8eb6508202
[gaim-migrate @ 4150]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3965
diff
changeset
|
6 Name "Gaim ${GAIM_VERSION} (Win32)" |
ff8eb6508202
[gaim-migrate @ 4150]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3965
diff
changeset
|
7 OutFile "gaim-${GAIM_VERSION}.exe" |
3630 | 8 Icon .\pixmaps\gaim-install.ico |
3892
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
9 UninstallIcon .\pixmaps\gaim-install.ico |
3630 | 10 |
11 ; Some default compiler settings (uncomment and change at will): | |
12 ; SetCompress auto ; (can be off or force) | |
13 ; SetDatablockOptimize on ; (can be off) | |
14 ; CRCCheck on ; (can be off) | |
15 ; AutoCloseWindow false ; (can be true for the window go away automatically at end) | |
16 ; ShowInstDetails hide ; (can be show to have them shown, or nevershow to disable) | |
17 ; SetDateSave off ; (can be on to have files restored to their orginal date) | |
18 | |
19 InstallDir "$PROGRAMFILES\Gaim" | |
20 InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "" | |
21 DirShow show ; (make this hide to not let the user change it) | |
22 DirText "Select the directory to install Gaim in:" | |
23 | |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
24 Section "" ; (default section) |
3892
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
25 ; Check if previous intallation exists |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
26 ReadRegStr $R0 HKEY_LOCAL_MACHINE "SOFTWARE\gaim" "" |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
27 StrCmp $R0 "" cont_install |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
28 ReadRegStr $R1 HKEY_LOCAL_MACHINE "SOFTWARE\gaim" "Version" |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
29 StrCmp $R1 "" no_version |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
30 ; Gaim found, so exit Intallation |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
31 MessageBox MB_OK "Gaim (v$R1) already exists on this machine. Uninstall first then try again." IDOK |
3892
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
32 Quit |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
33 no_version: |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
34 MessageBox MB_OK "Gaim already exists on this machine. Uninstall first then try again." IDOK |
3892
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
35 Quit |
ac76cf27f8d5
[gaim-migrate @ 4044]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3860
diff
changeset
|
36 cont_install: |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
37 ; Install Aspell |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
38 SetOutPath "$INSTDIR" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
39 File ..\win32-dev\aspell-15\bin\aspell-0.50.2.exe |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
40 ExecWait '"$INSTDIR\aspell-0.50.2.exe" /S' $R0 |
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
41 ; cleanup aspell installer file |
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
42 Delete "$INSTDIR\aspell-0.50.2.exe" |
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
43 ; Check if aspell installer completed ok |
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
44 StrCmp $R0 "0" have_aspell |
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
45 ; Aspell exited uncleanly so we will exit uncleanly too. |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
46 RMDir /r "$INSTDIR" |
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
47 Quit |
3917
29ccbc3eb9c1
[gaim-migrate @ 4076]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3910
diff
changeset
|
48 have_aspell: |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
49 SetOutPath "$INSTDIR" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
50 ; Gaim files |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
51 File /r .\win32-install-dir\*.* |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
52 |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
53 ; Gaim Registry Settings |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
54 ; Read in Aspell install path |
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
55 ReadRegStr $R0 HKEY_LOCAL_MACHINE "Software\Aspell" "" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
56 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "" "$INSTDIR" |
3966
ff8eb6508202
[gaim-migrate @ 4150]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3965
diff
changeset
|
57 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "Version" "${GAIM_VERSION}" |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
58 ; Keep track of aspell install path, for when we uninstall |
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
59 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "AspellPath" $R0 |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
60 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "DisplayName" "Gaim (remove only)" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
61 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "UninstallString" '"$INSTDIR\gaim-uninst.exe"' |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
62 ; Set App path to include aspell dir (so Gaim can find aspell dlls) |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
63 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" "" "$INSTDIR\gaim.exe" |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
64 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" "Path" $R0 |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
65 ; Increase refrence count for aspell dlls |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
66 Push "$R0\aspell-15.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
67 Call AddSharedDLL |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
68 Push "$R0\aspell-common-0-50-2.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
69 Call AddSharedDLL |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
70 Push "$R0\pspell-15.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
71 Call AddSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
72 |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
73 ; Set Start Menu icons |
3630 | 74 SetOutPath "$SMPROGRAMS\Gaim" |
75 CreateShortCut "$SMPROGRAMS\Gaim\Gaim.lnk" \ | |
76 "$INSTDIR\gaim.exe" | |
77 CreateShortCut "$SMPROGRAMS\Gaim\Unistall.lnk" \ | |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
78 "$INSTDIR\gaim-uninst.exe" |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
79 |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
80 ; write out uninstaller |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
81 WriteUninstaller "$INSTDIR\gaim-uninst.exe" |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
82 SectionEnd ; end of default section |
3630 | 83 |
84 ; begin uninstall settings/section | |
85 UninstallText "This will uninstall Gaim from your system" | |
86 | |
87 Section Uninstall | |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
88 ; Delete Gaim Dir |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
89 RMDir /r "$INSTDIR" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
90 RMDir /r "$SMPROGRAMS\Gaim" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
91 |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
92 ; Read in Aspell install path |
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
93 ReadRegStr $R0 HKEY_LOCAL_MACHINE "Software\Gaim" "AspellPath" |
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
94 |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
95 ; Delete Gaim Registry Settings |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
96 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
97 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
98 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
99 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
100 ; Decrease refrence count for Aspell dlls |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
101 Push "$R0\aspell-15.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
102 Call un.RemoveSharedDLL |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
103 Push "$R0\aspell-common-0-50-2.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
104 Call un.RemoveSharedDLL |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
105 Push "$R0\pspell-15.dll" |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
106 Call un.RemoveSharedDLL |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
107 |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
108 ; Delete aspell dir if its empty |
3910
0d8b11bed18b
[gaim-migrate @ 4069]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3892
diff
changeset
|
109 RMDir "$R0" |
3630 | 110 SectionEnd ; end of uninstall section |
111 | |
3860
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
112 ;;; |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
113 ;;; FUNCTIONS |
d0897828bd0d
[gaim-migrate @ 4012]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3853
diff
changeset
|
114 ;;; |
3853
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
115 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
116 ; AddSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
117 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
118 ; Increments a shared DLLs reference count. |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
119 ; Use by passing one item on the stack (the full path of the DLL). |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
120 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
121 ; Usage: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
122 ; Push $SYSDIR\myDll.dll |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
123 ; Call AddSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
124 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
125 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
126 Function AddSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
127 Exch $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
128 Push $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
129 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
130 IntOp $R0 $R0 + 1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
131 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
132 Pop $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
133 Pop $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
134 FunctionEnd |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
135 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
136 ; un.RemoveSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
137 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
138 ; Decrements a shared DLLs reference count, and removes if necessary. |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
139 ; Use by passing one item on the stack (the full path of the DLL). |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
140 ; Note: for use in the main installer (not the uninstaller), rename the |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
141 ; function to RemoveSharedDLL. |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
142 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
143 ; Usage: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
144 ; Push $SYSDIR\myDll.dll |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
145 ; Call un.RemoveShareDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
146 ; |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
147 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
148 Function un.RemoveSharedDLL |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
149 Exch $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
150 Push $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
151 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
152 StrCmp $R0 "" remove |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
153 IntOp $R0 $R0 - 1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
154 IntCmp $R0 0 rk rk uk |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
155 rk: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
156 DeleteRegValue HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
157 goto Remove |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
158 uk: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
159 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
160 Goto noremove |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
161 remove: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
162 Delete /REBOOTOK $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
163 noremove: |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
164 Pop $R0 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
165 Pop $R1 |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
166 FunctionEnd |
eddcb3a8c74e
[gaim-migrate @ 4005]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3849
diff
changeset
|
167 |
3630 | 168 ; eof |
169 |