1 ;OpenAFS Install Script for NSIS
2 ; This version compiles with NSIS v2.0
4 ; Originally written by Rob Murawski <rsm4@ieee.org>
6 ;Redistribution and use in source and binary forms, with or without modification, are permitted
7 ;provided that the following conditions are met:
9 ; Redistributions of source code must retain the above copyright notice, this list of conditions
10 ; and the following disclaimer. Redistributions in binary form must reproduce the above copyright
11 ; notice, this list of conditions and the following disclaimer in the documentation and/or other
12 ; materials provided with the distribution. The name of the author may not be used to endorse or
13 ; promote products derived from this software without specific prior written permission.
15 ; THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
16 ; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
17 ; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
18 ; INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
19 ; LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
20 ; BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
21 ; STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
22 ; USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 ; Some code originally based on:
26 ; NSIS Modern User Interface version 1.63
27 ; MultiLanguage Example Script
28 ; Written by Joost Verburg
30 ; Read in the environment information
31 !include ${INCLUDEDIR}\nsi-includes.nsi
35 Name "OpenAFS ${AFS_VERSION} ${__DATE__} ${__TIME__}"
37 Name "OpenAFS ${AFS_VERSION} ${__DATE__} ${__TIME__} Checked/Debug"
38 !endif ; End DEBUG/!DEBUG
41 Name "OpenAFS ${AFS_VERSION}"
43 Name "OpenAFS ${AFS_VERSION} Checked/Debug"
44 !endif ; End DEBUG/!DEBUG
46 VIProductVersion "${AFS_VERSION}.00"
47 VIAddVersionKey "ProductName" "OpenAFS"
48 VIAddVersionKey "CompanyName" "OpenAFS.org"
49 VIAddVersionKey "ProductVersion" ${AFS_VERSION}
50 VIAddVersionKey "FileVersion" ${AFS_VERSION}
51 VIAddVersionKey "FileDescription" "OpenAFS for Windows Installer"
52 VIAddVersionKey "LegalCopyright" "(C)2000-2004"
54 VIAddVersionKey "PrivateBuild" "Checked/Debug"
61 ;--------------------------------
64 !define REPLACEDLL_NOREGISTER
68 OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows.exe"
70 OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows-DEBUG.exe"
74 !define MUI_ICON "..\..\client_config\afs_config.ico"
75 !define MUI_UNICON "..\..\client_config\afs_config.ico"
76 !define AFS_COMPANY_NAME "OpenAFS"
77 !define AFS_PRODUCT_NAME "OpenAFS"
78 !define AFS_REGKEY_ROOT "Software\TransarcCorporation"
81 ;Folder selection page
82 InstallDir "$PROGRAMFILES\OpenAFS" ; Install to shorter path
84 ;Remember install folder
85 InstallDirRegKey HKCU ${AFS_REGKEY_ROOT} ""
87 ;Remember the installer language
88 !define MUI_LANGDLL_REGISTRY_ROOT "HKCU"
89 !define MUI_LANGDLL_REGISTRY_KEY ${AFS_REGKEY_ROOT}
90 !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
93 !define AFS_CLIENT_BUILDDIR "${AFS_DESTDIR}\root.client\usr\vice\etc"
94 !define AFS_WININSTALL_DIR "${AFS_DESTDIR}\WinInstall\Config"
95 !define AFS_BUILD_INCDIR "${AFS_DESTDIR}\include"
96 !define AFS_CLIENT_LIBDIR "${AFS_DESTDIR}\lib"
97 !define AFS_SERVER_BUILDDIR "${AFS_DESTDIR}\root.server\usr\afs\bin"
98 !define AFS_ETC_BUILDDIR "${AFS_DESTDIR}\etc"
99 !define SYSTEMDIR "$%SystemRoot%\System32"
101 ;--------------------------------
102 ;Modern UI Configuration
104 ;!define MUI_LICENSEPAGE
105 !define MUI_CUSTOMPAGECOMMANDS
106 !define MUI_WELCOMEPAGE
107 !define MUI_COMPONENTSPAGE
108 !define MUI_COMPONENTSPAGE_SMALLDESC
109 !define MUI_DIRECTORYPAGE
111 !define MUI_ABORTWARNING
112 !define MUI_FINISHPAGE
114 !define MUI_UNINSTALLER
115 !define MUI_UNCONFIRMPAGE
118 !insertmacro MUI_PAGE_WELCOME
119 !insertmacro MUI_PAGE_COMPONENTS
120 !insertmacro MUI_PAGE_DIRECTORY
121 Page custom AFSPageGetCellServDB
122 Page custom AFSPageGetCellName
123 Page custom AFSPageConfigAFSCreds
124 !insertmacro MUI_PAGE_INSTFILES
125 !insertmacro MUI_PAGE_FINISH
127 ;LicenseData "Licenses.rtf"
128 ;--------------------------------
131 !insertmacro MUI_LANGUAGE "English"
132 ;!insertmacro MUI_LANGUAGE "French"
133 !insertmacro MUI_LANGUAGE "German"
134 !insertmacro MUI_LANGUAGE "Spanish"
135 !insertmacro MUI_LANGUAGE "SimpChinese"
136 !insertmacro MUI_LANGUAGE "TradChinese"
137 !insertmacro MUI_LANGUAGE "Japanese"
138 !insertmacro MUI_LANGUAGE "Korean"
139 ;!insertmacro MUI_LANGUAGE "Italian"
140 ;!insertmacro MUI_LANGUAGE "Dutch"
141 ;!insertmacro MUI_LANGUAGE "Danish"
142 ;!insertmacro MUI_LANGUAGE "Greek"
143 ;!insertmacro MUI_LANGUAGE "Russian"
144 !insertmacro MUI_LANGUAGE "PortugueseBR"
145 ;!insertmacro MUI_LANGUAGE "Polish"
146 ;!insertmacro MUI_LANGUAGE "Ukrainian"
147 ;!insertmacro MUI_LANGUAGE "Czech"
148 ;!insertmacro MUI_LANGUAGE "Slovak"
149 ;!insertmacro MUI_LANGUAGE "Croatian"
150 ;!insertmacro MUI_LANGUAGE "Bulgarian"
151 ;!insertmacro MUI_LANGUAGE "Hungarian"
152 ;!insertmacro MUI_LANGUAGE "Thai"
153 ;!insertmacro MUI_LANGUAGE "Romanian"
154 ;!insertmacro MUI_LANGUAGE "Macedonian"
155 ;!insertmacro MUI_LANGUAGE "Turkish"
157 ;--------------------------------
161 LangString DESC_SecCopyUI ${LANG_ENGLISH} "OpenAFS for Windows: English"
162 ;LangString DESC_SecCopyUI ${LANG_FRENCH} "OpenAFS for Windows: French"
163 LangString DESC_SecCopyUI ${LANG_GERMAN} "OpenAFS for Windows: German"
164 LangString DESC_SecCopyUI ${LANG_SPANISH} "OpenAFS for Windows: Spanish"
165 LangString DESC_SecCopyUI ${LANG_SIMPCHINESE} "OpenAFS for Windows: Simplified Chinese"
166 LangString DESC_SecCopyUI ${LANG_TRADCHINESE} "OpenAFS for Windows: Traditional Chinese description"
167 LangString DESC_SecCopyUI ${LANG_JAPANESE} "OpenAFS for Windows: Japanese description"
168 LangString DESC_SecCopyUI ${LANG_KOREAN} "OpenAFS for Windows: Korean description"
169 ;LangString DESC_SecCopyUI ${LANG_ITALIAN} "OpenAFS for Windows: Italian description"
170 ;LangString DESC_SecCopyUI ${LANG_DUTCH} "OpenAFS for Windows: Dutch description"
171 ;LangString DESC_SecCopyUI ${LANG_DANISH} "OpenAFS for Windows: Danish description"
172 ;LangString DESC_SecCopyUI ${LANG_GREEK} "OpenAFS for Windows: Greek description"
173 ;LangString DESC_SecCopyUI ${LANG_RUSSIAN} "OpenAFS for Windows: Russian description"
174 LangString DESC_SecCopyUI ${LANG_PORTUGUESEBR} "OpenAFS for Windows: Portuguese (Brasil) description"
175 ;LangString DESC_SecCopyUI ${LANG_POLISH} "OpenAFS for Windows: Polish description"
176 ;LangString DESC_SecCopyUI ${LANG_UKRAINIAN} "OpenAFS for Windows: Ukrainian description"
177 ;LangString DESC_SecCopyUI ${LANG_CZECH} "OpenAFS for Windows: Czechian description"
178 ;LangString DESC_SecCopyUI ${LANG_SLOVAK} "OpenAFS for Windows: Slovakian description"
179 ;LangString DESC_SecCopyUI ${LANG_CROATIAN} "OpenAFS for Windows: Slovakian description"
180 ;LangString DESC_SecCopyUI ${LANG_BULGARIAN} "OpenAFS for Windows: Bulgarian description"
181 ;LangString DESC_SecCopyUI ${LANG_HUNGARIAN} "OpenAFS for Windows: Hungarian description"
182 ;LangString DESC_SecCopyUI ${LANG_THAI} "OpenAFS for Windows: Thai description"
183 ;LangString DESC_SecCopyUI ${LANG_ROMANIAN} "OpenAFS for Windows: Romanian description"
184 ;LangString DESC_SecCopyUI ${LANG_MACEDONIAN} "OpenAFS for Windows: Macedonian description"
185 ;LangString DESC_SecCopyUI ${LANG_TURKISH} "OpenAFS for Windows: Turkish description"
187 LangString DESC_secClient ${LANG_ENGLISH} "OpenAFS Client: Allows you to access AFS from your Windows PC."
188 LangString DESC_secClient ${LANG_GERMAN} "OpenAFS Client: Allows you to access AFS from your Windows PC."
189 LangString DESC_secClient ${LANG_SPANISH} "OpenAFS Client: Allows you to access AFS from your Windows PC."
190 LangString DESC_secClient ${LANG_SIMPCHINESE} "OpenAFS Client: Allows you to access AFS from your Windows PC."
191 LangString DESC_secClient ${LANG_TRADCHINESE} "OpenAFS Client: Allows you to access AFS from your Windows PC."
192 LangString DESC_secClient ${LANG_JAPANESE} "OpenAFS Client: Allows you to access AFS from your Windows PC."
193 LangString DESC_secClient ${LANG_KOREAN} "OpenAFS Client: Allows you to access AFS from your Windows PC."
194 LangString DESC_secClient ${LANG_PORTUGUESEBR} "OpenAFS Client: Allows you to access AFS from your Windows PC."
196 LangString DESC_secLoopback ${LANG_ENGLISH} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
197 LangString DESC_secLoopback ${LANG_GERMAN} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
198 LangString DESC_secLoopback ${LANG_SPANISH} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
199 LangString DESC_secLoopback ${LANG_SIMPCHINESE} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
200 LangString DESC_secLoopback ${LANG_TRADCHINESE} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
201 LangString DESC_secLoopback ${LANG_JAPANESE} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
202 LangString DESC_secLoopback ${LANG_KOREAN} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
203 LangString DESC_secLoopback ${LANG_PORTUGUESEBR} "MS Loopback adapter: Installs the adapter for a more reliable AFS client."
205 LangString DESC_secServer ${LANG_ENGLISH} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
206 LangString DESC_secServer ${LANG_GERMAN} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
207 LangString DESC_secServer ${LANG_SPANISH} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
208 LangString DESC_secServer ${LANG_SIMPCHINESE} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
209 LangString DESC_secServer ${LANG_TRADCHINESE} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
210 LangString DESC_secServer ${LANG_JAPANESE} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
211 LangString DESC_secServer ${LANG_KOREAN} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
212 LangString DESC_secServer ${LANG_PORTUGUESEBR} "OpenAFS Server: Allows you to run an AFS file server. This option requires the AFS Client."
214 LangString DESC_secControl ${LANG_ENGLISH} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
215 LangString DESC_secControl ${LANG_GERMAN} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
216 LangString DESC_secControl ${LANG_SPANISH} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
217 LangString DESC_secControl ${LANG_SIMPCHINESE} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
218 LangString DESC_secControl ${LANG_TRADCHINESE} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
219 LangString DESC_secControl ${LANG_JAPANESE} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
220 LangString DESC_secControl ${LANG_KOREAN} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
221 LangString DESC_secControl ${LANG_PORTUGUESEBR} "Control Center: GUI utilities for managing and configuring AFS servers. This option requires the AFS Client."
223 LangString DESC_secDocs ${LANG_ENGLISH} "Supplemental Documentation: Additional documentation for using OpenAFS."
224 LangString DESC_secDocs ${LANG_GERMAN} "Supplemental Documentation: Additional documentation for using OpenAFS."
225 LangString DESC_secDocs ${LANG_SPANISH} "Supplemental Documentation: Additional documentation for using OpenAFS."
226 LangString DESC_secDocs ${LANG_SIMPCHINESE} "Supplemental Documentation: Additional documentation for using OpenAFS."
227 LangString DESC_secDocs ${LANG_TRADCHINESE} "Supplemental Documentation: Additional documentation for using OpenAFS."
228 LangString DESC_secDocs ${LANG_JAPANESE} "Supplemental Documentation: Additional documentation for using OpenAFS."
229 LangString DESC_secDocs ${LANG_KOREAN} "Supplemental Documentation: Additional documentation for using OpenAFS."
230 LangString DESC_secDocs ${LANG_PORTUGUESEBR} "Supplemental Documentation: Additional documentation for using OpenAFS."
232 LangString DESC_secSDK ${LANG_ENGLISH} "SDK: Header files and libraries for developing software with OpenAFS."
233 LangString DESC_secSDK ${LANG_GERMAN} "SDK: Header files and libraries for developing software with OpenAFS."
234 LangString DESC_secSDK ${LANG_SPANISH} "SDK: Header files and libraries for developing software with OpenAFS."
235 LangString DESC_secSDK ${LANG_SIMPCHINESE} "SDK: Header files and libraries for developing software with OpenAFS."
236 LangString DESC_secSDK ${LANG_TRADCHINESE} "SDK: Header files and libraries for developing software with OpenAFS."
237 LangString DESC_secSDK ${LANG_JAPANESE} "SDK: Header files and libraries for developing software with OpenAFS."
238 LangString DESC_secSDK ${LANG_KOREAN} "SDK: Header files and libraries for developing software with OpenAFS."
239 LangString DESC_secSDK ${LANG_PORTUGUESEBR} "SDK: Header files and libraries for developing software with OpenAFS."
241 LangString DESC_secDEBUG ${LANG_ENGLISH} "Debug symbols: Used for debugging problems with OpenAFS."
242 LangString DESC_secDEBUG ${LANG_GERMAN} "Debug symbols: Used for debugging problems with OpenAFS."
243 LangString DESC_secDEBUG ${LANG_SPANISH} "Debug symbols: Used for debugging problems with OpenAFS."
244 LangString DESC_secDEBUG ${LANG_SIMPCHINESE} "Debug symbols: Used for debugging problems with OpenAFS."
245 LangString DESC_secDEBUG ${LANG_TRADCHINESE} "Debug symbols: Used for debugging problems with OpenAFS."
246 LangString DESC_secDEBUG ${LANG_JAPANESE} "Debug symbols: Used for debugging problems with OpenAFS."
247 LangString DESC_secDEBUG ${LANG_KOREAN} "Debug symbols: Used for debugging problems with OpenAFS."
248 LangString DESC_secDEBUG ${LANG_PORTUGUESEBR} "Debug symbols: Used for debugging problems with OpenAFS."
250 ; Popup error messages
251 LangString CellError ${LANG_ENGLISH} "You must specify a valid CellServDB file to copy during install"
252 LangString CellError ${LANG_GERMAN} "You must specify a valid CellServDB file to copy during the install"
253 LangString CellError ${LANG_SPANISH} "You must specify a valid CellServDB file to copy during the install"
254 LangString CellError ${LANG_SIMPCHINESE} "You must specify a valid CellServDB file to copy during the install"
255 LangString CellError ${LANG_TRADCHINESE} "You must specify a valid CellServDB file to copy during the install"
256 LangString CellError ${LANG_JAPANESE} "You must specify a valid CellServDB file to copy during the install"
257 LangString CellError ${LANG_KOREAN} "You must specify a valid CellServDB file to copy during the install"
258 LangString CellError ${LANG_PORTUGUESEBR} "You must specify a valid CellServDB file to copy during the install"
260 LangString CellNameError ${LANG_ENGLISH} "You must specify a cell name for your client to use."
261 LangString CellNameError ${LANG_GERMAN} "You must specify a cell name for your client to use."
262 LangString CellNameError ${LANG_SPANISH} "You must specify a cell name for your client to use."
263 LangString CellNameError ${LANG_SIMPCHINESE} "You must specify a cell name for your client to use."
264 LangString CellNameError ${LANG_TRADCHINESE} "You must specify a cell name for your client to use."
265 LangString CellNameError ${LANG_JAPANESE} "You must specify a cell name for your client to use."
266 LangString CellNameError ${LANG_KOREAN} "You must specify a cell name for your client to use."
267 LangString CellNameError ${LANG_PORTUGUESEBR} "You must specify a cell name for your client to use."
269 LangString URLError ${LANG_ENGLISH} "You must specify a URL if you choose the option to download the CellServDB."
270 LangString URLError ${LANG_GERMAN} "You must specify a URL if you choose the option to download the CellServDB."
271 LangString URLError ${LANG_SPANISH} "You must specify a URL if you choose the option to download the CellServDB."
272 LangString URLError ${LANG_SIMPCHINESE} "You must specify a URL if you choose the option to download the CellServDB."
273 LangString URLError ${LANG_TRADCHINESE} "You must specify a URL if you choose the option to download the CellServDB."
274 LangString URLError ${LANG_JAPANESE} "You must specify a URL if you choose the option to download the CellServDB."
275 LangString URLError ${LANG_KOREAN} "You must specify a URL if you choose the option to download the CellServDB."
276 LangString URLError ${LANG_PORTUGUESEBR} "You must specify a URL if you choose the option to download the CellServDB."
279 ; Upgrade/re-install strings
280 LangString UPGRADE_CLIENT ${LANG_ENGLISH} "Upgrade AFS Client"
281 LangString UPGRADE_CLIENT ${LANG_GERMAN} "Upgrade AFS Client"
282 LangString UPGRADE_CLIENT ${LANG_SPANISH} "Upgrade AFS Client"
283 LangString UPGRADE_CLIENT ${LANG_SIMPCHINESE} "Upgrade AFS Client"
284 LangString UPGRADE_CLIENT ${LANG_TRADCHINESE} "Upgrade AFS Client"
285 LangString UPGRADE_CLIENT ${LANG_JAPANESE} "Upgrade AFS Client"
286 LangString UPGRADE_CLIENT ${LANG_KOREAN} "Upgrade AFS Client"
287 LangString UPGRADE_CLIENT ${LANG_PORTUGUESEBR} "Upgrade AFS Client"
289 LangString REINSTALL_CLIENT ${LANG_ENGLISH} "Re-install AFS Client"
290 LangString REINSTALL_CLIENT ${LANG_GERMAN} "Re-install AFS Client"
291 LangString REINSTALL_CLIENT ${LANG_SPANISH} "Re-install AFS Client"
292 LangString REINSTALL_CLIENT ${LANG_SIMPCHINESE} "Re-install AFS Client"
293 LangString REINSTALL_CLIENT ${LANG_TRADCHINESE} "Re-install AFS Client"
294 LangString REINSTALL_CLIENT ${LANG_JAPANESE} "Re-install AFS Client"
295 LangString REINSTALL_CLIENT ${LANG_KOREAN} "Re-install AFS Client"
296 LangString REINSTALL_CLIENT ${LANG_PORTUGUESEBR} "Re-install AFS Client"
298 LangString UPGRADE_SERVER ${LANG_ENGLISH} "Upgrade AFS Server"
299 LangString UPGRADE_SERVER ${LANG_GERMAN} "Upgrade AFS Server"
300 LangString UPGRADE_SERVER ${LANG_SPANISH} "Upgrade AFS Server"
301 LangString UPGRADE_SERVER ${LANG_SIMPCHINESE} "Upgrade AFS Server"
302 LangString UPGRADE_SERVER ${LANG_TRADCHINESE} "Upgrade AFS Server"
303 LangString UPGRADE_SERVER ${LANG_JAPANESE} "Upgrade AFS Server"
304 LangString UPGRADE_SERVER ${LANG_KOREAN} "Upgrade AFS Server"
305 LangString UPGRADE_SERVER ${LANG_PORTUGUESEBR} "Upgrade AFS Server"
307 LangString REINSTALL_SERVER ${LANG_ENGLISH} "Re-install AFS Server"
308 LangString REINSTALL_SERVER ${LANG_GERMAN} "Re-install AFS Server"
309 LangString REINSTALL_SERVER ${LANG_SPANISH} "Re-install AFS Server"
310 LangString REINSTALL_SERVER ${LANG_SIMPCHINESE} "Re-install AFS Server"
311 LangString REINSTALL_SERVER ${LANG_TRADCHINESE} "Re-install AFS Server"
312 LangString REINSTALL_SERVER ${LANG_JAPANESE} "Re-install AFS Server"
313 LangString REINSTALL_SERVER ${LANG_KOREAN} "Re-install AFS Server"
314 LangString REINSTALL_SERVER ${LANG_PORTUGUESEBR} "Re-install AFS Server"
316 ReserveFile "CellServPage.ini"
317 ReserveFile "AFSCell.ini"
318 !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS ;InstallOptions plug-in
319 !insertmacro MUI_RESERVEFILE_LANGDLL ;Language selection dialog
320 ;--------------------------------
322 ; Macro - Upgrade DLL File
323 ; Written by Joost Verburg
324 ; ------------------------
327 ; LOCALFILE - Location of the new DLL file (on the compiler system)
328 ; DESTFILE - Location of the DLL file that should be upgraded
329 ; (on the user's system)
330 ; TEMPBASEDIR - Directory on the user's system to store a temporary file
331 ; when the system has to be rebooted.
332 ; For Win9x support, this should be on the same volume as the
334 ; The Windows temp directory could be located on any volume,
335 ; so you cannot use this directory.
337 ; Define REPLACEDLL_NOREGISTER if you want to upgrade a DLL that does not
338 ; have to be registered.
340 ; Note: If you want to support Win9x, you can only use
341 ; short filenames (8.3).
344 ; !insertmacro ReplaceDLL "dllname.dll" "$SYSDIR\dllname.dll" "$SYSDIR"
347 !macro ReplaceDLL LOCALFILE DESTFILE TEMPBASEDIR
356 ;------------------------
357 ;Unique number for labels
359 !define REPLACEDLL_UNIQUE ${__LINE__}
361 ;------------------------
362 ;Copy the parameters used on run-time to a variable
363 ;This allows the usage of variables as paramter
365 StrCpy $R4 "${DESTFILE}"
366 StrCpy $R5 "${TEMPBASEDIR}"
368 ;------------------------
369 ;Check file and version
371 IfFileExists $R4 0 replacedll.copy_${REPLACEDLL_UNIQUE}
374 ; GetDLLVersionLocal "${LOCALFILE}" $R0 $R1
375 ; GetDLLVersion $R4 $R2 $R3
376 ;IfErrors replacedll.upgrade_${REPLACEDLL_UNIQUE}
378 ;IntCmpU $R0 $R2 0 replacedll.done_${REPLACEDLL_UNIQUE} \
379 ; replacedll.upgrade_${REPLACEDLL_UNIQUE}
380 ;IntCmpU $R1 $R3 replacedll.done_${REPLACEDLL_UNIQUE} \
381 ; replacedll.done_${REPLACEDLL_UNIQUE} \
382 ; replacedll.upgrade_${REPLACEDLL_UNIQUE}
384 ;------------------------
385 ;Let's replace the DLL!
389 ;replacedll.upgrade_${REPLACEDLL_UNIQUE}:
390 !ifndef REPLACEDLL_NOREGISTER
395 ;------------------------
396 ;Try to copy the DLL directly
400 Call :replacedll.file_${REPLACEDLL_UNIQUE}
401 IfErrors 0 replacedll.noreboot_${REPLACEDLL_UNIQUE}
403 ;------------------------
404 ;DLL is in use. Copy it to a temp file and Rename it on reboot.
406 GetTempFileName $R0 $R5
407 Call :replacedll.file_${REPLACEDLL_UNIQUE}
408 Rename /REBOOTOK $R0 $R4
410 ;------------------------
411 ;Register the DLL on reboot
413 !ifndef REPLACEDLL_NOREGISTER
414 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\RunOnce" \
415 "Register $R4" 'rundll32.exe "$R4",DllRegisterServer'
418 Goto replacedll.done_${REPLACEDLL_UNIQUE}
420 ;------------------------
421 ;DLL does not exist - just extract
423 replacedll.copy_${REPLACEDLL_UNIQUE}:
425 Call :replacedll.file_${REPLACEDLL_UNIQUE}
427 ;------------------------
430 replacedll.noreboot_${REPLACEDLL_UNIQUE}:
431 !ifndef REPLACEDLL_NOREGISTER
435 ;------------------------
438 replacedll.done_${REPLACEDLL_UNIQUE}:
447 ;------------------------
450 Goto replacedll.end_${REPLACEDLL_UNIQUE}
452 ;------------------------
453 ;Called to extract the DLL
455 replacedll.file_${REPLACEDLL_UNIQUE}:
456 File /oname=$R0 "${LOCALFILE}"
459 replacedll.end_${REPLACEDLL_UNIQUE}:
461 ;------------------------
464 SetOverwrite lastused
466 !undef REPLACEDLL_UNIQUE
471 ;--------------------------------
474 ;Things that need to be extracted on first (keep these lines before any File command!)
475 ;Only useful for BZIP2 compression
476 !insertmacro MUI_RESERVEFILE_LANGDLL
478 ;--------------------------------
488 ;--------------------------------
491 ;----------------------
493 Section "AFS Client" secClient
495 SetShellVarContext all
497 ; Check for bad previous installation (if we are doing a new install)
498 Call IsAnyAFSInstalled
500 StrCmp $R0 "0" +1 skipCheck
504 ; Stop any running services or we can't replace the files
505 ; Stop the running processes
507 File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe" ; Might not have the MSVCR71.DLL file to run
508 nsExec::Exec '$R0 afsd_service.exe'
509 nsExec::Exec '$R0 afscreds.exe'
510 Exec "afscreds.exe -z"
511 ; in case we are upgrading an old version that does not support -z
512 nsExec::Exec '$R0 afscreds.exe'
514 ;nsExec::Exec '$R0 krbcc32s.exe'
517 nsExec::Exec "net stop TransarcAFSDaemon"
518 nsExec::Exec "net stop TransarcAFSServer"
520 ; Do client components
521 SetOutPath "$INSTDIR\Client\Program"
522 File "${AFS_CLIENT_BUILDDIR}\afsshare.exe"
523 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\libosi.dll" "$INSTDIR\Client\Program\libosi.dll" "$INSTDIR"
524 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\libafsconf.dll" "$INSTDIR\Client\Program\libafsconf.dll" "$INSTDIR"
525 File "${AFS_CLIENT_BUILDDIR}\klog.exe"
526 File "${AFS_CLIENT_BUILDDIR}\tokens.exe"
527 File "${AFS_CLIENT_BUILDDIR}\unlog.exe"
528 File "${AFS_CLIENT_BUILDDIR}\fs.exe"
529 File "${AFS_CLIENT_BUILDDIR}\aklog.exe"
530 File "${AFS_CLIENT_BUILDDIR}\afscreds.exe"
531 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext.dll" "$INSTDIR\Client\Program\afs_shl_ext.dll" "$INSTDIR"
532 File "${AFS_CLIENT_BUILDDIR}\afsd_service.exe"
533 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afslogon.dll" "$INSTDIR\Client\Program\afslogon.dll" "$INSTDIR"
534 File "${AFS_CLIENT_BUILDDIR}\symlink.exe"
535 File "${AFS_DESTDIR}\bin\kpasswd.exe"
536 File "${AFS_SERVER_BUILDDIR}\pts.exe"
537 File "${AFS_SERVER_BUILDDIR}\bos.exe"
538 File "${AFS_SERVER_BUILDDIR}\kas.exe"
539 File "${AFS_SERVER_BUILDDIR}\vos.exe"
540 File "${AFS_SERVER_BUILDDIR}\udebug.exe"
541 File "${AFS_DESTDIR}\bin\translate_et.exe"
542 File "${AFS_DESTDIR}\etc\rxdebug.exe"
543 File "${AFS_DESTDIR}\etc\backup.exe"
549 ; Do WINDOWSDIR components
551 ; Do Windows SYSDIR (Control panel)
553 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl" "$SYSDIR\afs_cpa.cpl" "$INSTDIR"
555 ; Get AFS CellServDB file
556 Call afs.GetCellServDB
559 ; Include Kerberos for Windows files in the installer...
560 SetOutPath "$INSTDIR\kfw\bin\"
561 File "${KFW_SOURCE}\bin\*"
562 SetOutPath "$INSTDIR\kfw\doc"
563 File "${KFW_SOURCE}\doc\*"
566 ;Store install folder
567 WriteRegStr HKCU "${AFS_REGKEY_ROOT}\Client" "" $INSTDIR
568 Call AFSCommon.Install
570 ; Write registry entries
571 WriteRegStr HKCR "*\shellex\ContextMenuHandlers\AFS Client Shell Extension" "" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
572 WriteRegStr HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" "" "AFS Client Shell Extension"
573 WriteRegStr HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}\InprocServer32" "" "$INSTDIR\Client\Program\afs_shl_ext.dll"
574 WriteRegStr HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}\InprocServer32" "ThreadingModel" "Apartment"
575 WriteRegStr HKCR "FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" "" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
576 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" "AFS Client Shell Extension"
579 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion"
580 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "VersionString" ${AFS_VERSION}
581 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Title" "AFS Client"
582 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Description" "AFS Client"
583 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PathName" "$INSTDIR\Client"
584 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Software Type" "File System"
585 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
586 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
587 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PatchLevel" ${AFS_PATCHLEVEL}
588 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "VersionString" ${AFS_VERSION}
589 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "Title" "AFS Client"
590 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "Description" "AFS Client"
591 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "Software Type" "File System"
592 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "PathName" "$INSTDIR\Client\Program"
593 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "MajorVersion" ${AFS_MAJORVERSION}
594 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "MinorVersion" ${AFS_MINORVERSION}
595 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
597 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Debug" 1
598 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "Debug" 1
600 ; Delete the DEBUG string
601 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Debug"
602 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Client\${AFS_VERSION}" "Debug"
605 ; On Windows 2000 work around KB301673. This is fixed in Windows XP and 2003
606 Call GetWindowsVersion
608 StrCmp $R1 "2000" +1 +2
609 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\NetBT\Parameters" "SmbDeviceEnabled" 0
611 ;Write start menu entries
612 CreateDirectory "$SMPROGRAMS\OpenAFS\Client"
613 CreateShortCut "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk" "$INSTDIR\Uninstall.exe"
615 ; Create command line options for AFSCreds...
617 ReadINIStr $R1 $2 "Field 3" "State"
620 ReadINIStr $R1 $2 "Field 5" "State"
623 ReadINIStr $R1 $2 "Field 7" "State"
626 ReadINIStr $R1 $2 "Field 9" "State"
629 ReadINIStr $R1 $2 "Field 13" "State"
633 CreateShortCut "$SMPROGRAMS\OpenAFS\Client\Authentication.lnk" "$INSTDIR\Client\Program\afscreds.exe" "$R2"
635 ReadINIStr $R1 $2 "Field 1" "State"
637 CreateShortCut "$SMSTARTUP\AFS Credentials.lnk" "$INSTDIR\Client\Program\afscreds.exe" "$R2"
641 Push "$INSTDIR\Client\Program"
643 Push "$INSTDIR\Common"
647 ; Add kfw to path too
648 Push "$INSTDIR\kfw\bin"
652 ; Create the AFS service
653 SetOutPath "$INSTDIR\Common"
654 File "${AFS_WININSTALL_DIR}\Service.exe"
655 nsExec::Exec "net stop TransarcAFSDaemon"
656 ;IMPORTANT! If we are not refreshing the config files, do NOT remove the service
657 ;Don't re-install because it must be present or we wouldn't have passed the Reg check
659 ReadRegStr $R2 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "Cell"
660 StrCmp $R2 "" +1 skipremove
661 nsExec::Exec '$INSTDIR\Common\Service.exe u TransarcAFSDaemon'
662 nsExec::Exec '$INSTDIR\Common\Service.exe TransarcAFSDaemon "$INSTDIR\Client\Program\afsd_service.exe" "OpenAFS Client Service"'
664 Delete "$INSTDIR\Common\service.exe"
667 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "" ""
668 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "ProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
669 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
670 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
671 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "Class" 2
672 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "VerboseLogging" 10
674 ; Must also add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\HwOrder
675 ; and HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order
676 ; to also include the service name.
678 ReadINIStr $R0 $1 "Field 7" "State"
679 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonOptions" $R0
680 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonScript" "$INSTDIR\Client\Program\afscreds.exe -:%s -x -a -m -n -q"
681 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "Name" "OpenAFSDaemon"
684 ReadINIStr $R0 $1 "Field 2" "State"
685 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "Cell" $R0
686 ReadINIStr $R0 $1 "Field 3" "State"
687 WriteRegDWORD HKLM "SOFTWARE\OpenAFS\Client" "ShowTrayIcon" 1
688 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "SecurityLevel" $R0
689 ReadINIStr $R0 $1 "Field 5" "State"
690 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "FreelanceClient" $R0
691 ReadINIStr $R0 $1 "Field 9" "State"
692 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "UseDNS" $R0
693 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "NetbiosName" "AFS"
694 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "MountRoot" "/afs"
695 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "RxMaxMTU" 1260
696 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "IsGateway" 0
697 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "HideDotFiles" 1
699 ; Find Lana By Name appears to be causing grief for many people
700 ; I do not have time to track this down so I am simply going to disable it
701 WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "NoFindLanaByName" 1
703 strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon"
704 strcpy $REG_VALUE "DependOnGroup"
705 strcpy $REG_DATA_1 "PNP_TDI"
706 strcpy $REG_DATA_2 ""
707 strcpy $REG_DATA_3 ""
708 Call RegWriteMultiStr
709 strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon"
710 strcpy $REG_VALUE "DependOnService"
711 strcpy $REG_DATA_1 "Tcpip"
712 strcpy $REG_DATA_2 "NETBIOS"
713 strcpy $REG_DATA_3 "RpcSs"
714 Call RegWriteMultiStr
716 ; The following are keys added for Terminal Server compatibility
717 ; http://support.microsoft.com/default.aspx?scid=kb;EN-US;186499
718 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afsd_service.exe" "Flags" 0x408
719 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afsshare.exe" "Flags" 0x408
720 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\klog.exe" "Flags" 0x408
721 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\tokens.exe" "Flags" 0x408
722 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\aklog.exe" "Flags" 0x408
723 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\unlog.exe" "Flags" 0x408
724 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\fs.exe" "Flags" 0x408
725 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afscreds.exe" "Flags" 0x408
726 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\symlink.exe" "Flags" 0x408
727 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\kpasswd.exe" "Flags" 0x408
728 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\pts.exe" "Flags" 0x408
729 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\bos.exe" "Flags" 0x408
730 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\kas.exe" "Flags" 0x408
731 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\vos.exe" "Flags" 0x408
732 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\udebug.exe" "Flags" 0x408
733 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\translate_et.exe" "Flags" 0x408
734 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\rxdebug.exe" "Flags" 0x408
735 WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\backup.exe" "Flags" 0x408
739 WriteUninstaller "$INSTDIR\Uninstall.exe"
745 ; MS Loopback adapter
746 Section "MS Loopback Adapter" secLoopback
748 Call afs.InstallMSLoopback
753 ;------------------------
755 Section "AFS Server" secServer
757 SetShellVarContext all
759 ; Check for bad previous installation (if we are doing a new install)
760 Call IsAnyAFSInstalled
762 StrCmp $R0 "0" +1 skipCheck
766 ; Stop any running services or we can't replace the files
767 ; Stop the running processes
769 File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe"
770 nsExec::Exec '$R0 afscreds.exe'
771 Exec "afscreds.exe -z"
772 ; in case we are upgrading an old version that does not support -z
774 nsExec::Exec '$R0 afscreds.exe'
776 ;nsExec::Exec '$R0 krbcc32s.exe'
781 nsExec::Exec "net stop TransarcAFSDaemon"
782 nsExec::Exec "net stop TransarcAFSServer"
784 CreateDirectory "$INSTDIR\Server\usr\afs\etc"
785 CreateDirectory "$INSTDIR\Server\usr\afs\local"
786 CreateDirectory "$INSTDIR\Server\usr\afs\etc\logs"
788 SetOutPath "$INSTDIR\Server\usr\afs\bin"
789 File "${AFS_SERVER_BUILDDIR}\afskill.exe"
790 File "${AFS_SERVER_BUILDDIR}\afssvrcfg.exe"
791 File "${AFS_SERVER_BUILDDIR}\bosctlsvc.exe"
792 File "${AFS_SERVER_BUILDDIR}\bosserver.exe"
793 File "${AFS_SERVER_BUILDDIR}\buserver.exe"
794 File "${AFS_ETC_BUILDDIR}\butc.exe"
795 File "${AFS_SERVER_BUILDDIR}\fileserver.exe"
796 File "${AFS_ETC_BUILDDIR}\fms.exe"
797 File "${AFS_SERVER_BUILDDIR}\kaserver.exe"
798 File "${AFS_SERVER_BUILDDIR}\ptserver.exe"
799 File "${AFS_SERVER_BUILDDIR}\salvager.exe"
800 File "${AFS_SERVER_BUILDDIR}\upclient.exe"
801 File "${AFS_SERVER_BUILDDIR}\upserver.exe"
802 File "${AFS_SERVER_BUILDDIR}\vlserver.exe"
803 File "${AFS_SERVER_BUILDDIR}\volinfo.exe"
804 File "${AFS_SERVER_BUILDDIR}\volserver.exe"
806 ;AFS Server common files
807 SetOutPath "$INSTDIR\Common"
808 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll"
809 File "${AFS_SERVER_BUILDDIR}\afsbosadmin.dll"
810 File "${AFS_SERVER_BUILDDIR}\afscfgadmin.dll"
811 File "${AFS_SERVER_BUILDDIR}\afskasadmin.dll"
812 File "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll"
816 SetOutPath "$INSTDIR\Common"
820 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver.cpl" "$SYSDIR\afsserver.cpl" "$INSTDIR"
822 ;Store install folder
823 WriteRegStr HKCU "${AFS_REGKEY_ROOT}\AFS Server" "" $INSTDIR
825 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion"
826 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "VersionString" ${AFS_VERSION}
827 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "Title" "AFS Server"
828 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "Description" "AFS Server for Windows"
829 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "PathName" "$INSTDIR\Server"
830 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "Software Type" "File System"
831 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
832 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
833 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "PatchLevel" ${AFS_PATCHLEVEL}
834 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "VersionString" ${AFS_VERSION}
835 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "Title" "AFS Server"
836 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "Description" "AFS Server for Windows"
837 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "Software Type" "File System"
838 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "PathName" "$INSTDIR\Server"
839 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "MajorVersion" ${AFS_MAJORVERSION}
840 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "MinorVersion" ${AFS_MINORVERSION}
841 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
843 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "Debug" 1
844 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "Debug" 1
846 ; Delete the DEBUG string
847 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "Debug"
848 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Server\${AFS_VERSION}" "Debug"
850 ; Install the service
851 SetOutPath "$INSTDIR\Common"
852 File "${AFS_WININSTALL_DIR}\Service.exe"
854 File "${AFS_WININSTALL_DIR}\Service.pdb"
857 ; Check if the service exists--if it does, this is an upgrade/re-install
858 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSServer" "ImagePath"
859 StrCmp $R0 "$INSTDIR\Server\usr\afs\bin\bosctlsvc.exe" SkipStartup
861 ; If an uninstall was done, but we kept the config files, also skip
862 IfFileExists "$INSTDIR\Server\usr\afs\etc\ThisCell" SkipStartup
864 ; Make the server config wizard auto-start on bootup if this is an install (not an upgrade)
865 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" "AFS Server Wizard" '"$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe" /wizard"'
869 ;Don't want to whack existing settings... Make users un-install and then re-install if they want that
870 ;nsExec::Exec '$INSTDIR\Common\service.exe u TransarcAFSServer'
871 nsExec::Exec '$INSTDIR\Common\service.exe TransarcAFSServer "$INSTDIR\Server\usr\afs\bin\bosctlsvc.exe" "OpenAFS AFS Server"'
872 Delete "$INSTDIR\Common\service.exe"
874 CreateDirectory "$SMPROGRAMS\OpenAFS\Server"
875 CreateShortCut "$SMPROGRAMS\OpenAFS\Server\Server Configuration.lnk" "$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe"
878 WriteUninstaller "$INSTDIR\Uninstall.exe"
883 ;----------------------------
884 ; OpenAFS Control Center
885 Section "AFS Control Center" secControl
887 SetShellVarContext all
889 SetOutPath "$INSTDIR\Control Center"
890 File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager.exe"
891 File "${AFS_SERVER_BUILDDIR}\TaAfsAdmSvr.exe"
892 File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager.exe"
895 ;AFS Server common files
896 Call AFSCommon.Install
898 SetOutPath "$INSTDIR\Common"
900 SetOutPath "$INSTDIR\Common"
903 File "${SYSTEMDIR}\msvcr71d.dll"
904 File "${SYSTEMDIR}\msvcp71d.dll"
905 File "${SYSTEMDIR}\mfc71d.dll"
906 File "${SYSTEMDIR}\MFC71CHS.DLL"
907 File "${SYSTEMDIR}\MFC71CHT.DLL"
908 File "${SYSTEMDIR}\MFC71DEU.DLL"
909 File "${SYSTEMDIR}\MFC71ENU.DLL"
910 File "${SYSTEMDIR}\MFC71ESP.DLL"
911 File "${SYSTEMDIR}\MFC71FRA.DLL"
912 File "${SYSTEMDIR}\MFC71ITA.DLL"
913 File "${SYSTEMDIR}\MFC71JPN.DLL"
914 File "${SYSTEMDIR}\MFC71KOR.DLL"
917 File "${SYSTEMDIR}\msvcr70d.dll"
918 File "${SYSTEMDIR}\msvcp70d.dll"
919 File "${SYSTEMDIR}\mfc70d.dll"
920 File "${SYSTEMDIR}\MFC70CHS.DLL"
921 File "${SYSTEMDIR}\MFC70CHT.DLL"
922 File "${SYSTEMDIR}\MFC70DEU.DLL"
923 File "${SYSTEMDIR}\MFC70ENU.DLL"
924 File "${SYSTEMDIR}\MFC70ESP.DLL"
925 File "${SYSTEMDIR}\MFC70FRA.DLL"
926 File "${SYSTEMDIR}\MFC70ITA.DLL"
927 File "${SYSTEMDIR}\MFC70JPN.DLL"
928 File "${SYSTEMDIR}\MFC70KOR.DLL"
930 File "${SYSTEMDIR}\mfc42d.dll"
931 File "${SYSTEMDIR}\msvcp60d.dll"
932 File "${SYSTEMDIR}\msvcrtd.dll"
937 File "${SYSTEMDIR}\mfc71.dll"
938 File "${SYSTEMDIR}\msvcr71.dll"
939 File "${SYSTEMDIR}\msvcp71.dll"
940 File "${SYSTEMDIR}\MFC71CHS.DLL"
941 File "${SYSTEMDIR}\MFC71CHT.DLL"
942 File "${SYSTEMDIR}\MFC71DEU.DLL"
943 File "${SYSTEMDIR}\MFC71ENU.DLL"
944 File "${SYSTEMDIR}\MFC71ESP.DLL"
945 File "${SYSTEMDIR}\MFC71FRA.DLL"
946 File "${SYSTEMDIR}\MFC71ITA.DLL"
947 File "${SYSTEMDIR}\MFC71JPN.DLL"
948 File "${SYSTEMDIR}\MFC71KOR.DLL"
951 File "${SYSTEMDIR}\mfc70.dll"
952 File "${SYSTEMDIR}\msvcr70.dll"
953 File "${SYSTEMDIR}\msvcp70.dll"
954 File "${SYSTEMDIR}\MFC70CHS.DLL"
955 File "${SYSTEMDIR}\MFC70CHT.DLL"
956 File "${SYSTEMDIR}\MFC70DEU.DLL"
957 File "${SYSTEMDIR}\MFC70ENU.DLL"
958 File "${SYSTEMDIR}\MFC70ESP.DLL"
959 File "${SYSTEMDIR}\MFC70FRA.DLL"
960 File "${SYSTEMDIR}\MFC70ITA.DLL"
961 File "${SYSTEMDIR}\MFC70JPN.DLL"
962 File "${SYSTEMDIR}\MFC70KOR.DLL"
964 File "${SYSTEMDIR}\mfc42.dll"
965 File "${SYSTEMDIR}\msvcp60.dll"
966 File "${SYSTEMDIR}\msvcrt.dll"
970 ;Store install folder
971 WriteRegStr HKCU "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "PathName" $INSTDIR
972 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "VersionString" ${AFS_VERSION}
973 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
974 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
975 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "PatchLevel" ${AFS_PATCHLEVEL}
976 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "VersionString" ${AFS_VERSION}
977 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "MajorVersion" ${AFS_MAJORVERSION}
978 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "MinorVersion" ${AFS_MINORVERSION}
979 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
981 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "Debug" 1
982 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "Debug" 1
984 ; Delete the DEBUG string
985 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "Debug"
986 DeleteRegValue HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\${AFS_VERSION}" "Debug"
989 ;Write start menu entries
990 CreateDirectory "$SMPROGRAMS\OpenAFS\Control Center"
991 CreateShortCut "$SMPROGRAMS\OpenAFS\Control Center\Account Manager.lnk" "$INSTDIR\Control Center\TaAfsAccountManager.exe"
992 CreateShortCut "$SMPROGRAMS\OpenAFS\Control Center\Server Manager.lnk" "$INSTDIR\Control Center\TaAfsServerManager.exe"
994 WriteUninstaller "$INSTDIR\Uninstall.exe"
999 ;----------------------------
1000 ; OpenAFS Supplemental Documentation
1001 Section "Supplemental Documentation" secDocs
1002 SetShellVarContext all
1004 StrCmp $LANGUAGE ${LANG_ENGLISH} DoEnglish
1005 StrCmp $LANGUAGE ${LANG_GERMAN} DoGerman
1006 StrCmp $LANGUAGE ${LANG_SPANISH} DoSpanish
1007 StrCmp $LANGUAGE ${LANG_JAPANESE} DoJapanese
1008 StrCmp $LANGUAGE ${LANG_KOREAN} DoKorean
1009 StrCmp $LANGUAGE ${LANG_PORTUGUESEBR} DoPortugueseBR
1010 StrCmp $LANGUAGE ${LANG_SIMPCHINESE} DoSimpChinese
1011 StrCmp $LANGUAGE ${LANG_TRADCHINESE} DoTradChinese
1015 SetOutPath "$INSTDIR\Documentation\html"
1016 File "..\..\doc\install\Documentation\en_US\html\*"
1017 SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1018 File "..\..\doc\install\Documentation\en_US\html\CmdRef\*"
1019 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1020 File "..\..\doc\install\Documentation\en_US\html\InstallGd\*"
1021 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1022 File "..\..\doc\install\Documentation\en_US\html\ReleaseNotes\*"
1023 SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1024 File "..\..\doc\install\Documentation\en_US\html\SysAdminGd\*"
1028 SetOutPath "$INSTDIR\Documentation"
1029 File "..\..\doc\install\Documentation\de_DE\README.TXT"
1030 SetOutPath "$INSTDIR\Documentation\html"
1031 File "..\..\doc\install\Documentation\de_DE\html\*"
1032 SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1033 ;File "..\..\doc\install\Documentation\de_DE\html\CmdRef\*"
1034 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1035 File "..\..\doc\install\Documentation\de_DE\html\InstallGd\*"
1036 ;SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1037 ;File "..\..\doc\install\Documentation\de_DE\html\ReleaseNotes\*"
1038 ;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1039 ;File "..\..\doc\install\Documentation\de_DE\html\SysAdminGd\*"
1043 SetOutPath "$INSTDIR\Documentation"
1044 File "..\..\doc\install\Documentation\es_ES\README.TXT"
1045 SetOutPath "$INSTDIR\Documentation\html"
1046 File "..\..\doc\install\Documentation\es_ES\html\*"
1047 SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1048 ;File "..\..\doc\install\Documentation\es_ES\html\CmdRef\*"
1049 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1050 ;File "..\..\doc\install\Documentation\es_ES\html\InstallGd\*"
1051 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1052 ;File "..\..\doc\install\Documentation\es_ES\html\ReleaseNotes\*"
1053 SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1054 ;File "..\..\doc\install\Documentation\es_ES\html\SysAdminGd\*"
1058 SetOutPath "$INSTDIR\Documentation"
1059 File "..\..\doc\install\Documentation\ja_JP\README.TXT"
1060 SetOutPath "$INSTDIR\Documentation\html"
1061 File "..\..\doc\install\Documentation\ja_JP\html\*"
1062 SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1063 File "..\..\doc\install\Documentation\ja_JP\html\CmdRef\*"
1064 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1065 File "..\..\doc\install\Documentation\ja_JP\html\InstallGd\*"
1066 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1067 ;File "..\..\doc\install\Documentation\ja_JP\html\ReleaseNotes\*"
1068 SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1069 ;File "..\..\doc\install\Documentation\ja_JP\html\SysAdminGd\*"
1073 SetOutPath "$INSTDIR\Documentation"
1074 File "..\..\doc\install\Documentation\ko_KR\README.TXT"
1075 SetOutPath "$INSTDIR\Documentation\html"
1076 File "..\..\doc\install\Documentation\ko_KR\html\*"
1077 ;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1078 ;File "..\..\doc\install\Documentation\ko_KR\html\CmdRef\*"
1079 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1080 File "..\..\doc\install\Documentation\ko_KR\html\InstallGd\*"
1081 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1082 File "..\..\doc\install\Documentation\ko_KR\html\ReleaseNotes\*"
1083 SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1084 File "..\..\doc\install\Documentation\ko_KR\html\SysAdminGd\*"
1088 SetOutPath "$INSTDIR\Documentation"
1089 File "..\..\doc\install\Documentation\pt_BR\README.TXT"
1090 SetOutPath "$INSTDIR\Documentation\html"
1091 File "..\..\doc\install\Documentation\pt_BR\html\*"
1092 ;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1093 ;File "..\..\doc\install\Documentation\pt_BR\html\CmdRef\*"
1094 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1095 File "..\..\doc\install\Documentation\pt_BR\html\InstallGd\*"
1096 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1097 File "..\..\doc\install\Documentation\pt_BR\html\ReleaseNotes\*"
1098 ;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1099 ;File "..\..\doc\install\Documentation\pt_BR\html\SysAdminGd\*"
1103 SetOutPath "$INSTDIR\Documentation"
1104 File "..\..\doc\install\Documentation\zh_CN\README.TXT"
1105 SetOutPath "$INSTDIR\Documentation\html"
1106 File "..\..\doc\install\Documentation\zh_CN\html\*"
1107 ;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1108 ;File "..\..\doc\install\Documentation\zh_CN\html\CmdRef\*"
1109 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1110 File "..\..\doc\install\Documentation\zh_CN\html\InstallGd\*"
1111 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1112 File "..\..\doc\install\Documentation\zh_CN\html\ReleaseNotes\*"
1113 ;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1114 ;File "..\..\doc\install\Documentation\zh_CN\html\SysAdminGd\*"
1118 SetOutPath "$INSTDIR\Documentation"
1119 File "..\..\doc\install\Documentation\zh_TW\README.TXT"
1120 SetOutPath "$INSTDIR\Documentation\html"
1121 File "..\..\doc\install\Documentation\zh_TW\html\*"
1122 ;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
1123 ;File "..\..\doc\install\Documentation\zh_TW\html\CmdRef\*"
1124 SetOutPath "$INSTDIR\Documentation\html\InstallGd"
1125 File "..\..\doc\install\Documentation\zh_TW\html\InstallGd\*"
1126 SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
1127 File "..\..\doc\install\Documentation\zh_TW\html\ReleaseNotes\*"
1128 ;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
1129 ;File "..\..\doc\install\Documentation\zh_TW\html\SysAdminGd\*"
1134 ;Store install folder
1135 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation" "" $INSTDIR
1136 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\CurrentVersion" "VersionString" ${AFS_VERSION}
1137 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
1138 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
1139 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\CurrentVersion" "PatchLevel" ${AFS_PATCHLEVEL}
1140 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\${AFS_VERSION}" "VersionString" ${AFS_VERSION}
1141 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\${AFS_VERSION}" "MajorVersion" ${AFS_MAJORVERSION}
1142 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\${AFS_VERSION}" "MinorVersion" ${AFS_MINORVERSION}
1143 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
1145 ; Write start menu shortcut
1146 SetOutPath "$SMPROGRAMS\OpenAFS"
1147 CreateShortCut "$SMPROGRAMS\OpenAFS\Documentation.lnk" "$INSTDIR\Documentation\html\index.htm"
1150 WriteUninstaller "$INSTDIR\Uninstall.exe"
1151 CreateShortCut "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk" "$INSTDIR\Uninstall.exe"
1152 Call AFSCommon.Install
1156 Section "Software Development Kit (SDK)" secSDK
1158 SetOutPath "$INSTDIR\Client\Program\lib"
1159 File /r "${AFS_CLIENT_LIBDIR}\*.*"
1161 SetOutPath "$INSTDIR\Client\Program\Include"
1162 File /r "${AFS_BUILD_INCDIR}\*.*"
1165 SetOutPath "$INSTDIR\Client\Program\Sample"
1166 File "..\..\afsd\sample\token.c"
1168 ;Store install folder
1169 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS SDK" "" $INSTDIR
1170 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS SDK\CurrentVersion" "VersionString" ${AFS_VERSION}
1171 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
1172 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
1173 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\CurrentVersion" "PatchLevel" ${AFS_PATCHLEVEL}
1174 WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS SDK\${AFS_VERSION}" "VersionString" ${AFS_VERSION}
1175 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\${AFS_VERSION}" "MajorVersion" ${AFS_MAJORVERSION}
1176 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\${AFS_VERSION}" "MinorVersion" ${AFS_MINORVERSION}
1177 WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
1179 WriteUninstaller "$INSTDIR\Uninstall.exe"
1180 SetOutPath "$SMPROGRAMS\OpenAFS"
1181 CreateShortCut "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk" "$INSTDIR\Uninstall.exe"
1183 Call AFSCommon.Install
1187 Section "Debug symbols" secDebug
1188 SectionGetFlags ${secClient} $R0
1189 IntOp $R0 $R0 & ${SF_SELECTED}
1190 IntCmp $R0 ${SF_SELECTED} +1 DoServer
1192 ; Do client components
1193 SetOutPath "$INSTDIR\Client\Program"
1194 File "${AFS_CLIENT_BUILDDIR}\afsshare.pdb"
1195 File "${AFS_CLIENT_BUILDDIR}\libosi.pdb"
1196 File "${AFS_CLIENT_BUILDDIR}\libafsconf.pdb"
1197 File "${AFS_CLIENT_BUILDDIR}\klog.pdb"
1198 File "${AFS_CLIENT_BUILDDIR}\tokens.pdb"
1199 File "${AFS_CLIENT_BUILDDIR}\unlog.pdb"
1200 File "${AFS_CLIENT_BUILDDIR}\fs.pdb"
1201 File "${AFS_CLIENT_BUILDDIR}\aklog.pdb"
1202 File "${AFS_CLIENT_BUILDDIR}\afscreds.pdb"
1203 File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext.pdb"
1204 File "${AFS_CLIENT_BUILDDIR}\afsd_service.pdb"
1205 File "${AFS_CLIENT_BUILDDIR}\afslogon.pdb"
1206 File "${AFS_CLIENT_BUILDDIR}\symlink.pdb"
1207 File "${AFS_DESTDIR}\bin\kpasswd.pdb"
1208 File "${AFS_DESTDIR}\bin\pts.pdb"
1209 File "${AFS_SERVER_BUILDDIR}\bos.pdb"
1210 File "${AFS_SERVER_BUILDDIR}\kas.pdb"
1211 File "${AFS_SERVER_BUILDDIR}\vos.pdb"
1212 File "${AFS_SERVER_BUILDDIR}\udebug.pdb"
1213 File "${AFS_DESTDIR}\bin\translate_et.pdb"
1214 File "${AFS_DESTDIR}\etc\rxdebug.pdb"
1215 File "${AFS_DESTDIR}\etc\backup.pdb"
1217 SetOutPath "$SYSDIR"
1218 File "${AFS_CLIENT_BUILDDIR}\afs_cpa.pdb"
1221 SectionGetFlags ${secServer} $R0
1222 IntOp $R0 $R0 & ${SF_SELECTED}
1223 IntCmp $R0 ${SF_SELECTED} +1 DoControl
1225 ; Do server components
1226 SetOutPath "$INSTDIR\Server\usr\afs\bin"
1227 File "${AFS_SERVER_BUILDDIR}\afskill.pdb"
1228 File "${AFS_SERVER_BUILDDIR}\afssvrcfg.pdb"
1229 File "${AFS_SERVER_BUILDDIR}\bosctlsvc.pdb"
1230 File "${AFS_SERVER_BUILDDIR}\bosserver.pdb"
1231 File "${AFS_SERVER_BUILDDIR}\buserver.pdb"
1232 File "${AFS_ETC_BUILDDIR}\butc.pdb"
1233 File "${AFS_SERVER_BUILDDIR}\fileserver.pdb"
1234 File "${AFS_ETC_BUILDDIR}\fms.pdb"
1235 File "${AFS_SERVER_BUILDDIR}\kaserver.pdb"
1236 File "${AFS_SERVER_BUILDDIR}\ptserver.pdb"
1237 File "${AFS_SERVER_BUILDDIR}\salvager.pdb"
1238 File "${AFS_SERVER_BUILDDIR}\upclient.pdb"
1239 File "${AFS_SERVER_BUILDDIR}\upserver.pdb"
1240 File "${AFS_SERVER_BUILDDIR}\vlserver.pdb"
1241 File "${AFS_SERVER_BUILDDIR}\volinfo.pdb"
1242 File "${AFS_SERVER_BUILDDIR}\volserver.pdb"
1244 ; Do server common components
1245 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.pdb"
1246 File "${AFS_SERVER_BUILDDIR}\afsbosadmin.pdb"
1247 File "${AFS_SERVER_BUILDDIR}\afscfgadmin.pdb"
1248 File "${AFS_SERVER_BUILDDIR}\afskasadmin.pdb"
1249 File "${AFS_SERVER_BUILDDIR}\afsptsadmin.pdb"
1251 SetOutPath "$SYSDIR"
1252 File "${AFS_SERVER_BUILDDIR}\afsserver.pdb"
1254 ; Do control center components
1256 SectionGetFlags ${secControl} $R0
1257 IntOp $R0 $R0 & ${SF_SELECTED}
1258 IntCmp $R0 ${SF_SELECTED} +1 DoCommon
1260 SetOutPath "$INSTDIR\Control Center"
1261 File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager.pdb"
1262 File "${AFS_SERVER_BUILDDIR}\TaAfsAdmSvr.pdb"
1263 File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager.pdb"
1266 SetOutPath "$INSTDIR\Common"
1268 File "${SYSTEMDIR}\msvcr71d.pdb"
1269 File "${SYSTEMDIR}\msvcp71d.pdb"
1270 File "${SYSTEMDIR}\mfc71d.pdb"
1273 File "${SYSTEMDIR}\msvcr70d.pdb"
1274 File "${SYSTEMDIR}\msvcp70d.pdb"
1275 File "${SYSTEMDIR}\mfc70d.pdb"
1277 File "${SYSTEMDIR}\mfc42d.pdb"
1278 File "${SYSTEMDIR}\msvcp60d.pdb"
1279 File "${SYSTEMDIR}\msvcrtd.pdb"
1284 SetOutPath "$INSTDIR\Common"
1285 File "${AFS_CLIENT_BUILDDIR}\afs_config.pdb"
1286 File "${AFS_SERVER_BUILDDIR}\afsadminutil.pdb"
1287 File "${AFS_DESTDIR}\lib\afsauthent.pdb"
1288 File "${AFS_DESTDIR}\lib\afspthread.pdb"
1289 File "${AFS_DESTDIR}\lib\afsrpc.pdb"
1290 File "${AFS_SERVER_BUILDDIR}\afsclientadmin.pdb"
1291 File "${AFS_SERVER_BUILDDIR}\afsprocmgmt.pdb"
1292 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.pdb"
1293 File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib.pdb"
1294 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.pdb"
1295 File "${AFS_SERVER_BUILDDIR}\afsbosadmin.pdb"
1296 File "${AFS_SERVER_BUILDDIR}\afscfgadmin.pdb"
1297 File "${AFS_SERVER_BUILDDIR}\afskasadmin.pdb"
1298 File "${AFS_SERVER_BUILDDIR}\afsptsadmin.pdb"
1303 ;Display the Finish header
1304 ;Insert this macro after the sections if you are not using a finish page
1305 ;!insertmacro MUI_SECTIONS_FINISHHEADER
1307 ;--------------------------------
1308 ;Installer Functions
1312 !insertmacro MUI_LANGDLL_DISPLAY
1314 ; Set the default install options
1319 StrCmp $R0 "true" contInstall
1321 MessageBox MB_OK|MB_ICONSTOP|MB_TOPMOST "You must be an administrator of this machine to install this software."
1326 ; Check that RPC functions are installed (I believe any one of these can be present for
1328 ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_np"
1329 StrCmp $R0 "rpcrt4.dll" contInstall2
1330 ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_ip_tcp"
1331 StrCmp $R0 "rpcrt4.dll" contInstall2
1332 ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncadg_ip_udp"
1333 StrCmp $R0 "rpcrt4.dll" contInstall2
1335 MessageBox MB_OK|MB_ICONSTOP|MB_TOPMOST "An error was detected with your Windows RPC installation. Please make sure Windows RPC is installed before installing OpenAFS."
1341 ; If the Loopback is already installed, we mark the option OFF and Read Only
1342 ; so the user can not select it.
1343 Call afs.isLoopbackInstalled
1344 IntCmp $R1 0 SkipLoop
1345 SectionGetFlags ${secLoopback} $0
1346 IntOp $0 $0 & ${SECTION_OFF}
1347 IntOp $0 $0 | ${SF_RO}
1348 SectionSetFlags ${secLoopback} $0
1351 ; Never install debug symbols unless explicitly selected, except in DEBUG mode
1353 SectionGetFlags ${secDebug} $0
1354 IntOp $0 $0 & ${SECTION_OFF}
1355 SectionSetFlags ${secDebug} $0
1357 SectionGetFlags ${secDebug} $0
1358 IntOp $0 $0 | ${SF_SELECTED}
1359 SectionSetFlags ${secDebug} $0
1361 ; Our logic should be like this.
1362 ; 1) If no AFS components are installed, we do a clean install with default options. (Client/Docs)
1363 ; 2) If existing modules are installed, we keep them selected
1364 ; 3) If it is an upgrade, we set the text accordingly, else we mark it as a re-install
1366 Call IsAnyAFSInstalled
1368 StrCmp $R0 "0" DefaultOptions
1370 Call ShouldClientInstall
1373 ; Check if it was an IBM/Transarc version
1374 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "DisplayName"
1375 StrCmp $R0 "IBM AFS Client" DoIBM
1376 StrCmp $R0 "Transarc AFS Client" DoIBM
1379 StrCmp $R2 "0" NoClient
1380 StrCmp $R2 "1" ReinstallClient
1381 StrCmp $R2 "2" UpgradeClient
1382 StrCmp $R2 "3" DowngradeClient
1385 ReadRegDWORD $R0 HKLM "Software\TransarcCorporation\AFS Client\CurrentVersion" "MajorVersion"
1386 StrCmp $R0 "3" +1 NotIBM
1391 SectionGetFlags ${secClient} $0
1392 IntOp $0 $0 | ${SF_SELECTED}
1393 SectionSetFlags ${secClient} $0
1394 ;# !insertmacro SelectSection ${secClient}
1397 ;StrCpy $1 ${secClient} ; Gotta remember which section we are at now...
1398 SectionGetFlags ${secClient} $0
1399 IntOp $0 $0 & ${SECTION_OFF}
1400 SectionSetFlags ${secClient} $0
1403 SectionGetFlags ${secClient} $0
1404 IntOp $0 $0 | ${SF_SELECTED}
1405 SectionSetFlags ${secClient} $0
1406 SectionSetText ${secClient} $(UPGRADE_CLIENT)
1409 SectionGetFlags ${secClient} $0
1410 IntOp $0 $0 | ${SF_SELECTED}
1411 SectionSetFlags ${secClient} $0
1412 SectionSetText ${secClient} $(REINSTALL_CLIENT)
1415 SectionGetFlags ${secClient} $0
1416 IntOp $0 $0 | ${SF_SELECTED}
1417 SectionSetFlags ${secClient} $0
1418 SectionSetText ${secClient} $(REINSTALL_CLIENT)
1424 Call ShouldServerInstall
1426 StrCmp $R2 "0" NoServer
1427 StrCmp $R2 "1" ReinstallServer
1428 StrCmp $R2 "2" UpgradeServer
1429 StrCmp $R2 "3" DowngradeServer
1431 SectionGetFlags ${secServer} $0
1432 IntOp $0 $0 | ${SF_SELECTED}
1433 SectionSetFlags ${secServer} $0
1434 ;# !insertmacro UnselectSection ${secServer}
1438 SectionGetFlags ${secServer} $0
1439 IntOp $0 $0 | ${SF_SELECTED}
1440 SectionSetFlags ${secServer} $0
1441 SectionSetText ${secServer} $(UPGRADE_SERVER)
1445 SectionGetFlags ${secServer} $0
1446 IntOp $0 $0 | ${SF_SELECTED}
1447 SectionSetFlags ${secServer} $0
1448 SectionSetText ${secServer} $(REINSTALL_SERVER)
1452 SectionGetFlags ${secServer} $0
1453 IntOp $0 $0 | ${SF_SELECTED}
1454 SectionSetFlags ${secServer} $0
1455 SectionSetText ${secServer} $(REINSTALL_SERVER)
1459 SectionGetFlags ${secServer} $0
1460 IntOp $0 $0 & ${SECTION_OFF}
1461 SectionSetFlags ${secServer} $0
1462 ;# !insertmacro UnselectSection ${secServer}
1466 ; Check control center
1467 Call IsControlInstalled
1469 StrCmp $R2 "0" NoControl
1471 SectionGetFlags ${secControl} $0
1472 IntOp $0 $0 | ${SF_SELECTED}
1473 SectionSetFlags ${secControl} $0
1477 SectionGetFlags ${secControl} $0
1478 IntOp $0 $0 & ${SECTION_OFF}
1479 SectionSetFlags ${secControl} $0
1480 ;# !insertmacro UnselectSection ${secControl}
1483 ; Check Documentation
1484 Call IsDocumentationInstalled
1486 StrCmp $R2 "0" NoDocs
1487 SectionGetFlags ${secDocs} $0
1488 IntOp $0 $0 | ${SF_SELECTED}
1489 SectionSetFlags ${secDocs} $0
1493 SectionGetFlags ${secDocs} $0
1494 IntOp $0 $0 & ${SECTION_OFF}
1495 SectionSetFlags ${secDocs} $0
1498 ; To check the SDK, we simply look to see if the files exist. If they do,
1499 ; the SDK is installed. If not, we don't need to push it on the user.
1500 ; If they are there, we want to make sure they match the installed version.
1502 IfFileExists "$INSTDIR\Client\Program\Include\main.h" +1 NoSDK
1503 SectionGetFlags ${secSDK} $0
1504 IntOp $0 $0 | ${SF_SELECTED}
1505 SectionSetFlags ${secSDK} $0
1509 SectionGetFlags ${secSDK} $0
1510 IntOp $0 $0 & ${SECTION_OFF}
1511 SectionSetFlags ${secSDK} $0
1516 SectionGetFlags ${secClient} $0
1517 IntOp $0 $0 | ${SF_SELECTED}
1518 SectionSetFlags ${secClient} $0
1520 ; Server NOT selected
1521 SectionGetFlags ${secServer} $0
1522 IntOp $0 $0 & ${SECTION_OFF}
1523 SectionSetFlags ${secServer} $0
1525 ; Control Center NOT selected
1526 SectionGetFlags ${secControl} $0
1527 IntOp $0 $0 & ${SECTION_OFF}
1528 SectionSetFlags ${secControl} $0
1529 ;# !insertmacro UnselectSection ${secControl}
1531 ; Documentation selected
1532 SectionGetFlags ${secDocs} $0
1533 IntOp $0 $0 | ${SF_SELECTED}
1534 SectionSetFlags ${secDocs} $0
1535 ;# !insertmacro UnselectSection ${secDocs}
1538 SectionGetFlags ${secSDK} $0
1539 IntOp $0 $0 & ${SECTION_OFF}
1540 SectionSetFlags ${secSDK} $0
1541 ;# !insertmacro UnselectSection ${secSDK}
1550 ; See if we can set a default installation path...
1551 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PathName"
1552 StrCmp $R0 "" TryServer
1556 ; Work around bug in 1.3.5000, 1.3.5100, 1.3.5200, 1.3.5201, 1.3.5299 installers...
1557 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MajorVersion"
1558 StrCmp $R0 "1" +1 SkipParent
1559 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MinorVersion"
1560 StrCmp $R0 "3" +1 SkipParent
1561 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PatchLevel"
1562 StrCmp $R0 "5000" UpParent
1563 StrCmp $R0 "5100" UpParent
1564 StrCmp $R0 "5200" UpParent
1565 StrCmp $R0 "5201" UpParent
1566 StrCmp $R0 "5299" UpParent
1578 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion" "PathName"
1579 StrCmp $R0 "" TryControl
1587 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "PathName"
1595 File /oname=$0 CellServPage.ini
1597 File /oname=$1 AFSCell.ini
1599 File /oname=$2 AFSCreds.ini
1600 ;File /oname=$1 ConfigURL.ini
1608 ;--------------------------------
1609 ; These are our cleanup functions
1610 Function .onInstFailed
1615 Function .onInstSuccess
1621 ;--------------------------------
1624 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
1625 !insertmacro MUI_DESCRIPTION_TEXT ${secServer} $(DESC_secServer)
1626 !insertmacro MUI_DESCRIPTION_TEXT ${secClient} $(DESC_secClient)
1627 !insertmacro MUI_DESCRIPTION_TEXT ${secControl} $(DESC_secControl)
1628 !insertmacro MUI_DESCRIPTION_TEXT ${secDocs} $(DESC_secDocs)
1629 !insertmacro MUI_DESCRIPTION_TEXT ${secSDK} $(DESC_secSDK)
1630 !insertmacro MUI_DESCRIPTION_TEXT ${secLoopback} $(DESC_secLoopback)
1631 !insertmacro MUI_DESCRIPTION_TEXT ${secDebug} $(DESC_secDebug)
1632 !insertmacro MUI_FUNCTION_DESCRIPTION_END
1634 ;--------------------------------
1635 ;Uninstaller Section
1638 ; Make sure the user REALLY wants to do this, unless they did a silent uninstall, in which case...let them!
1639 IfSilent StartRemove ; New in v2.0b4
1640 MessageBox MB_YESNO "Are you sure you want to remove OpenAFS from this machine?" IDYES StartRemove
1645 SetShellVarContext all
1646 ; Stop the running processes
1648 File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe"
1649 nsExec::Exec '$R0 afscreds.exe'
1650 Exec "afscreds.exe -z"
1651 ; in case we are upgrading an old version that does not support -z
1653 nsExec::Exec '$R0 afscreds.exe'
1655 nsExec::Exec '$R0 krbcc32s.exe'
1658 ; Delete the AFS service
1660 File /oname=$R0 "${AFS_WININSTALL_DIR}\Service.exe"
1661 nsExec::Exec "net stop TransarcAFSDaemon"
1662 nsExec::Exec "net stop TransarcAFSServer"
1663 nsExec::Exec '$R0 u TransarcAFSDaemon'
1664 ; After we stop the service, but before we delete it, we have to remove the volume data
1665 ; This is because the storage locations are in the registry under the service key.
1666 ; Call un.RemoveAFSVolumes
1667 nsExec::Exec '$R0 u TransarcAFSServer'
1670 Call un.RemoveProvider
1672 Push "$INSTDIR\Client\Program"
1673 Call un.RemoveFromPath
1674 Push "$INSTDIR\Common"
1675 Call un.RemoveFromPath
1677 Push "$INSTDIR\kfw\bin"
1678 Call un.RemoveFromPath
1681 ; Delete documentation
1682 Delete "$INSTDIR\Documentation\README.TXT"
1683 Delete "$INSTDIR\Documentation\html\*"
1684 Delete "$INSTDIR\Documentation\html\CmdRef\*"
1685 Delete "$INSTDIR\Documentation\html\InstallGd\*"
1686 Delete "$INSTDIR\Documentation\html\ReleaseNotes\*"
1687 Delete "$INSTDIR\Documentation\html\SysAdminGd\*"
1689 Delete /REBOOTOK "$INSTDIR\Common\afs_config.exe"
1690 Delete /REBOOTOK "$INSTDIR\Common\afs_shl_ext.dll"
1691 Delete /REBOOTOK "$INSTDIR\Common\afsadminutil.dll"
1692 Delete /REBOOTOK "$INSTDIR\Common\lib\afsauthent.dll"
1693 Delete /REBOOTOK "$INSTDIR\Common\lib\afspthread.dll"
1694 Delete /REBOOTOK "$INSTDIR\Common\lib\afsrpc.dll"
1695 Delete /REBOOTOK "$INSTDIR\Common\afsclientadmin.dll"
1696 Delete /REBOOTOK "$INSTDIR\Common\afsprocmgmt.dll"
1697 Delete /REBOOTOK "$INSTDIR\Common\afsvosadmin.dll"
1698 Delete /REBOOTOK "$INSTDIR\Common\TaAfsAppLib.dll"
1699 Delete /REBOOTOK "$INSTDIR\Common\afsvosadmin.dll"
1700 Delete /REBOOTOK "$INSTDIR\Common\afsbosadmin.dll"
1701 Delete /REBOOTOK "$INSTDIR\Common\afscfgadmin.dll"
1702 Delete /REBOOTOK "$INSTDIR\Common\afskasadmin.dll"
1703 Delete /REBOOTOK "$INSTDIR\Common\afsptsadmin.dll"
1705 Delete /REBOOTOK "$INSTDIR\Common\afs_config.pdb"
1706 Delete /REBOOTOK "$INSTDIR\Common\afs_shl_ext.pdb"
1707 Delete /REBOOTOK "$INSTDIR\Common\afsadminutil.pdb"
1708 Delete /REBOOTOK "$INSTDIR\Common\lib\afsauthent.pdb"
1709 Delete /REBOOTOK "$INSTDIR\Common\lib\afspthread.pdb"
1710 Delete /REBOOTOK "$INSTDIR\Common\lib\afsrpc.pdb"
1711 Delete /REBOOTOK "$INSTDIR\Common\afsclientadmin.pdb"
1712 Delete /REBOOTOK "$INSTDIR\Common\afsprocmgmt.pdb"
1713 Delete /REBOOTOK "$INSTDIR\Common\afsvosadmin.pdb"
1714 Delete /REBOOTOK "$INSTDIR\Common\TaAfsAppLib.pdb"
1715 Delete /REBOOTOK "$INSTDIR\Common\afsvosadmin.pdb"
1716 Delete /REBOOTOK "$INSTDIR\Common\afsbosadmin.pdb"
1717 Delete /REBOOTOK "$INSTDIR\Common\afscfgadmin.pdb"
1718 Delete /REBOOTOK "$INSTDIR\Common\afskasadmin.pdb"
1719 Delete /REBOOTOK "$INSTDIR\Common\afsptsadmin.pdb"
1722 Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
1723 Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
1724 Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.dll"
1725 Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.pdb"
1726 Delete /REBOOTOK "$INSTDIR\bin\mfc71d.dll"
1727 Delete /REBOOTOK "$INSTDIR\bin\mfc71d.pdb"
1730 Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.dll"
1731 Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.pdb"
1732 Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.dll"
1733 Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.pdb"
1734 Delete /REBOOTOK "$INSTDIR\bin\mfc70d.dll"
1735 Delete /REBOOTOK "$INSTDIR\bin\mfc70d.pdb"
1737 Delete /REBOOTOK "$INSTDIR\bin\mfc42d.dll"
1738 Delete /REBOOTOK "$INSTDIR\bin\mfc42d.pdb"
1739 Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.dll"
1740 Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.pdb"
1741 Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.dll"
1742 Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
1746 Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
1747 Delete /REBOOTOK "$INSTDIR\bin\msvcr71.dll"
1748 Delete /REBOOTOK "$INSTDIR\bin\msvcp71.dll"
1749 Delete /REBOOTOK "$INSTDIR\bin\MFC71CHS.DLL"
1750 Delete /REBOOTOK "$INSTDIR\bin\MFC71CHT.DLL"
1751 Delete /REBOOTOK "$INSTDIR\bin\MFC71DEU.DLL"
1752 Delete /REBOOTOK "$INSTDIR\bin\MFC71ENU.DLL"
1753 Delete /REBOOTOK "$INSTDIR\bin\MFC71ESP.DLL"
1754 Delete /REBOOTOK "$INSTDIR\bin\MFC71FRA.DLL"
1755 Delete /REBOOTOK "$INSTDIR\bin\MFC71ITA.DLL"
1756 Delete /REBOOTOK "$INSTDIR\bin\MFC71JPN.DLL"
1757 Delete /REBOOTOK "$INSTDIR\bin\MFC71KOR.DLL"
1760 Delete /REBOOTOK "$INSTDIR\bin\mfc70.dll"
1761 Delete /REBOOTOK "$INSTDIR\bin\msvcr70.dll"
1762 Delete /REBOOTOK "$INSTDIR\bin\msvcp70.dll"
1763 Delete /REBOOTOK "$INSTDIR\bin\MFC70CHS.DLL"
1764 Delete /REBOOTOK "$INSTDIR\bin\MFC70CHT.DLL"
1765 Delete /REBOOTOK "$INSTDIR\bin\MFC70DEU.DLL"
1766 Delete /REBOOTOK "$INSTDIR\bin\MFC70ENU.DLL"
1767 Delete /REBOOTOK "$INSTDIR\bin\MFC70ESP.DLL"
1768 Delete /REBOOTOK "$INSTDIR\bin\MFC70FRA.DLL"
1769 Delete /REBOOTOK "$INSTDIR\bin\MFC70ITA.DLL"
1770 Delete /REBOOTOK "$INSTDIR\bin\MFC70JPN.DLL"
1771 Delete /REBOOTOK "$INSTDIR\bin\MFC70KOR.DLL"
1773 Delete /REBOOTOK "$INSTDIR\bin\mfc42.dll"
1774 Delete /REBOOTOK "$INSTDIR\bin\msvcp60.dll"
1775 Delete /REBOOTOK "$INSTDIR\bin\msvcrt.dll"
1781 ; IfFileExists "$WINDIR\afsdcell.ini" CellExists SkipDelAsk
1783 MessageBox MB_YESNO "Would you like to keep your configuration files?" IDYES SkipDel
1784 Delete "$WINDIR\afsdcell.ini"
1786 Delete "$WINDIR\afsdsbmt.ini"
1787 ; Only remove krb5.ini if KfW was installed
1789 Delete "$WINDIR\krb5.ini"
1791 Delete "$WINDIR\afsdns.ini"
1792 Delete "$WINDIR\afs_freelance.ini"
1795 Delete "$WINDIR\afsd_init.log"
1796 Delete "$INSTDIR\Uninstall.exe"
1799 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\afskill.exe"
1800 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe"
1801 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\bosctlsvc.exe"
1802 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\bosserver.exe"
1803 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\buserver.exe"
1804 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\butc.exe"
1805 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\fileserver.exe"
1806 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\fms.exe"
1807 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\kaserver.exe"
1808 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\ptserver.exe"
1809 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\salvager.exe"
1810 Delete "$INSTDIR\Server\usr\afs\bin\ServerUninst.dll"
1811 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\upclient.exe"
1812 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\upserver.exe"
1813 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\vlserver.exe"
1814 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\volinfo.exe"
1815 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\volserver.exe"
1817 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\afskill.pdb"
1818 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\afssvrcfg.pdb"
1819 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\bosctlsvc.pdb"
1820 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\bosserver.pdb"
1821 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\buserver.pdb"
1822 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\butc.pdb"
1823 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\fileserver.pdb"
1824 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\fms.pdb"
1825 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\kaserver.pdb"
1826 Delete /REBOOTOK "$INSTDIR\Server\usr\afs\bin\ptserver.pdb"
1827 Delete "$INSTDIR\Server\usr\afs\bin\salvager.pdb"
1828 Delete "$INSTDIR\Server\usr\afs\bin\ServerUninst.pdb"
1829 Delete "$INSTDIR\Server\usr\afs\bin\upclient.pdb"
1830 Delete "$INSTDIR\Server\usr\afs\bin\upserver.pdb"
1831 Delete "$INSTDIR\Server\usr\afs\bin\vlserver.pdb"
1832 Delete "$INSTDIR\Server\usr\afs\bin\volinfo.pdb"
1833 Delete "$INSTDIR\Server\usr\afs\bin\volserver.pdb"
1835 RMDir /r "$INSTDIR\Server\usr\afs\bin"
1836 ; do not delete the server configuration files
1837 ; or we will lose the volumes and authentication
1839 ;RmDir /r "$INSTDIR\Server\usr\afs\etc\logs"
1840 ;RmDir /r "$INSTDIR\Server\usr\afs\etc"
1841 ;RmDir /r "$INSTDIR\Server\usr\afs\local"
1842 ;RMDIR /r "$INSTDIR\Server\usr\afs\logs"
1844 Delete /REBOOTOK "$SYSDIR\afsserver.cpl"
1845 Delete /REBOOTOK "$SYSDIR\afs_cpa.cpl"
1847 Delete /REBOOTOK "$SYSDIR\afsserver.pdb"
1848 Delete /REBOOTOK "$SYSDIR\afs_cpa.pdb"
1850 RMDir /r "$INSTDIR\Documentation\html\CmdRef"
1851 RMDir /r "$INSTDIR\Documentation\html\InstallGd"
1852 RMDir /r "$INSTDIR\Documentation\html\ReleaseNotes"
1853 RMDir /r "$INSTDIR\Documentation\html\SysAdminGd"
1854 RMDIr /r "$INSTDIR\Documentation\html"
1856 RMDir "$INSTDIR\Documentation"
1857 ; Delete DOC short cut
1858 Delete /REBOOTOK "$INSTDIR\Client\Program\afscreds.exe"
1860 Delete /REBOOTOK "$INSTDIR\Client\Program\afscreds.pdb"
1862 Delete /REBOOTOK "$INSTDIR\Client\Program\*"
1863 Delete /REBOOTOK "$INSTDIR\Client\Program\Include\*"
1864 Delete /REBOOTOK "$INSTDIR\Client\Program\Include\afs\*"
1865 Delete /REBOOTOK "$INSTDIR\Client\Program\Include\rx\*"
1866 Delete /REBOOTOK "$INSTDIR\Client\Program\Sample\*"
1867 RMDir "$INSTDIR\Client\Program\Sample"
1868 RMDir "$INSTDIR\Client\Program\Include\afs"
1869 RMDir "$INSTDIR\Client\Program\Include\rx"
1870 RMDir "$INSTDIR\Client\Program\Include"
1871 RMDir "$INSTDIR\Client\Program"
1872 RMDir "$INSTDIR\Client"
1876 Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
1877 Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
1878 Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.dll"
1879 Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.pdb"
1880 Delete /REBOOTOK "$INSTDIR\bin\mfc71d.dll"
1881 Delete /REBOOTOK "$INSTDIR\bin\mfc71d.pdb"
1884 Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.dll"
1885 Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.pdb"
1886 Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.dll"
1887 Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.pdb"
1888 Delete /REBOOTOK "$INSTDIR\bin\mfc70d.dll"
1889 Delete /REBOOTOK "$INSTDIR\bin\mfc70d.pdb"
1891 Delete /REBOOTOK "$INSTDIR\bin\mfc42d.dll"
1892 Delete /REBOOTOK "$INSTDIR\bin\mfc42d.pdb"
1893 Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.dll"
1894 Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.pdb"
1895 Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.dll"
1896 Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
1901 Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
1902 Delete /REBOOTOK "$INSTDIR\bin\msvcr71.dll"
1903 Delete /REBOOTOK "$INSTDIR\bin\msvcp71.dll"
1904 Delete /REBOOTOK "$INSTDIR\bin\MFC71CHS.DLL"
1905 Delete /REBOOTOK "$INSTDIR\bin\MFC71CHT.DLL"
1906 Delete /REBOOTOK "$INSTDIR\bin\MFC71DEU.DLL"
1907 Delete /REBOOTOK "$INSTDIR\bin\MFC71ENU.DLL"
1908 Delete /REBOOTOK "$INSTDIR\bin\MFC71ESP.DLL"
1909 Delete /REBOOTOK "$INSTDIR\bin\MFC71FRA.DLL"
1910 Delete /REBOOTOK "$INSTDIR\bin\MFC71ITA.DLL"
1911 Delete /REBOOTOK "$INSTDIR\bin\MFC71JPN.DLL"
1912 Delete /REBOOTOK "$INSTDIR\bin\MFC71KOR.DLL"
1915 Delete /REBOOTOK "$INSTDIR\bin\mfc70.dll"
1916 Delete /REBOOTOK "$INSTDIR\bin\msvcr70.dll"
1917 Delete /REBOOTOK "$INSTDIR\bin\msvcp70.dll"
1918 Delete /REBOOTOK "$INSTDIR\bin\MFC70CHS.DLL"
1919 Delete /REBOOTOK "$INSTDIR\bin\MFC70CHT.DLL"
1920 Delete /REBOOTOK "$INSTDIR\bin\MFC70DEU.DLL"
1921 Delete /REBOOTOK "$INSTDIR\bin\MFC70ENU.DLL"
1922 Delete /REBOOTOK "$INSTDIR\bin\MFC70ESP.DLL"
1923 Delete /REBOOTOK "$INSTDIR\bin\MFC70FRA.DLL"
1924 Delete /REBOOTOK "$INSTDIR\bin\MFC70ITA.DLL"
1925 Delete /REBOOTOK "$INSTDIR\bin\MFC70JPN.DLL"
1926 Delete /REBOOTOK "$INSTDIR\bin\MFC70KOR.DLL"
1928 Delete /REBOOTOK "$INSTDIR\bin\mfc42.dll"
1929 Delete /REBOOTOK "$INSTDIR\bin\msvcp60.dll"
1930 Delete /REBOOTOK "$INSTDIR\bin\msvcrt.dll"
1935 Delete /REBOOTOK "$INSTDIR\Common\*"
1936 RMDir "$INSTDIR\Common"
1940 Delete /REBOOTOK "$INSTDIR\kfw\bin\*"
1941 RMDIR /r "$INSTDIR\kfw\bin"
1942 Delete /REBOOTOK "$INSTDIR\kfw\doc\*"
1943 RMDIR /r "$INSTDIR\kfw\doc"
1944 RMDIR /r "$INSTDIR\kfw"
1947 Delete "$SMPROGRAMS\OpenAFS\Documentation.lnk"
1949 ; Remove control center
1950 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsAccountManager.exe"
1951 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsAdmSvr.exe"
1952 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsServerManager.exe"
1953 Delete /REBOOTOK "$INSTDIR\Control Center\CCUninst.dll"
1954 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsAccountManager.pdb"
1955 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsAdmSvr.pdb"
1956 Delete /REBOOTOK "$INSTDIR\Control Center\TaAfsServerManager.pdb"
1957 RMDir "$INSTDIR\Control Center"
1959 Delete "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk"
1960 Delete "$SMPROGRAMS\OpenAFS\Client\Authentication.lnk"
1961 Delete "$SMPROGRAMS\OpenAFS\Control Center\Account Manager.lnk"
1962 Delete "$SMPROGRAMS\OpenAFS\Control Center\Server Manager.lnk"
1963 RMDIR "$SMPROGRAMS\OpenAFS\Control Center"
1964 RMDir /r "$SMPROGRAMS\OpenAFS\Client"
1965 RMDir /r "$SMPROGRAMS\OpenAFS"
1966 Delete "$SMSTARTUP\AFS Credentials.lnk"
1968 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "CachePath"
1970 Delete "$R0\AFSCache"
1971 Delete "C:\AFSCache"
1973 DeleteRegKey HKCR "*\shellex\ContextMenuHandlers\AFS Client Shell Extension"
1974 DeleteRegKey HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}\InprocServer32"
1975 DeleteRegKey HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
1976 DeleteRegKey HKCR "FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension"
1977 DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
1979 ; The following are keys added for Terminal Server compatibility
1980 ; http://support.microsoft.com/default.aspx?scid=kb;EN-US;186499
1981 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afsd_service.exe"
1982 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afsshare.exe"
1983 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\klog.exe"
1984 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\tokens.exe"
1985 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\aklog.exe"
1986 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\unlog.exe"
1987 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\fs.exe"
1988 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\afscreds.exe"
1989 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\symlink.exe"
1990 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\kpasswd.exe"
1991 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\pts.exe"
1992 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\bos.exe"
1993 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\kas.exe"
1994 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\vos.exe"
1995 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\udebug.exe"
1996 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\translate_et.exe"
1997 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\rxdebug.exe"
1998 DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Compatibility\Applications\backup.exe"
2000 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion"
2001 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client"
2002 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation\CurrentVersion"
2003 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Supplemental Documentation"
2004 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion"
2005 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Control Center"
2006 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Server\CurrentVersion"
2007 DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Server"
2008 DeleteRegKey /ifempty HKLM "${AFS_REGKEY_ROOT}"
2009 DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS"
2010 DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Services\NetBT\Parameters" "SmbDeviceEnabled"
2016 ;--------------------------------
2017 ;Uninstaller Functions
2021 ;Get language from registry
2022 ReadRegStr $LANGUAGE HKCU "Software\OpenAFS\AFS" "Installer Language"
2026 Function un.onUninstSuccess
2029 MessageBox MB_OK "Please reboot your machine to complete uninstallation of the software"
2034 ;------------------------------
2035 ; Get the CellServDB file from the Internet
2037 Function afs.GetCellServDB
2039 ;Check if we should download CellServDB
2040 ReadINIStr $R0 $0 "Field 4" "State"
2041 StrCmp $R0 "1" DoDownload
2043 ;Do nothing if we're keeping the existing file
2044 ReadINIStr $R0 $0 "Field 2" "State"
2047 ReadINIStr $R0 $0 "Field 6" "State"
2048 StrCmp $R0 "1" CheckOther
2050 ReadINIStr $R0 $0 "Field 3" "State"
2051 StrCmp $R0 "1" UsePackaged
2053 ; If none of these, grab file from other location
2057 ReadINIStr $R0 $0 "Field 5" "State"
2058 NSISdl::download $R0 "$WINDIR\afsdcell.ini"
2059 Pop $R0 ;Get the return value
2060 StrCmp $R0 "success" +2
2061 MessageBox MB_OK|MB_ICONSTOP "Download failed: $R0"
2065 SetOutPath "$WINDIR"
2070 ReadINIStr $R0 $0 "Field 7" "State"
2072 CopyFiles $R0 "$WINDIR\afsdcell.ini"
2078 Function AddProvider
2081 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder"
2083 StrCpy $R0 "TransarcAFSDaemon"
2087 StrCmp $R0 "" +1 DoOther
2088 ReadRegStr $R1 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder"
2089 StrCpy $R0 "$R1,TransarcAFSDaemon"
2090 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder" $R0
2092 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder"
2094 StrCpy $R0 "TransarcAFSDaemon"
2098 StrCmp $R0 "" +1 End
2099 ReadRegStr $R1 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder"
2100 StrCpy $R0 "$R1,TransarcAFSDaemon"
2101 WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder" $R0
2107 Function un.RemoveProvider
2109 StrCpy $R0 "TransarcAFSDaemon"
2111 StrCpy $R0 "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder"
2112 Call un.RemoveFromProvider
2113 StrCpy $R0 "TransarcAFSDaemon"
2115 StrCpy $R0 "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order"
2116 Call un.RemoveFromProvider
2120 Function un.RemoveFromProvider
2129 ReadRegStr $1 HKLM "$R0" "ProviderOrder"
2130 StrCpy $5 $1 1 -1 # copy last char
2131 StrCmp $5 "," +2 # if last char != ,
2132 StrCpy $1 "$1," # append ,
2135 Call un.StrStr ; Find `$0,` in $1
2136 Pop $2 ; pos of our dir
2137 StrCmp $2 "" unRemoveFromPath_done
2138 ; else, it is in path
2143 StrCpy $5 $1 -$4 # $5 is now the part before the path to remove
2144 StrCpy $6 $2 "" $3 # $6 is now the part after the path to remove
2147 StrCpy $5 $3 1 -1 # copy last char
2148 StrCmp $5 "," 0 +2 # if last char == ,
2149 StrCpy $3 $3 -1 # remove last char
2151 WriteRegStr HKLM "$R0" "ProviderOrder" $3
2153 unRemoveFromPath_done:
2163 Function CheckPathForAFS
2168 ReadRegStr $1 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
2177 IfFileExists "$3\afsd_service.exe" Error
2178 StrCpy $1 $0 32768 1
2180 IntCmp $2 0 Done Done loop
2183 MessageBox MB_ICONSTOP|MB_OK|MB_TOPMOST "This installer is unable to upgrade the previous version of AFS. Please uninstall the current AFS version before continuing."
2184 Abort "Unable to install OpenAFS"
2192 Function AddToUniquePath
2196 ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
2200 StrCmp $R0 "" +1 Done
2206 ;-------------------------------
2207 ;Do the page to get the CellServDB
2209 Function AFSPageGetCellServDB
2210 ; Skip this page if we are not installing the client
2211 SectionGetFlags ${secClient} $R0
2212 IntOp $R0 $R0 & ${SF_SELECTED}
2215 ; Set the install options here
2218 WriteINIStr $0 "Field 2" "Flags" "DISABLED"
2219 WriteINIStr $0 "Field 3" "State" "1"
2220 WriteINISTR $0 "Field 4" "State" "0"
2221 WriteINIStr $0 "Field 6" "State" "0"
2223 ; If there is an existing afsdcell.ini file, allow the user to choose it and make it default
2224 IfFileExists "$WINDIR\afsdcell.ini" +1 notpresent
2225 WriteINIStr $0 "Field 2" "Flags" "ENABLED"
2226 WriteINIStr $0 "Field 2" "State" "1"
2227 WriteINIStr $0 "Field 3" "State" "0"
2231 !insertmacro MUI_HEADER_TEXT "CellServDB Configuration" "Please choose a method for installing the CellServDB file:"
2232 InstallOptions::dialog $0
2234 StrCmp $R1 "cancel" exit
2235 StrCmp $R1 "back" done
2236 StrCmp $R1 "success" done
2240 ; Check that if a file is set, a valid filename is entered...
2241 ReadINIStr $R0 $0 "Field 6" "State"
2242 StrCmp $R0 "1" CheckFileName
2244 ;Check if a URL is specified, one *IS* specified
2245 ReadINIStr $R0 $0 "Field 4" "State"
2246 StrCmp $R0 "1" CheckURL Skip
2249 ReadINIStr $R0 $0 "Field 5" "State"
2250 StrCmp $R0 "" +1 Skip
2251 MessageBox MB_OK|MB_ICONSTOP $(URLError)
2252 WriteINIStr $0 "Field 4" "State" "0"
2256 ReadINIStr $R0 $0 "Field 7" "State"
2257 IfFileExists $R0 Skip
2259 MessageBox MB_OK|MB_ICONSTOP $(CellError)
2260 WriteINIStr $0 "Field 6" "State" "0"
2268 Function AFSPageGetCellName
2270 ; Skip this page if we are not installing the client
2271 SectionGetFlags ${secClient} $R0
2272 IntOp $R0 $R0 & ${SF_SELECTED}
2276 ; If this is a server install, we do NOT want to recommend the Freelance client
2277 ; And we do not need to ask for the cell name.
2278 SectionGetFlags ${secServer} $R1
2279 IntOp $R1 $R1 & ${SF_SELECTED}
2280 StrCmp $R1 "1" +1 NotServer
2281 WriteINIStr $1 "Field 6" "Text" "Enable AFS Freelance client (Not Recommended for servers)"
2282 WriteINIStr $1 "Field 5" "State" "0"
2283 WriteINIStr $1 "Field 1" "Flags" "DISABLED"
2284 WriteINIStr $1 "Field 2" "Flags" "DISABLED"
2287 WriteINIStr $1 "Field 6" "Text" "Enable AFS Freelance client (Recommended)"
2288 WriteINIStr $1 "Field 5" "State" "1"
2289 WriteINIStr $1 "Field 1" "Flags" ""
2290 WriteINIStr $1 "Field 2" "Flags" ""
2292 ; Get the current cell name, if any
2293 ReadRegStr $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "Cell"
2295 WriteINIStr $1 "Field 2" "State" $R1
2296 !insertmacro MUI_HEADER_TEXT "Client Cell Name Configuration" "Please enter the name for your default cell:"
2297 InstallOptions::dialog $1
2299 StrCmp $R1 "cancel" exit
2300 StrCmp $R1 "back" done
2301 StrCmp $R1 "success" done
2304 ReadINIStr $R0 $1 "Field 2" "State"
2305 StrCmp $R0 "" +1 good
2307 MessageBox MB_OK|MB_ICONSTOP $(CellNameError)
2313 ;---------------------------------------------------------
2314 ;Do the page to get the afscreds.exe startup configuration
2316 Function AFSPageConfigAFSCreds
2317 ; Skip this page if we are not installing the client
2318 SectionGetFlags ${secClient} $R0
2319 IntOp $R0 $R0 & ${SF_SELECTED}
2322 ; Set the install options here
2324 !insertmacro MUI_HEADER_TEXT "AFS Credentials Configuration" "Please choose default options for configuring the AFS Credentials program:"
2325 InstallOptions::dialog $2
2327 StrCmp $R1 "cancel" exit
2328 StrCmp $R1 "back" done
2329 StrCmp $R1 "success" done
2337 ; Common install routines for each module
2338 Function AFSCommon.Install
2340 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayName" "OpenAFS for Windows"
2341 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "UninstallString" "$INSTDIR\uninstall.exe"
2343 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayVersion" "${AFS_VERSION}"
2345 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayVersion" "${AFS_VERSION} Checked/Debug"
2347 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "URLInfoAbout" "http://www.openafs.org/"
2352 ;-------------------
2353 ; Get the currently installed version and place it on the stack
2355 Function GetInstalledVersion
2360 ReadRegStr $R0 HKLM "Software\TransarcCorporation\$R2\CurrentVersion" "VersionString"
2361 StrCmp $R0 "" NotTransarc done
2365 ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\$R2\CurrentVersion" "VersionString"
2374 ; Functions to get each component of the version number
2375 Function GetInstalledVersionMajor
2380 ReadRegDWORD $R0 HKLM "Software\TransarcCorporation\$R2\CurrentVersion" "MajorVersion"
2381 StrCmp $R0 "" NotTransarc done
2385 ReadRegDWORD $R0 HKLM "${AFS_REGKEY_ROOT}\$R2\CurrentVersion" "MajorVersion"
2394 Function GetInstalledVersionMinor
2399 ReadRegDWORD $R0 HKLM "Software\TransarcCorporation\$R2\CurrentVersion" "MinorVersion"
2400 StrCmp $R0 "" NotTransarc done
2404 ReadRegDWORD $R0 HKLM "${AFS_REGKEY_ROOT}\$R2\CurrentVersion" "MinorVersion"
2413 Function GetInstalledVersionPatch
2418 ReadRegDWORD $R0 HKLM "Software\TransarcCorporation\$R2\CurrentVersion" "PatchLevel"
2419 StrCmp $R0 "" NotTransarc done
2423 ReadRegDWORD $R0 HKLM "${AFS_REGKEY_ROOT}\$R2\CurrentVersion" "PatchLevel"
2434 ;-------------------------------
2435 ; Check if the client should be checked for default install
2436 Function ShouldClientInstall
2438 StrCpy $R2 "AFS Client"
2439 Call GetInstalledVersion
2442 StrCmp $R0 "" NotInstalled
2443 ; Now we see if it's an older or newer version
2445 Call GetInstalledVersionMajor
2447 IntCmpU $R0 ${AFS_MAJORVERSION} +1 Upgrade Downgrade
2449 Call GetInstalledVersionMinor
2451 IntCmpU $R0 ${AFS_MINORVERSION} +1 Upgrade Downgrade
2453 Call GetInstalledVersionPatch
2455 IntCmpU $R0 ${AFS_PATCHLEVEL} Reinstall Upgrade Downgrade
2478 ;-------------------------------
2479 ; Check how the server options should be set
2480 Function ShouldServerInstall
2482 StrCpy $R2 "AFS Server"
2483 Call GetInstalledVersion
2486 StrCmp $R0 "" NotInstalled
2487 ; Now we see if it's an older or newer version
2489 Call GetInstalledVersionMajor
2491 IntCmpU $R0 ${AFS_MAJORVERSION} +1 Upgrade Downgrade
2493 Call GetInstalledVersionMinor
2495 IntCmpU $R0 ${AFS_MINORVERSION} +1 Upgrade Downgrade
2497 Call GetInstalledVersionPatch
2499 IntCmpU $R0 ${AFS_PATCHLEVEL} Reinstall Upgrade Downgrade
2524 ; See if AFS Server is installed
2525 ; Returns: "1" if it is, 0 if it is not (on the stack)
2526 Function IsServerInstalled
2528 StrCpy $R2 "AFS Server"
2529 Call GetInstalledVersion
2532 StrCmp $R0 "" NotInstalled
2545 ; See if AFS Client is installed
2546 ; Returns: "1" if it is, 0 if it is not (on the stack)
2547 Function IsClientInstalled
2549 StrCpy $R2 "AFS Client"
2550 Call GetInstalledVersion
2553 StrCmp $R0 "" NotInstalled
2567 ; See if AFS Documentation is installed
2568 ; Returns: "1" if it is, 0 if it is not (on the stack)
2569 Function IsDocumentationInstalled
2571 StrCpy $R2 "AFS Supplemental Documentation"
2572 Call GetInstalledVersion
2575 StrCmp $R0 "" NotInstalled
2588 ; See if Control Center is installed
2589 ; Returns: "1" if it is, 0 if it is not (on the stack)
2590 Function IsControlInstalled
2592 StrCpy $R2 "AFS Control Center"
2593 Call GetInstalledVersion
2596 StrCmp $R0 "" NotInstalled
2611 ; output, top of stack (replaces, with e.g. whatever)
2612 ; modifies no other variables.
2614 Function GetParameters
2618 StrCpy $R0 $CMDLINE 1
2622 StrCpy $R1 ' ' ; we're scanning for a space instead of a quote
2624 StrCpy $R0 $CMDLINE 1 $R2
2625 StrCmp $R0 $R1 loop2
2631 StrCpy $R0 $CMDLINE 1 $R2
2632 StrCmp $R0 " " loop2
2633 StrCpy $R0 $CMDLINE "" $R2
2640 ;Check to see if any AFS component is installed
2641 ;Returns: Value on stack: "1" if it is, "0" if it is not
2642 Function IsAnyAFSInstalled
2647 Call IsClientInstalled
2649 Call IsServerInstalled
2651 Call IsControlInstalled
2653 Call IsDocumentationInstalled
2655 ; Now we must see if ANY of the $Rn values are 1
2656 StrCmp $R0 "1" SomethingInstalled
2657 StrCmp $R1 "1" SomethingInstalled
2658 StrCmp $R2 "1" SomethingInstalled
2659 StrCmp $R3 "1" SomethingInstalled
2673 ;Install English Language Files
2674 Function AFSLangFiles
2676 SetOutPath "$INSTDIR\Common"
2677 File "${AFS_CLIENT_BUILDDIR}\afs_config.exe"
2678 File "${AFS_SERVER_BUILDDIR}\afsadminutil.dll"
2679 !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afsauthent.dll" "$INSTDIR\Common\afsauthent.dll" "$INSTDIR"
2680 !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afspthread.dll" "$INSTDIR\Common\afspthread.dll" "$INSTDIR"
2681 !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afsrpc.dll" "$INSTDIR\Common\afsrpc.dll" "$INSTDIR"
2682 File "${AFS_SERVER_BUILDDIR}\afsclientadmin.dll"
2683 File "${AFS_SERVER_BUILDDIR}\afsprocmgmt.dll"
2684 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll"
2685 File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib.dll"
2686 File "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll"
2687 File "${AFS_SERVER_BUILDDIR}\afsbosadmin.dll"
2688 File "${AFS_SERVER_BUILDDIR}\afscfgadmin.dll"
2689 File "${AFS_SERVER_BUILDDIR}\afskasadmin.dll"
2690 File "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll"
2694 File "${SYSTEMDIR}\msvcr71d.dll"
2695 File "${SYSTEMDIR}\msvcr71d.pdb"
2696 File "${SYSTEMDIR}\msvcp71d.dll"
2697 File "${SYSTEMDIR}\msvcp71d.pdb"
2698 File "${SYSTEMDIR}\mfc71d.dll"
2699 File "${SYSTEMDIR}\mfc71d.pdb"
2700 File "${SYSTEMDIR}\MFC71CHS.DLL"
2701 File "${SYSTEMDIR}\MFC71CHT.DLL"
2702 File "${SYSTEMDIR}\MFC71DEU.DLL"
2703 File "${SYSTEMDIR}\MFC71ENU.DLL"
2704 File "${SYSTEMDIR}\MFC71ESP.DLL"
2705 File "${SYSTEMDIR}\MFC71FRA.DLL"
2706 File "${SYSTEMDIR}\MFC71ITA.DLL"
2707 File "${SYSTEMDIR}\MFC71JPN.DLL"
2708 File "${SYSTEMDIR}\MFC71KOR.DLL"
2711 File "${SYSTEMDIR}\msvcr70d.dll"
2712 File "${SYSTEMDIR}\msvcr70d.pdb"
2713 File "${SYSTEMDIR}\msvcp70d.dll"
2714 File "${SYSTEMDIR}\msvcp70d.pdb"
2715 File "${SYSTEMDIR}\mfc70d.dll"
2716 File "${SYSTEMDIR}\mfc70d.pdb"
2717 File "${SYSTEMDIR}\MFC70CHS.DLL"
2718 File "${SYSTEMDIR}\MFC70CHT.DLL"
2719 File "${SYSTEMDIR}\MFC70DEU.DLL"
2720 File "${SYSTEMDIR}\MFC70ENU.DLL"
2721 File "${SYSTEMDIR}\MFC70ESP.DLL"
2722 File "${SYSTEMDIR}\MFC70FRA.DLL"
2723 File "${SYSTEMDIR}\MFC70ITA.DLL"
2724 File "${SYSTEMDIR}\MFC70JPN.DLL"
2725 File "${SYSTEMDIR}\MFC70KOR.DLL"
2727 File "${SYSTEMDIR}\mfc42d.dll"
2728 File "${SYSTEMDIR}\mfc42d.pdb"
2729 File "${SYSTEMDIR}\msvcp60d.dll"
2730 File "${SYSTEMDIR}\msvcp60d.pdb"
2731 File "${SYSTEMDIR}\msvcrtd.dll"
2732 File "${SYSTEMDIR}\msvcrtd.pdb"
2737 File "${SYSTEMDIR}\mfc71.dll"
2738 File "${SYSTEMDIR}\msvcr71.dll"
2739 File "${SYSTEMDIR}\msvcp71.dll"
2740 File "${SYSTEMDIR}\MFC71CHS.DLL"
2741 File "${SYSTEMDIR}\MFC71CHT.DLL"
2742 File "${SYSTEMDIR}\MFC71DEU.DLL"
2743 File "${SYSTEMDIR}\MFC71ENU.DLL"
2744 File "${SYSTEMDIR}\MFC71ESP.DLL"
2745 File "${SYSTEMDIR}\MFC71FRA.DLL"
2746 File "${SYSTEMDIR}\MFC71ITA.DLL"
2747 File "${SYSTEMDIR}\MFC71JPN.DLL"
2748 File "${SYSTEMDIR}\MFC71KOR.DLL"
2751 File "${SYSTEMDIR}\mfc70.dll"
2752 File "${SYSTEMDIR}\msvcr70.dll"
2753 File "${SYSTEMDIR}\msvcp70.dll"
2754 File "${SYSTEMDIR}\MFC70CHS.DLL"
2755 File "${SYSTEMDIR}\MFC70CHT.DLL"
2756 File "${SYSTEMDIR}\MFC70DEU.DLL"
2757 File "${SYSTEMDIR}\MFC70ENU.DLL"
2758 File "${SYSTEMDIR}\MFC70ESP.DLL"
2759 File "${SYSTEMDIR}\MFC70FRA.DLL"
2760 File "${SYSTEMDIR}\MFC70ITA.DLL"
2761 File "${SYSTEMDIR}\MFC70JPN.DLL"
2762 File "${SYSTEMDIR}\MFC70KOR.DLL"
2764 File "${SYSTEMDIR}\mfc42.dll"
2765 File "${SYSTEMDIR}\msvcp60.dll"
2766 File "${SYSTEMDIR}\msvcrt.dll"
2771 StrCmp $LANGUAGE ${LANG_ENGLISH} DoEnglish
2772 StrCmp $LANGUAGE ${LANG_GERMAN} DoGerman
2773 StrCmp $LANGUAGE ${LANG_SPANISH} DoSpanish
2774 StrCmp $LANGUAGE ${LANG_JAPANESE} DoJapanese
2775 StrCmp $LANGUAGE ${LANG_KOREAN} DoKorean
2776 StrCmp $LANGUAGE ${LANG_PORTUGUESEBR} DoPortugueseBR
2777 StrCmp $LANGUAGE ${LANG_SIMPCHINESE} DoSimpChinese
2778 StrCmp $LANGUAGE ${LANG_TRADCHINESE} DoTradChinese
2782 SetOutPath "$INSTDIR\Documentation"
2783 File "..\..\doc\install\Documentation\en_US\README.TXT"
2785 SetOutPath "$INSTDIR\Client\Program"
2786 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1033.dll" "$INSTDIR\Client\Program\afscreds_1033.dll" "$INSTDIR"
2787 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1033.dll" "$INSTDIR\Client\Program\afs_shl_ext_1033.dll" "$INSTDIR"
2789 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1033.pdb"
2790 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1033.pdb"
2793 SetOutPath "$INSTDIR\Common"
2794 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1033.dll" "$INSTDIR\Common\afs_config_1033.dll" "$INSTDIR"
2795 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1033.dll" "$INSTDIR\Common\afs_cpa_1033.dll" "$INSTDIR"
2796 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1033.dll" "$INSTDIR\Common\afseventmsg_1033.dll" "$INSTDIR"
2797 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1033.dll" "$INSTDIR\Common\afs_setup_utils_1033.dll" "$INSTDIR"
2798 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1033.dll" "$INSTDIR\Common\afsserver_1033.dll" "$INSTDIR"
2799 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1033.dll" "$INSTDIR\Common\afssvrcfg_1033.dll" "$INSTDIR"
2800 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1033.dll" "$INSTDIR\Common\TaAfsAccountManager_1033.dll" "$INSTDIR"
2801 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1033.dll" "$INSTDIR\Common\TaAfsAppLib_1033.dll" "$INSTDIR"
2802 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1033.dll" "$INSTDIR\Common\TaAfsServerManager_1033.dll" "$INSTDIR"
2803 File "..\..\doc\help\en_US\afs-cc.CNT"
2804 File "..\..\doc\help\en_US\afs-cc.hlp"
2805 File "..\..\doc\help\en_US\afs-light.CNT"
2806 File "..\..\doc\help\en_US\afs-light.hlp"
2807 File "..\..\doc\help\en_US\afs-nt.CNT"
2808 File "..\..\doc\help\en_US\afs-nt.HLP"
2809 File "..\..\doc\help\en_US\taafscfg.CNT"
2810 File "..\..\doc\help\en_US\taafscfg.hlp"
2811 File "..\..\doc\help\en_US\taafssvrmgr.CNT"
2812 File "..\..\doc\help\en_US\taafssvrmgr.hlp"
2813 File "..\..\doc\help\en_US\taafsusrmgr.CNT"
2814 File "..\..\doc\help\en_US\taafsusrmgr.hlp"
2817 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1033.pdb"
2818 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1033.pdb"
2819 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1033.pdb"
2820 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1033.pdb"
2821 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1033.pdb"
2822 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1033.pdb"
2823 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1033.pdb"
2824 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1033.pdb"
2830 SetOutPath "$INSTDIR\Documentation"
2831 File "..\..\doc\install\Documentation\de_DE\README.TXT"
2833 SetOutPath "$INSTDIR\Client\Program"
2834 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1032.dll" "$INSTDIR\Client\Program\afscreds_1032.dll" "$INSTDIR"
2835 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1032.dll" "$INSTDIR\Client\Program\afs_shl_ext_1032.dll" "$INSTDIR"
2837 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1032.pdb"
2838 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1032.pdb"
2841 SetOutPath "$INSTDIR\Common"
2842 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1032.dll" "$INSTDIR\Common\afs_config_1032.dll" "$INSTDIR"
2843 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1032.dll" "$INSTDIR\Common\afs_cpa_1032.dll" "$INSTDIR"
2844 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1032.dll" "$INSTDIR\Common\afseventmsg_1032.dll" "$INSTDIR"
2845 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1032.dll" "$INSTDIR\Common\afs_setup_utils_1032.dll" "$INSTDIR"
2846 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1032.dll" "$INSTDIR\Common\afsserver_1032.dll" "$INSTDIR"
2847 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1032.dll" "$INSTDIR\Common\afssvrcfg_1032.dll" "$INSTDIR"
2848 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1032.dll" "$INSTDIR\Common\TaAfsAccountManager_1032.dll" "$INSTDIR"
2849 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1032.dll" "$INSTDIR\Common\TaAfsAppLib_1032.dll" "$INSTDIR"
2850 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1032.dll" "$INSTDIR\Common\TaAfsServerManager_1032.dll" "$INSTDIR"
2851 File "..\..\doc\help\de_DE\afs-cc.CNT"
2852 File "..\..\doc\help\de_DE\afs-cc.hlp"
2853 File "..\..\doc\help\de_DE\afs-light.CNT"
2854 File "..\..\doc\help\de_DE\afs-light.hlp"
2855 File "..\..\doc\help\de_DE\afs-nt.CNT"
2856 File "..\..\doc\help\de_DE\afs-nt.HLP"
2857 File "..\..\doc\help\de_DE\taafscfg.CNT"
2858 File "..\..\doc\help\de_DE\taafscfg.hlp"
2859 File "..\..\doc\help\de_DE\taafssvrmgr.CNT"
2860 File "..\..\doc\help\de_DE\taafssvrmgr.hlp"
2861 File "..\..\doc\help\de_DE\taafsusrmgr.CNT"
2862 File "..\..\doc\help\de_DE\taafsusrmgr.hlp"
2865 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1032.pdb"
2866 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1032.pdb"
2867 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1032.pdb"
2868 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1032.pdb"
2869 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1032.pdb"
2870 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1032.pdb"
2871 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1032.pdb"
2872 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1032.pdb"
2878 SetOutPath "$INSTDIR\Documentation"
2879 File "..\..\doc\install\Documentation\es_ES\README.TXT"
2881 SetOutPath "$INSTDIR\Client\Program"
2882 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1034.dll" "$INSTDIR\Client\Program\afscreds_1034.dll" "$INSTDIR"
2883 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1034.dll" "$INSTDIR\Client\Program\afs_shl_ext_1034.dll" "$INSTDIR"
2885 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1034.pdb"
2886 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1034.pdb"
2889 SetOutPath "$INSTDIR\Common"
2890 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1034.dll" "$INSTDIR\Common\afs_config_1034.dll" "$INSTDIR"
2891 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1034.dll" "$INSTDIR\Common\afs_cpa_1034.dll" "$INSTDIR"
2892 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1034.dll" "$INSTDIR\Common\afseventmsg_1034.dll" "$INSTDIR"
2893 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1034.dll" "$INSTDIR\Common\afs_setup_utils_1034.dll" "$INSTDIR"
2894 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1034.dll" "$INSTDIR\Common\afsserver_1034.dll" "$INSTDIR"
2895 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1034.dll" "$INSTDIR\Common\afssvrcfg_1034.dll" "$INSTDIR"
2896 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1034.dll" "$INSTDIR\Common\TaAfsAccountManager_1034.dll" "$INSTDIR"
2897 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1034.dll" "$INSTDIR\Common\TaAfsAppLib_1034.dll" "$INSTDIR"
2898 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1034.dll" "$INSTDIR\Common\TaAfsServerManager_1034.dll" "$INSTDIR"
2899 File "..\..\doc\help\es_ES\afs-cc.CNT"
2900 File "..\..\doc\help\es_ES\afs-cc.hlp"
2901 File "..\..\doc\help\es_ES\afs-light.CNT"
2902 File "..\..\doc\help\es_ES\afs-light.hlp"
2903 File "..\..\doc\help\es_ES\afs-nt.CNT"
2904 File "..\..\doc\help\es_ES\afs-nt.HLP"
2905 File "..\..\doc\help\es_ES\taafscfg.CNT"
2906 File "..\..\doc\help\es_ES\taafscfg.hlp"
2907 File "..\..\doc\help\es_ES\taafssvrmgr.CNT"
2908 File "..\..\doc\help\es_ES\taafssvrmgr.hlp"
2909 File "..\..\doc\help\es_ES\taafsusrmgr.CNT"
2910 File "..\..\doc\help\es_ES\taafsusrmgr.hlp"
2913 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1034.pdb"
2914 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1034.pdb"
2915 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1034.pdb"
2916 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1034.pdb"
2917 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1034.pdb"
2918 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1034.pdb"
2919 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1034.pdb"
2920 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1034.pdb"
2926 SetOutPath "$INSTDIR\Documentation"
2927 File "..\..\doc\install\Documentation\ja_JP\README.TXT"
2929 SetOutPath "$INSTDIR\Client\Program"
2930 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1041.dll" "$INSTDIR\Client\Program\afscreds_1041.dll" "$INSTDIR"
2931 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1041.dll" "$INSTDIR\Client\Program\afs_shl_ext_1041.dll" "$INSTDIR"
2933 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1041.pdb"
2934 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1041.pdb"
2937 SetOutPath "$INSTDIR\Common"
2938 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1041.dll" "$INSTDIR\Common\afs_config_1041.dll" "$INSTDIR"
2939 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1041.dll" "$INSTDIR\Common\afs_cpa_1041.dll" "$INSTDIR"
2940 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1041.dll" "$INSTDIR\Common\afseventmsg_1041.dll" "$INSTDIR"
2941 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1041.dll" "$INSTDIR\Common\afs_setup_utils_1041.dll" "$INSTDIR"
2942 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1041.dll" "$INSTDIR\Common\afsserver_1041.dll" "$INSTDIR"
2943 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1041.dll" "$INSTDIR\Common\afssvrcfg_1041.dll" "$INSTDIR"
2944 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1041.dll" "$INSTDIR\Common\TaAfsAccountManager_1041.dll" "$INSTDIR"
2945 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1041.dll" "$INSTDIR\Common\TaAfsAppLib_1041.dll" "$INSTDIR"
2946 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1041.dll" "$INSTDIR\Common\TaAfsServerManager_1041.dll" "$INSTDIR"
2947 File "..\..\doc\help\ja_JP\afs-cc.CNT"
2948 File "..\..\doc\help\ja_JP\afs-cc.hlp"
2949 File "..\..\doc\help\ja_JP\afs-light.CNT"
2950 File "..\..\doc\help\ja_JP\afs-light.hlp"
2951 File "..\..\doc\help\ja_JP\afs-nt.CNT"
2952 File "..\..\doc\help\ja_JP\afs-nt.HLP"
2953 File "..\..\doc\help\ja_JP\taafscfg.CNT"
2954 File "..\..\doc\help\ja_JP\taafscfg.hlp"
2955 File "..\..\doc\help\ja_JP\taafssvrmgr.CNT"
2956 File "..\..\doc\help\ja_JP\taafssvrmgr.hlp"
2957 File "..\..\doc\help\ja_JP\taafsusrmgr.CNT"
2958 File "..\..\doc\help\ja_JP\taafsusrmgr.hlp"
2961 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1041.pdb"
2962 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1041.pdb"
2963 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1041.pdb"
2964 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1041.pdb"
2965 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1041.pdb"
2966 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1041.pdb"
2967 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1041.pdb"
2968 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1041.pdb"
2974 SetOutPath "$INSTDIR\Documentation"
2975 File "..\..\doc\install\Documentation\ko_KR\README.TXT"
2977 SetOutPath "$INSTDIR\Client\Program"
2978 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1042.dll" "$INSTDIR\Client\Program\afscreds_1042.dll" "$INSTDIR"
2979 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1042.dll" "$INSTDIR\Client\Program\afs_shl_ext_1042.dll" "$INSTDIR"
2981 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1042.pdb"
2982 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1042.pdb"
2985 SetOutPath "$INSTDIR\Common"
2986 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1042.dll" "$INSTDIR\Common\afs_config_1042.dll" "$INSTDIR"
2987 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1042.dll" "$INSTDIR\Common\afs_cpa_1042.dll" "$INSTDIR"
2988 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1042.dll" "$INSTDIR\Common\afseventmsg_1042.dll" "$INSTDIR"
2989 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1042.dll" "$INSTDIR\Common\afs_setup_utils_1042.dll" "$INSTDIR"
2990 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1042.dll" "$INSTDIR\Common\afsserver_1042.dll" "$INSTDIR"
2991 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1042.dll" "$INSTDIR\Common\afssvrcfg_1042.dll" "$INSTDIR"
2992 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1042.dll" "$INSTDIR\Common\TaAfsAccountManager_1042.dll" "$INSTDIR"
2993 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1042.dll" "$INSTDIR\Common\TaAfsAppLib_1042.dll" "$INSTDIR"
2994 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1042.dll" "$INSTDIR\Common\TaAfsServerManager_1042.dll" "$INSTDIR"
2995 File "..\..\doc\help\ko_KR\afs-cc.CNT"
2996 File "..\..\doc\help\ko_KR\afs-cc.hlp"
2997 File "..\..\doc\help\ko_KR\afs-light.CNT"
2998 File "..\..\doc\help\ko_KR\afs-light.hlp"
2999 File "..\..\doc\help\ko_KR\afs-nt.CNT"
3000 File "..\..\doc\help\ko_KR\afs-nt.HLP"
3001 File "..\..\doc\help\ko_KR\taafscfg.CNT"
3002 File "..\..\doc\help\ko_KR\taafscfg.hlp"
3003 File "..\..\doc\help\ko_KR\taafssvrmgr.CNT"
3004 File "..\..\doc\help\ko_KR\taafssvrmgr.hlp"
3005 File "..\..\doc\help\ko_KR\taafsusrmgr.CNT"
3006 File "..\..\doc\help\ko_KR\taafsusrmgr.hlp"
3009 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1042.pdb"
3010 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1042.pdb"
3011 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1042.pdb"
3012 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1042.pdb"
3013 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1042.pdb"
3014 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1042.pdb"
3015 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1042.pdb"
3016 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1042.pdb"
3023 SetOutPath "$INSTDIR\Documentation"
3024 File "..\..\doc\install\Documentation\pt_BR\README.TXT"
3026 SetOutPath "$INSTDIR\Client\Program"
3027 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1046.dll" "$INSTDIR\Client\Program\afscreds_1046.dll" "$INSTDIR"
3028 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1046.dll" "$INSTDIR\Client\Program\afs_shl_ext_1046.dll" "$INSTDIR"
3030 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1046.pdb"
3031 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1046.pdb"
3034 SetOutPath "$INSTDIR\Common"
3035 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1046.dll" "$INSTDIR\Common\afs_config_1046.dll" "$INSTDIR"
3036 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1046.dll" "$INSTDIR\Common\afs_cpa_1046.dll" "$INSTDIR"
3037 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1046.dll" "$INSTDIR\Common\afseventmsg_1046.dll" "$INSTDIR"
3038 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1046.dll" "$INSTDIR\Common\afs_setup_utils_1046.dll" "$INSTDIR"
3039 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1046.dll" "$INSTDIR\Common\afsserver_1046.dll" "$INSTDIR"
3040 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1046.dll" "$INSTDIR\Common\afssvrcfg_1046.dll" "$INSTDIR"
3041 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1046.dll" "$INSTDIR\Common\TaAfsAccountManager_1046.dll" "$INSTDIR"
3042 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1046.dll" "$INSTDIR\Common\TaAfsAppLib_1046.dll" "$INSTDIR"
3043 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1046.dll" "$INSTDIR\Common\TaAfsServerManager_1046.dll" "$INSTDIR"
3044 File "..\..\doc\help\pt_BR\afs-cc.CNT"
3045 File "..\..\doc\help\pt_BR\afs-cc.hlp"
3046 File "..\..\doc\help\pt_BR\afs-light.CNT"
3047 File "..\..\doc\help\pt_BR\afs-light.hlp"
3048 File "..\..\doc\help\pt_BR\afs-nt.CNT"
3049 File "..\..\doc\help\pt_BR\afs-nt.HLP"
3050 File "..\..\doc\help\pt_BR\taafscfg.CNT"
3051 File "..\..\doc\help\pt_BR\taafscfg.hlp"
3052 File "..\..\doc\help\pt_BR\taafssvrmgr.CNT"
3053 File "..\..\doc\help\pt_BR\taafssvrmgr.hlp"
3054 File "..\..\doc\help\pt_BR\taafsusrmgr.CNT"
3055 File "..\..\doc\help\pt_BR\taafsusrmgr.hlp"
3058 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1046.pdb"
3059 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1046.pdb"
3060 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1046.pdb"
3061 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1046.pdb"
3062 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1046.pdb"
3063 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1046.pdb"
3064 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1046.pdb"
3065 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1046.pdb"
3071 SetOutPath "$INSTDIR\Documentation"
3072 File "..\..\doc\install\Documentation\zh_CN\README.TXT"
3074 SetOutPath "$INSTDIR\Client\Program"
3075 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_2052.dll" "$INSTDIR\Client\Program\afscreds_2052.dll" "$INSTDIR"
3076 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_2052.dll" "$INSTDIR\Client\Program\afs_shl_ext_2052.dll" "$INSTDIR"
3078 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_2052.pdb"
3079 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_2052.pdb"
3082 SetOutPath "$INSTDIR\Common"
3083 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_2052.dll" "$INSTDIR\Common\afs_config_2052.dll" "$INSTDIR"
3084 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_2052.dll" "$INSTDIR\Common\afs_cpa_2052.dll" "$INSTDIR"
3085 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_2052.dll" "$INSTDIR\Common\afseventmsg_2052.dll" "$INSTDIR"
3086 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_2052.dll" "$INSTDIR\Common\afs_setup_utils_2052.dll" "$INSTDIR"
3087 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_2052.dll" "$INSTDIR\Common\afsserver_2052.dll" "$INSTDIR"
3088 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_2052.dll" "$INSTDIR\Common\afssvrcfg_2052.dll" "$INSTDIR"
3089 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_2052.dll" "$INSTDIR\Common\TaAfsAccountManager_2052.dll" "$INSTDIR"
3090 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_2052.dll" "$INSTDIR\Common\TaAfsAppLib_2052.dll" "$INSTDIR"
3091 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_2052.dll" "$INSTDIR\Common\TaAfsServerManager_2052.dll" "$INSTDIR"
3092 File "..\..\doc\help\zh_CN\afs-cc.CNT"
3093 File "..\..\doc\help\zh_CN\afs-cc.hlp"
3094 File "..\..\doc\help\zh_CN\afs-light.CNT"
3095 File "..\..\doc\help\zh_CN\afs-light.hlp"
3096 File "..\..\doc\help\zh_CN\afs-nt.CNT"
3097 File "..\..\doc\help\zh_CN\afs-nt.HLP"
3098 File "..\..\doc\help\zh_CN\taafscfg.CNT"
3099 File "..\..\doc\help\zh_CN\taafscfg.hlp"
3100 File "..\..\doc\help\zh_CN\taafssvrmgr.CNT"
3101 File "..\..\doc\help\zh_CN\taafssvrmgr.hlp"
3102 File "..\..\doc\help\zh_CN\taafsusrmgr.CNT"
3103 File "..\..\doc\help\zh_CN\taafsusrmgr.hlp"
3106 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_2052.pdb"
3107 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_2052.pdb"
3108 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_2052.pdb"
3109 ;File "${AFS_SERVER_BUILDDIR}\afsserver_2052.pdb"
3110 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_2052.pdb"
3111 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_2052.pdb"
3112 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_2052.pdb"
3113 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_2052.pdb"
3119 SetOutPath "$INSTDIR\Documentation"
3120 File "..\..\doc\install\Documentation\zh_TW\README.TXT"
3122 SetOutPath "$INSTDIR\Client\Program"
3123 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1028.dll" "$INSTDIR\Client\Program\_1028.dll" "$INSTDIR"
3124 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1028.dll" "$INSTDIR\Client\Program\afs_shl_ext_1028.dll" "$INSTDIR"
3126 ;File "${AFS_CLIENT_BUILDDIR}\afscreds_1028.pdb"
3127 ;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1028.pdb"
3130 SetOutPath "$INSTDIR\Common"
3131 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1028.dll" "$INSTDIR\Common\afs_config_1028.dll" "$INSTDIR"
3132 !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1028.dll" "$INSTDIR\Common\afs_cpa_1028.dll" "$INSTDIR"
3133 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1028.dll" "$INSTDIR\Common\afseventmsg_1028.dll" "$INSTDIR"
3134 ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1028.dll" "$INSTDIR\Common\afs_setup_utils_1028.dll" "$INSTDIR"
3135 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1028.dll" "$INSTDIR\Common\afsserver_1028.dll" "$INSTDIR"
3136 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1028.dll" "$INSTDIR\Common\afssvrcfg_1028.dll" "$INSTDIR"
3137 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1028.dll" "$INSTDIR\Common\TaAfsAccountManager_1028.dll" "$INSTDIR"
3138 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1028.dll" "$INSTDIR\Common\TaAfsAppLib_1028.dll" "$INSTDIR"
3139 !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1028.dll" "$INSTDIR\Common\TaAfsServerManager_1028.dll" "$INSTDIR"
3140 File "..\..\doc\help\zh_TW\afs-cc.CNT"
3141 File "..\..\doc\help\zh_TW\afs-cc.hlp"
3142 File "..\..\doc\help\zh_TW\afs-light.CNT"
3143 File "..\..\doc\help\zh_TW\afs-light.hlp"
3144 File "..\..\doc\help\zh_TW\afs-nt.CNT"
3145 File "..\..\doc\help\zh_TW\afs-nt.HLP"
3146 File "..\..\doc\help\zh_TW\taafscfg.CNT"
3147 File "..\..\doc\help\zh_TW\taafscfg.hlp"
3148 File "..\..\doc\help\zh_TW\taafssvrmgr.CNT"
3149 File "..\..\doc\help\zh_TW\taafssvrmgr.hlp"
3150 File "..\..\doc\help\zh_TW\taafsusrmgr.CNT"
3151 File "..\..\doc\help\zh_TW\taafsusrmgr.hlp"
3154 ;File "${AFS_CLIENT_BUILDDIR}\afs_config_1028.pdb"
3155 ;File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1028.pdb"
3156 ;File "${AFS_SERVER_BUILDDIR}\afseventmsg_1028.pdb"
3157 ;File "${AFS_SERVER_BUILDDIR}\afsserver_1028.pdb"
3158 ;File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1028.pdb"
3159 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1028.pdb"
3160 ;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1028.pdb"
3161 ;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1028.pdb"
3170 ;====================================================
3171 ; AddToPath - Adds the given dir to the search path.
3172 ; Input - head of the stack
3173 ; Note - Win9x systems requires reboot
3174 ;====================================================
3181 # don't add if the path doesn't exist
3182 IfFileExists $0 "" AddToPath_done
3189 StrCmp $2 "" "" AddToPath_done
3194 StrCmp $2 "" "" AddToPath_done
3195 GetFullPathName /SHORT $3 $0
3200 StrCmp $2 "" "" AddToPath_done
3205 StrCmp $2 "" "" AddToPath_done
3209 StrCmp $1 1 AddToPath_NT
3212 FileOpen $1 "$1\autoexec.bat" a
3215 IntCmp $2 26 0 +2 +2 # DOS EOF
3216 FileSeek $1 -1 END # write over EOF
3217 FileWrite $1 "$\r$\nSET PATH=%PATH%;$3$\r$\n"
3223 ReadRegStr $1 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
3224 StrCpy $2 $1 1 -1 # copy last char
3225 StrCmp $2 ";" 0 +2 # if last char == ;
3226 StrCpy $1 $1 -1 # remove last char
3227 StrCmp $1 "" AddToPath_NTdoIt
3230 WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH" $0
3231 SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
3240 ;====================================================
3241 ; RemoveFromPath - Remove a given dir from the path
3242 ; Input: head of the stack
3243 ;====================================================
3244 Function un.RemoveFromPath
3253 IntFmt $6 "%c" 26 # DOS EOF
3257 StrCmp $1 1 unRemoveFromPath_NT
3260 FileOpen $1 "$1\autoexec.bat" r
3263 GetFullPathName /SHORT $0 $0
3264 StrCpy $0 "SET PATH=%PATH%;$0"
3265 Goto unRemoveFromPath_dosLoop
3267 unRemoveFromPath_dosLoop:
3269 StrCpy $5 $3 1 -1 # read last char
3270 StrCmp $5 $6 0 +2 # if DOS EOF
3271 StrCpy $3 $3 -1 # remove DOS EOF so we can compare
3272 StrCmp $3 "$0$\r$\n" unRemoveFromPath_dosLoopRemoveLine
3273 StrCmp $3 "$0$\n" unRemoveFromPath_dosLoopRemoveLine
3274 StrCmp $3 "$0" unRemoveFromPath_dosLoopRemoveLine
3275 StrCmp $3 "" unRemoveFromPath_dosLoopEnd
3277 Goto unRemoveFromPath_dosLoop
3278 unRemoveFromPath_dosLoopRemoveLine:
3280 Goto unRemoveFromPath_dosLoop
3282 unRemoveFromPath_dosLoopEnd:
3286 Delete "$1\autoexec.bat"
3287 CopyFiles /SILENT $4 "$1\autoexec.bat"
3289 Goto unRemoveFromPath_done
3291 unRemoveFromPath_NT:
3292 ReadRegStr $1 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
3293 StrCpy $5 $1 1 -1 # copy last char
3294 StrCmp $5 ";" +2 # if last char != ;
3295 StrCpy $1 "$1;" # append ;
3298 Call un.StrStr ; Find `$0;` in $1
3299 Pop $2 ; pos of our dir
3300 StrCmp $2 "" unRemoveFromPath_done
3301 ; else, it is in path
3306 StrCpy $5 $1 -$4 # $5 is now the part before the path to remove
3307 StrCpy $6 $2 "" $3 # $6 is now the part after the path to remove
3310 StrCpy $5 $3 1 -1 # copy last char
3311 StrCmp $5 ";" 0 +2 # if last char == ;
3312 StrCpy $3 $3 -1 # remove last char
3314 WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH" $3
3315 SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
3317 unRemoveFromPath_done:
3327 ;====================================================
3328 ; IsNT - Returns 1 if the current system is NT, 0
3330 ; Output: head of the stack
3331 ;====================================================
3335 ReadRegStr $0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
3336 StrCmp $0 "" 0 IsNT_yes
3348 !insertmacro IsNT ""
3349 !insertmacro IsNT "un."
3351 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3353 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3354 ;====================================================
3355 ; StrStr - Finds a given string in another given string.
3356 ; Returns -1 if not found and the pos if found.
3357 ; Input: head of the stack - string to find
3358 ; second in the stack - string to find in
3359 ; Output: head of the stack
3360 ;====================================================
3362 Function ${un}StrStr
3363 Exch $R1 ; st=haystack,old$R1, $R1=needle
3364 Exch ; st=old$R1,haystack
3365 Exch $R2 ; st=old$R1,old$R2, $R2=haystack
3377 StrCpy $R5 $R2 $R3 $R4
3383 StrCpy $R1 $R2 "" $R4
3391 !insertmacro StrStr ""
3392 !insertmacro StrStr "un."
3395 !ifdef ADDSHAREDDLLUSED
3398 ; Increments a shared DLLs reference count.
3399 ; Use by passing one item on the stack (the full path of the DLL).
3402 ; Push $SYSDIR\myDll.dll
3406 Function AddSharedDLL
3409 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1
3411 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0
3417 ; un.RemoveSharedDLL
3419 ; Decrements a shared DLLs reference count, and removes if necessary.
3420 ; Use by passing one item on the stack (the full path of the DLL).
3421 ; Note: for use in the main installer (not the uninstaller), rename the
3422 ; function to RemoveSharedDLL.
3425 ; Push $SYSDIR\myDll.dll
3426 ; Call un.RemoveSharedDLL
3429 Function un.RemoveSharedDLL
3432 ReadRegDword $R0 HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1
3433 StrCmp $R0 "" remove
3435 IntCmp $R0 0 rk rk uk
3437 DeleteRegValue HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1
3440 WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\SharedDLLs $R1 $R0
3443 Delete /REBOOTOK $R1
3451 ; Installs the loopback adpater and disables it on Windows 2000
3452 Function afs.InstallMSLoopback
3454 File /oname=$R0 "${AFS_WININSTALL_DIR}\afsloopback.dll"
3455 nsExec::Exec "rundll32.exe $R0 doLoopBackEntry AFS 10.254.254.253 255.255.255.252"
3459 Function afs.isLoopbackInstalled
3461 File "${AFS_WININSTALL_DIR}\afsloopback.dll"
3462 System::Call "$TEMP\afsloopback.dll::IsLoopbackInstalled() i().r11"
3463 Delete "$TEMP\afsloopback.dll"
3469 ; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/
3470 ; Updated by Joost Verburg
3472 ; Returns on top of stack
3474 ; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003)
3476 ; '' (Unknown Windows Version)
3479 ; Call GetWindowsVersion
3481 ; ; at this point $R0 is "NT 4.0" or whatnot
3483 Function GetWindowsVersion
3490 ReadRegStr $R0 HKLM \
3491 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
3493 IfErrors 0 lbl_winnt
3496 ReadRegStr $R0 HKLM \
3497 "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber
3500 StrCmp $R1 '4' 0 lbl_error
3504 StrCmp $R1 '4.0' lbl_win32_95
3505 StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98
3523 StrCmp $R1 '3' lbl_winnt_x
3524 StrCmp $R1 '4' lbl_winnt_x
3528 StrCmp $R1 '5.0' lbl_winnt_2000
3529 StrCmp $R1 '5.1' lbl_winnt_XP
3530 StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error
3533 StrCpy $R0 "NT $R0" 6
3558 ; Author: Lilla (lilla@earthlink.net) 2003-06-13
3559 ; function IsUserAdmin uses plugin \NSIS\PlusgIns\UserInfo.dll
3560 ; This function is based upon code in \NSIS\Contrib\UserInfo\UserInfo.nsi
3561 ; This function was tested under NSIS 2 beta 4 (latest CVS as of this writing).
3565 ; Pop $R0 ; at this point $R0 is "true" or "false"
3567 Function IsUserAdmin
3576 UserInfo::GetAccountType
3579 StrCmp $R2 "Admin" 0 Continue
3580 ; Observation: I get here when running Win98SE. (Lilla)
3581 ; The functions UserInfo.dll looks for are there on Win98 too,
3582 ; but just don't work. So UserInfo.dll, knowing that admin isn't required
3583 ; on Win98, returns admin anyway. (per kichik)
3584 ; MessageBox MB_OK 'User "$R1" is in the Administrators group'
3589 ; You should still check for an empty string because the functions
3590 ; UserInfo.dll looks for may not be present on Windows 95. (per kichik)
3593 ;MessageBox MB_OK 'User "$R1" is in the "$R2" group'
3597 ; comment/message below is by UserInfo.nsi author:
3598 ; This one means you don't need to care about admin or
3599 ; not admin because Windows 9x doesn't either
3600 ;MessageBox MB_OK "Error! This DLL can't run under Windows 9x!"
3604 ;MessageBox MB_OK 'User= "$R1" AccountType= "$R2" IsUserAdmin= "$R0"'
3612 ; input, top of stack (e.g. C:\Program Files\Poop)
3613 ; output, top of stack (replaces, with e.g. C:\Program Files)
3614 ; modifies no other variables.
3617 ; Push "C:\Program Files\Directory\Whatever"
3620 ; ; at this point $R0 will equal "C:\Program Files\Directory"
3634 IntCmp $R1 $R2 get 0 get
3635 StrCpy $R3 $R0 1 -$R1
3650 ;--------------------------------
3651 ;Handle what must and what must not be installed
3652 Function .onSelChange
3653 ; If they install the server, they MUST install the client
3654 SectionGetFlags ${secServer} $R0
3655 IntOp $R0 $R0 & ${SF_SELECTED}
3656 StrCmp $R0 "1" MakeClientSelected
3658 ; If they install the control center, we'll give them the client.
3659 ; It may not be required, but it's a bit more useful
3660 SectionGetFlags ${secControl} $R0
3661 IntOp $R0 $R0 & ${SF_SELECTED}
3662 StrCmp $R0 "1" MakeClientSelected
3666 SectionGetFlags ${secClient} $R0
3667 IntOp $R0 $R0 | ${SF_SELECTED}
3668 SectionSetFlags ${secClient} $R0
3673 Function RegWriteMultiStr
3674 !define HKEY_CLASSES_ROOT 0x80000000
3675 !define HKEY_CURRENT_USER 0x80000001
3676 !define HKEY_LOCAL_MACHINE 0x80000002
3677 !define HKEY_USERS 0x80000003
3678 !define HKEY_PERFORMANCE_DATA 0x80000004
3679 !define HKEY_PERFORMANCE_TEXT 0x80000050
3680 !define HKEY_PERFORMANCE_NLSTEXT 0x80000060
3681 !define HKEY_CURRENT_CONFIG 0x80000005
3682 !define HKEY_DYN_DATA 0x80000006
3684 !define KEY_QUERY_VALUE 0x0001
3685 !define KEY_SET_VALUE 0x0002
3686 !define KEY_CREATE_SUB_KEY 0x0004
3687 !define KEY_ENUMERATE_SUB_KEYS 0x0008
3688 !define KEY_NOTIFY 0x0010
3689 !define KEY_CREATE_LINK 0x0020
3693 !define REG_EXPAND_SZ 2
3694 !define REG_BINARY 3
3696 !define REG_DWORD_LITTLE_ENDIAN 4
3697 !define REG_DWORD_BIG_ENDIAN 5
3699 !define REG_MULTI_SZ 7
3701 !define RegCreateKey "Advapi32::RegCreateKeyA(i, t, *i) i"
3702 !define RegSetValueEx "Advapi32::RegSetValueExA(i, t, i, i, i, i) i"
3703 !define RegCloseKey "Advapi32::RegCloseKeyA(i) i"
3710 SetPluginUnload alwaysoff
3711 ; Create a buffer for the multi_sz value
3712 System::Call "*(&t${NSIS_MAX_STRLEN}) i.r1"
3713 ; Open/create the registry key
3714 System::Call "${RegCreateKey}(${HKEY_LOCAL_MACHINE}, '$REG_SUB_KEY', .r0) .r9"
3717 MessageBox MB_OK|MB_ICONSTOP "Can't create registry key! ($9)"
3721 ; Fill in the buffer with our strings
3722 StrCpy $2 $1 ; Initial position
3724 StrLen $9 '$REG_DATA_1' ; Length of first string
3725 IntOp $9 $9 + 1 ; Plus null
3726 System::Call "*$2(&t$9 '$REG_DATA_1')" ; Place the string
3727 IntOp $2 $2 + $9 ; Advance to the next position
3729 StrCmp '$REG_DATA_2' "" terminate
3730 StrLen $9 '$REG_DATA_2' ; Length of second string
3731 IntOp $9 $9 + 1 ; Plus null
3732 System::Call "*$2(&t$9 '$REG_DATA_2')" ; Place the string
3733 IntOp $2 $2 + $9 ; Advance to the next position
3735 StrCmp '$REG_DATA_3' "" terminate
3736 StrLen $9 '$REG_DATA_3' ; Length of third string
3737 IntOp $9 $9 + 1 ; Plus null
3738 System::Call "*$2(&t$9 '$REG_DATA_3')" ; Place the string
3739 IntOp $2 $2 + $9 ; Advance to the next position
3742 System::Call "*$2(&t1 '')" ; Place the terminating null
3743 IntOp $2 $2 + 1 ; Advance to the next position
3745 ; Create/write the value
3746 IntOp $2 $2 - $1 ; Total length
3747 System::Call "${RegSetValueEx}(r0, '$REG_VALUE', 0, ${REG_MULTI_SZ}, r1, r2) .r9"
3750 MessageBox MB_OK|MB_ICONSTOP "Can't set key value! ($9)"
3754 ; Close the registry key
3755 System::Call "${RegCloseKey}(r0)"
3759 SetPluginUnload manual