Mercurial > pidgin.yaz
comparison gaim-installer.nsi @ 4857:cb0681cfb9f2
[gaim-migrate @ 5184]
Removed Aspell portion from Gaim installer
committer: Tailor Script <tailor@pidgin.im>
author | Herman Bloggs <hermanator12002@yahoo.com> |
---|---|
date | Sat, 22 Mar 2003 18:27:28 +0000 |
parents | e8f2fdf78662 |
children | 65a0a360e8c4 |
comparison
equal
deleted
inserted
replaced
4856:ac9ed6c5594f | 4857:cb0681cfb9f2 |
---|---|
32 Quit | 32 Quit |
33 no_version: | 33 no_version: |
34 MessageBox MB_OK "Gaim already exists on this machine. Uninstall first then try again." IDOK | 34 MessageBox MB_OK "Gaim already exists on this machine. Uninstall first then try again." IDOK |
35 Quit | 35 Quit |
36 cont_install: | 36 cont_install: |
37 ; Install Aspell | |
38 SetOutPath "$INSTDIR" | |
39 File ..\win32-dev\aspell-15\bin\aspell-0.50.2.exe | |
40 ; Don't do this silently (i.e /S switch).. because some people wish to specify | |
41 ; the location of the Aspell install directory. ( | |
42 ExecWait '"$INSTDIR\aspell-0.50.2.exe"' $R0 | |
43 ; cleanup aspell installer file | |
44 Delete "$INSTDIR\aspell-0.50.2.exe" | |
45 ; Check if aspell installer completed ok | |
46 StrCmp $R0 "0" have_aspell | |
47 ; Aspell exited uncleanly so we will exit uncleanly too. | |
48 RMDir /r "$INSTDIR" | |
49 Quit | |
50 have_aspell: | |
51 SetOutPath "$INSTDIR" | 37 SetOutPath "$INSTDIR" |
52 ; Gaim files | 38 ; Gaim files |
53 File /r .\win32-install-dir\*.* | 39 File /r .\win32-install-dir\*.* |
54 | 40 |
55 ; Gaim Registry Settings | 41 ; Gaim Registry Settings |
56 ; Read in Aspell install path | |
57 ReadRegStr $R0 HKEY_LOCAL_MACHINE "Software\Aspell" "" | |
58 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "" "$INSTDIR" | 42 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "" "$INSTDIR" |
59 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "Version" "${GAIM_VERSION}" | 43 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "Version" "${GAIM_VERSION}" |
60 ; Keep track of aspell install path, for when we uninstall | |
61 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" "AspellPath" $R0 | |
62 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "DisplayName" "Gaim (remove only)" | 44 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "DisplayName" "Gaim (remove only)" |
63 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "UninstallString" '"$INSTDIR\gaim-uninst.exe"' | 45 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" "UninstallString" '"$INSTDIR\gaim-uninst.exe"' |
64 ; Set App path to include aspell dir (so Gaim can find aspell dlls) | |
65 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" "" "$INSTDIR\gaim.exe" | |
66 WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" "Path" $R0 | |
67 ; Increase refrence count for aspell dlls | |
68 Push "$R0\aspell-15.dll" | |
69 Call AddSharedDLL | |
70 Push "$R0\aspell-common-0-50-2.dll" | |
71 Call AddSharedDLL | |
72 Push "$R0\pspell-15.dll" | |
73 Call AddSharedDLL | |
74 | 46 |
75 ; Set Start Menu icons | 47 ; Set Start Menu icons |
76 SetShellVarContext "all" | 48 SetShellVarContext "all" |
77 SetOutPath "$SMPROGRAMS\Gaim" | 49 SetOutPath "$SMPROGRAMS\Gaim" |
78 CreateShortCut "$SMPROGRAMS\Gaim\Gaim.lnk" \ | 50 CreateShortCut "$SMPROGRAMS\Gaim\Gaim.lnk" \ |
97 ; Delete Start Menu group & Desktop icon | 69 ; Delete Start Menu group & Desktop icon |
98 SetShellVarContext "all" | 70 SetShellVarContext "all" |
99 RMDir /r "$SMPROGRAMS\Gaim" | 71 RMDir /r "$SMPROGRAMS\Gaim" |
100 Delete "$DESKTOP\Gaim.lnk" | 72 Delete "$DESKTOP\Gaim.lnk" |
101 | 73 |
102 ; Read in Aspell install path | |
103 ReadRegStr $R0 HKEY_LOCAL_MACHINE "Software\Gaim" "AspellPath" | |
104 | |
105 ; Delete Gaim Registry Settings | 74 ; Delete Gaim Registry Settings |
106 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" | 75 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Gaim" |
107 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" | 76 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Gaim" |
108 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\gaim.exe" | |
109 | 77 |
110 ; Decrease refrence count for Aspell dlls | |
111 Push "$R0\aspell-15.dll" | |
112 Call un.RemoveSharedDLL | |
113 Push "$R0\aspell-common-0-50-2.dll" | |
114 Call un.RemoveSharedDLL | |
115 Push "$R0\pspell-15.dll" | |
116 Call un.RemoveSharedDLL | |
117 | |
118 ; Delete aspell dir if its empty | |
119 RMDir "$R0" | |
120 SectionEnd ; end of uninstall section | 78 SectionEnd ; end of uninstall section |
121 | |
122 ;;; | |
123 ;;; FUNCTIONS | |
124 ;;; | |
125 | |
126 ; AddSharedDLL | |
127 ; | |
128 ; Increments a shared DLLs reference count. | |
129 ; Use by passing one item on the stack (the full path of the DLL). | |
130 ; | |
131 ; Usage: | |
132 ; Push $SYSDIR\myDll.dll | |
133 ; Call AddSharedDLL | |
134 ; | |
135 | |
136 Function AddSharedDLL | |
137 Exch $R1 | |
138 Push $R0 | |
139 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 | |
140 IntOp $R0 $R0 + 1 | |
141 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0 | |
142 Pop $R0 | |
143 Pop $R1 | |
144 FunctionEnd | |
145 | |
146 ; un.RemoveSharedDLL | |
147 ; | |
148 ; Decrements a shared DLLs reference count, and removes if necessary. | |
149 ; Use by passing one item on the stack (the full path of the DLL). | |
150 ; Note: for use in the main installer (not the uninstaller), rename the | |
151 ; function to RemoveSharedDLL. | |
152 ; | |
153 ; Usage: | |
154 ; Push $SYSDIR\myDll.dll | |
155 ; Call un.RemoveShareDLL | |
156 ; | |
157 | |
158 Function un.RemoveSharedDLL | |
159 Exch $R1 | |
160 Push $R0 | |
161 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 | |
162 StrCmp $R0 "" remove | |
163 IntOp $R0 $R0 - 1 | |
164 IntCmp $R0 0 rk rk uk | |
165 rk: | |
166 DeleteRegValue HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 | |
167 goto Remove | |
168 uk: | |
169 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0 | |
170 Goto noremove | |
171 remove: | |
172 Delete /REBOOTOK $R1 | |
173 noremove: | |
174 Pop $R0 | |
175 Pop $R1 | |
176 FunctionEnd | |
177 | 79 |
178 ; eof | 80 ; eof |
179 | 81 |