VIAddVersionKey "ProductVersion" ${AFS_VERSION}
VIAddVersionKey "FileVersion" ${AFS_VERSION}
VIAddVersionKey "FileDescription" "OpenAFS for Windows Installer"
-VIAddVersionKey "LegalCopyright" "(C)2003"
+VIAddVersionKey "LegalCopyright" "(C)2000-2004"
!ifdef DEBUG
VIAddVersionKey "PrivateBuild" "Checked/Debug"
!endif ; End DEBUG
;--------------------------------
;Configuration
+!define REPLACEDLL_NOREGISTER
+
;General
!ifndef DEBUG
OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows.exe"
OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows-DEBUG.exe"
!endif
SilentInstall normal
- SetCompressor bzip2
+ SetCompressor lzma
!define MUI_ICON "..\..\client_config\afs_config.ico"
!define MUI_UNICON "..\..\client_config\afs_config.ico"
!define AFS_COMPANY_NAME "OpenAFS"
; The Windows temp directory could be located on any volume,
; so you cannot use this directory.
;
-; Define UPGRADEDLL_NOREGISTER if you want to upgrade a DLL that does not
+; Define REPLACEDLL_NOREGISTER if you want to upgrade a DLL that does not
; have to be registered.
;
; Note: If you want to support Win9x, you can only use
; short filenames (8.3).
;
; Example of usage:
-; !insertmacro UpgradeDLL "dllname.dll" "$SYSDIR\dllname.dll" "$SYSDIR"
+; !insertmacro ReplaceDLL "dllname.dll" "$SYSDIR\dllname.dll" "$SYSDIR"
;
-!macro UpgradeDLL LOCALFILE DESTFILE TEMPBASEDIR
+!macro ReplaceDLL LOCALFILE DESTFILE TEMPBASEDIR
Push $R0
Push $R1
;------------------------
;Unique number for labels
- !define UPGRADEDLL_UNIQUE ${__LINE__}
+ !define REPLACEDLL_UNIQUE ${__LINE__}
;------------------------
;Copy the parameters used on run-time to a variable
;------------------------
;Check file and version
-
- IfFileExists $R4 0 upgradedll.copy_${UPGRADEDLL_UNIQUE}
-
- ClearErrors
- GetDLLVersionLocal "${LOCALFILE}" $R0 $R1
- GetDLLVersion $R4 $R2 $R3
- IfErrors upgradedll.upgrade_${UPGRADEDLL_UNIQUE}
-
- IntCmpU $R0 $R2 0 upgradedll.done_${UPGRADEDLL_UNIQUE} \
- upgradedll.upgrade_${UPGRADEDLL_UNIQUE}
- IntCmpU $R1 $R3 upgradedll.done_${UPGRADEDLL_UNIQUE} \
- upgradedll.done_${UPGRADEDLL_UNIQUE} \
- upgradedll.upgrade_${UPGRADEDLL_UNIQUE}
+ ;
+ IfFileExists $R4 0 replacedll.copy_${REPLACEDLL_UNIQUE}
+
+ ;ClearErrors
+ ; GetDLLVersionLocal "${LOCALFILE}" $R0 $R1
+ ; GetDLLVersion $R4 $R2 $R3
+ ;IfErrors replacedll.upgrade_${REPLACEDLL_UNIQUE}
+ ;
+ ;IntCmpU $R0 $R2 0 replacedll.done_${REPLACEDLL_UNIQUE} \
+ ; replacedll.upgrade_${REPLACEDLL_UNIQUE}
+ ;IntCmpU $R1 $R3 replacedll.done_${REPLACEDLL_UNIQUE} \
+ ; replacedll.done_${REPLACEDLL_UNIQUE} \
+ ; replacedll.upgrade_${REPLACEDLL_UNIQUE}
;------------------------
- ;Let's upgrade the DLL!
+ ;Let's replace the DLL!
SetOverwrite try
- upgradedll.upgrade_${UPGRADEDLL_UNIQUE}:
- !ifndef UPGRADEDLL_NOREGISTER
+ ;replacedll.upgrade_${REPLACEDLL_UNIQUE}:
+ !ifndef REPLACEDLL_NOREGISTER
;Unregister the DLL
UnRegDLL $R4
!endif
ClearErrors
StrCpy $R0 $R4
- Call :upgradedll.file_${UPGRADEDLL_UNIQUE}
- IfErrors 0 upgradedll.noreboot_${UPGRADEDLL_UNIQUE}
+ Call :replacedll.file_${REPLACEDLL_UNIQUE}
+ IfErrors 0 replacedll.noreboot_${REPLACEDLL_UNIQUE}
;------------------------
;DLL is in use. Copy it to a temp file and Rename it on reboot.
GetTempFileName $R0 $R5
- Call :upgradedll.file_${UPGRADEDLL_UNIQUE}
+ Call :replacedll.file_${REPLACEDLL_UNIQUE}
Rename /REBOOTOK $R0 $R4
;------------------------
;Register the DLL on reboot
- !ifndef UPGRADEDLL_NOREGISTER
+ !ifndef REPLACEDLL_NOREGISTER
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\RunOnce" \
"Register $R4" 'rundll32.exe "$R4",DllRegisterServer'
!endif
- Goto upgradedll.done_${UPGRADEDLL_UNIQUE}
+ Goto replacedll.done_${REPLACEDLL_UNIQUE}
;------------------------
;DLL does not exist - just extract
- upgradedll.copy_${UPGRADEDLL_UNIQUE}:
+ replacedll.copy_${REPLACEDLL_UNIQUE}:
StrCpy $R0 $R4
- Call :upgradedll.file_${UPGRADEDLL_UNIQUE}
+ Call :replacedll.file_${REPLACEDLL_UNIQUE}
;------------------------
;Register the DLL
- upgradedll.noreboot_${UPGRADEDLL_UNIQUE}:
- !ifndef UPGRADEDLL_NOREGISTER
+ replacedll.noreboot_${REPLACEDLL_UNIQUE}:
+ !ifndef REPLACEDLL_NOREGISTER
RegDLL $R4
!endif
;------------------------
;Done
- upgradedll.done_${UPGRADEDLL_UNIQUE}:
+ replacedll.done_${REPLACEDLL_UNIQUE}:
Pop $R5
Pop $R4
;------------------------
;End
- Goto upgradedll.end_${UPGRADEDLL_UNIQUE}
+ Goto replacedll.end_${REPLACEDLL_UNIQUE}
;------------------------
;Called to extract the DLL
- upgradedll.file_${UPGRADEDLL_UNIQUE}:
+ replacedll.file_${REPLACEDLL_UNIQUE}:
File /oname=$R0 "${LOCALFILE}"
Return
- upgradedll.end_${UPGRADEDLL_UNIQUE}:
+ replacedll.end_${REPLACEDLL_UNIQUE}:
;------------------------
;Restore settings
SetOverwrite lastused
- !undef UPGRADEDLL_UNIQUE
+ !undef REPLACEDLL_UNIQUE
!macroend
Section "AFS Client" secClient
SetShellVarContext all
+
+ ; Check for bad previous installation (if we are doing a new install)
+ Call IsAnyAFSInstalled
+ Pop $R0
+ StrCmp $R0 "0" +1 skipCheck
+ Call CheckPathForAFS
+ skipCheck:
+
; Stop any running services or we can't replace the files
; Stop the running processes
GetTempFileName $R0
File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe" ; Might not have the MSVCR71.DLL file to run
+ nsExec::Exec '$R0 afsd_service.exe'
+ nsExec::Exec '$R0 afscreds.exe'
+ Exec "afscreds.exe -z"
+ ; in case we are upgrading an old version that does not support -z
nsExec::Exec '$R0 afscreds.exe'
- nsExec::Exec "afscreds.exe -z"
!IFDEF INSTALL_KFW
;nsExec::Exec '$R0 krbcc32s.exe'
!ENDIF
; Do client components
SetOutPath "$INSTDIR\Client\Program"
File "${AFS_CLIENT_BUILDDIR}\afsshare.exe"
- !define UPGRADEDLL_NOREGISTER
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\libosi.dll" "$INSTDIR\Client\Program\libosi.dll" "$INSTDIR"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\libafsconf.dll" "$INSTDIR\Client\Program\libafsconf.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\libosi.dll" "$INSTDIR\Client\Program\libosi.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\libafsconf.dll" "$INSTDIR\Client\Program\libafsconf.dll" "$INSTDIR"
File "${AFS_CLIENT_BUILDDIR}\klog.exe"
File "${AFS_CLIENT_BUILDDIR}\tokens.exe"
File "${AFS_CLIENT_BUILDDIR}\unlog.exe"
File "${AFS_CLIENT_BUILDDIR}\fs.exe"
+ File "${AFS_CLIENT_BUILDDIR}\aklog.exe"
File "${AFS_CLIENT_BUILDDIR}\afscreds.exe"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext.dll" "$INSTDIR\Client\Program\afs_shl_ext.dll" "$INSTDIR"
- File "${AFS_BUILD_INCDIR}\afs\auth.h"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext.dll" "$INSTDIR\Client\Program\afs_shl_ext.dll" "$INSTDIR"
File "${AFS_CLIENT_BUILDDIR}\afsd_service.exe"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afslogon.dll" "$INSTDIR\Client\Program\afslogon.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afslogon.dll" "$INSTDIR\Client\Program\afslogon.dll" "$INSTDIR"
File "${AFS_CLIENT_BUILDDIR}\symlink.exe"
File "${AFS_DESTDIR}\bin\kpasswd.exe"
File "${AFS_SERVER_BUILDDIR}\pts.exe"
File "${AFS_CLIENT_BUILDDIR}\tokens.pdb"
File "${AFS_CLIENT_BUILDDIR}\unlog.pdb"
File "${AFS_CLIENT_BUILDDIR}\fs.pdb"
+ File "${AFS_CLIENT_BUILDDIR}\aklog.pdb"
File "${AFS_CLIENT_BUILDDIR}\afscreds.pdb"
File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext.pdb"
File "${AFS_CLIENT_BUILDDIR}\afsd_service.pdb"
File "${AFS_CLIENT_BUILDDIR}\afslogon.pdb"
File "${AFS_CLIENT_BUILDDIR}\symlink.pdb"
File "${AFS_DESTDIR}\bin\kpasswd.pdb"
- ;File "${AFS_SERVER_BUILDDIR}\pts.pdb"
+ File "${AFS_DESTDIR}\bin\pts.pdb"
File "${AFS_SERVER_BUILDDIR}\bos.pdb"
File "${AFS_SERVER_BUILDDIR}\kas.pdb"
File "${AFS_SERVER_BUILDDIR}\vos.pdb"
; Do Windows SYSDIR (Control panel)
SetOutPath "$SYSDIR"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl" "$SYSDIR\afs_cpa.cpl" "$INSTDIR"
!ifdef DEBUG
File "${AFS_CLIENT_BUILDDIR}\afs_cpa.pdb"
!endif
WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "VersionString" ${AFS_VERSION}
WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Title" "AFS Client"
WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Description" "AFS Client"
- WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PathName" "$INSTDIR\Client\Program"
+ WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PathName" "$INSTDIR\Client"
WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "Software Type" "File System"
WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MajorVersion" ${AFS_MAJORVERSION}
WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MinorVersion" ${AFS_MINORVERSION}
CreateShortCut "$SMSTARTUP\AFS Credentials.lnk" "$INSTDIR\Client\Program\afscreds.exe" "-A -M -N -Q"
Push "$INSTDIR\Client\Program"
- Call AddToPath
+ Call AddToUniquePath
Push "$INSTDIR\Common"
- Call AddToPath
+ Call AddToUniquePath
!ifdef INSTALL_KFW
; Add kfw to path too
Push "$INSTDIR\kfw\bin"
- Call AddToPath
+ Call AddToUniquePath
!endif
; Create the AFS service
;IMPORTANT! If we are not refreshing the config files, do NOT remove the service
;Don't re-install because it must be present or we wouldn't have passed the Reg check
- ReadRegStr $R2 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "Cell"
+ ReadRegStr $R2 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "Cell"
StrCmp $R2 "" +1 skipremove
nsExec::Exec '$INSTDIR\Common\Service.exe u TransarcAFSDaemon'
nsExec::Exec '$INSTDIR\Common\Service.exe TransarcAFSDaemon "$INSTDIR\Client\Program\afsd_service.exe" "OpenAFS Client Service"'
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "Class" 2
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "VerboseLogging" 10
+
+ ; Must also add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\HwOrder
+ ; and HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order
+ ; to also include the service name.
+ Call AddProvider
ReadINIStr $R0 $1 "Field 7" "State"
ReadINIStr $R1 $1 "Field 9" "State"
; Complicated way to do $R1 = ($R1 *2) + $R0
IntOp $R2 $R1 * 2
IntOp $R1 $R2 + $R0
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonOptions" $R1
- WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonScript" "$INSTDIR\Client\Program\afscreds.exe -:%s -x"
+ WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonScript" "$INSTDIR\Client\Program\afscreds.exe -:%s -x -a -m -n -q"
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "Name" "OpenAFSDaemon"
- strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider"
- strcpy $REG_VALUE "DependOnGroup"
- strcpy $REG_DATA_1 "PNP_TDI"
- strcpy $REG_DATA_2 ""
- strcpy $REG_DATA_3 ""
- Call RegWriteMultiStr
- strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider"
- strcpy $REG_VALUE "DependOnService"
- strcpy $REG_DATA_1 "Tcpip"
- strcpy $REG_DATA_2 "NETBIOS"
- strcpy $REG_DATA_3 "NetBT"
- Call RegWriteMultiStr
-
;Write cell name
ReadINIStr $R0 $1 "Field 2" "State"
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "Cell" $R0
ReadINIStr $R0 $1 "Field 3" "State"
- WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "ShowTrayIcon" 1
+ WriteRegDWORD HKLM "SOFTWARE\OpenAFS\Client" "ShowTrayIcon" 1
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "SecurityLevel" $R0
ReadINIStr $R0 $1 "Field 5" "State"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "FreelanceClient" $R0
- WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "UseDNS" 1
+ ReadINIStr $R0 $1 "Field 11" "State"
+ WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "UseDNS" $R0
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "NetbiosName" "AFS"
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "MountRoot" "/afs"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "RxMaxMTU" 1260
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "IsGateway" 0
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "HideDotFiles" 1
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "TruncateNetbios" "on"
-!IFDEF DEBUG
+
+ ; Find Lana By Name appears to be causing grief for many people
+ ; I do not have time to track this down so I am simply going to disable it
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "NoFindLanaByName" 1
-!ENDIF
+
+ strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon"
+ strcpy $REG_VALUE "DependOnGroup"
+ strcpy $REG_DATA_1 "PNP_TDI"
+ strcpy $REG_DATA_2 ""
+ strcpy $REG_DATA_3 ""
+ Call RegWriteMultiStr
+ strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon"
+ strcpy $REG_VALUE "DependOnService"
+ strcpy $REG_DATA_1 "Tcpip"
+ strcpy $REG_DATA_2 "NETBIOS"
+ strcpy $REG_DATA_3 "RpcSs"
+ Call RegWriteMultiStr
+
SetRebootFlag true
WriteUninstaller "$INSTDIR\Uninstall.exe"
Section "AFS Server" secServer
SetShellVarContext all
+
+ ; Check for bad previous installation (if we are doing a new install)
+ Call IsAnyAFSInstalled
+ Pop $R0
+ StrCmp $R0 "0" +1 skipCheck
+ Call CheckPathForAFS
+skipCheck:
+
; Stop any running services or we can't replace the files
; Stop the running processes
GetTempFileName $R0
- File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe" ; Might not have the MSVCR71.DLL file to run
+ File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe"
+ nsExec::Exec '$R0 afscreds.exe'
+ Exec "afscreds.exe -z"
+ ; in case we are upgrading an old version that does not support -z
+ Sleep 2000
nsExec::Exec '$R0 afscreds.exe'
- nsExec::Exec "afscreds.exe -z"
!IFDEF INSTALL_KFW
;nsExec::Exec '$R0 krbcc32s.exe'
!ENDIF
+ Delete $R0
+
nsExec::Exec "net stop TransarcAFSDaemon"
nsExec::Exec "net stop TransarcAFSServer"
Call AFSLangFiles
SetOutPath "$SYSDIR"
- File "${AFS_SERVER_BUILDDIR}\afsserver.cpl"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver.cpl" "$SYSDIR\afsserver.cpl" "$INSTDIR"
!ifdef DEBUG
File "${AFS_SERVER_BUILDDIR}\afsserver.pdb"
!ifdef DEBUG
File "${AFS_WININSTALL_DIR}\Service.pdb"
!endif
+
+ ; Check if the service exists--if it does, this is an upgrade/re-install
+ ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSServer" "ImagePath"
+ StrCmp $R0 "$INSTDIR\Server\usr\afs\bin\bosctlsvc.exe" SkipStartup
+
+ ; If an uninstall was done, but we kept the config files, also skip
+ IfFileExists "$INSTDIR\Server\usr\afs\etc\ThisCell" SkipStartup
+
+ ; Make the server config wizard auto-start on bootup if this is an install (not an upgrade)
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" "AFS Server Wizard" '"$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe" /wizard"'
+
+
+SkipStartup:
;Don't want to whack existing settings... Make users un-install and then re-install if they want that
;nsExec::Exec '$INSTDIR\Common\service.exe u TransarcAFSServer'
nsExec::Exec '$INSTDIR\Common\service.exe TransarcAFSServer "$INSTDIR\Server\usr\afs\bin\bosctlsvc.exe" "OpenAFS AFS Server"'
CreateDirectory "$SMPROGRAMS\OpenAFS\Server"
CreateShortCut "$SMPROGRAMS\OpenAFS\Server\Server Configuration.lnk" "$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe"
- ; Make the server config wizard auto-start on bootup
- WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" "AFS Server Wizard" '"$INSTDIR\Server\usr\afs\bin\afssvrcfg.exe" /wizard"'
WriteUninstaller "$INSTDIR\Uninstall.exe"
Section "Software Development Kit (SDK)" secSDK
- SetOutPath "$INSTDIR\Client\Program"
+ SetOutPath "$INSTDIR\Client\Program\lib"
+ File /r "${AFS_CLIENT_LIBDIR}\*.*"
- File "${AFS_BUILD_INCDIR}\afs\cm_config.h"
- File "${AFS_BUILD_INCDIR}\afs\kautils.h"
- File "${AFS_CLIENT_LIBDIR}\libafsconf.lib"
- File "${AFS_CLIENT_LIBDIR}\afsauthent.lib"
-
- ; Client_headers
- SetOutPath "$INSTDIR\Client\Program\Include"
- File "${AFS_BUILD_INCDIR}\lock.h"
- File "${AFS_BUILD_INCDIR}\lwp.h"
- File "${AFS_BUILD_INCDIR}\preempt.h"
- File "${AFS_BUILD_INCDIR}\timer.h"
- File "${AFS_BUILD_INCDIR}\des.h"
- File "${AFS_BUILD_INCDIR}\des_conf.h"
- File "${AFS_BUILD_INCDIR}\mit-cpyright.h"
- ;File "${AFS_BUILD_INCDIR}\des-odd.h"
- File "${AFS_BUILD_INCDIR}\crypt.h"
- File "${AFS_BUILD_INCDIR}\pthread.h"
- File "${AFS_BUILD_INCDIR}\dbrpc.h"
- File "${AFS_BUILD_INCDIR}\basic.h"
- File "${AFS_BUILD_INCDIR}\osidebug.h"
- File "${AFS_BUILD_INCDIR}\osiltype.h"
- File "${AFS_BUILD_INCDIR}\osistatl.h"
- File "${AFS_BUILD_INCDIR}\trylock.h"
- File "${AFS_BUILD_INCDIR}\main.h"
- File "${AFS_BUILD_INCDIR}\osibasel.h"
- File "${AFS_BUILD_INCDIR}\osifd.h"
- File "${AFS_BUILD_INCDIR}\osiqueue.h"
- File "${AFS_BUILD_INCDIR}\osiutils.h"
- File "${AFS_BUILD_INCDIR}\osi.h"
- File "${AFS_BUILD_INCDIR}\osidb.h"
- File "${AFS_BUILD_INCDIR}\osilog.h"
- File "${AFS_BUILD_INCDIR}\osisleep.h"
- File "${AFS_BUILD_INCDIR}\perf.h"
- File "${AFS_BUILD_INCDIR}\ubik.h"
- File "${AFS_BUILD_INCDIR}\ubik_int.h"
-
-
-
- SetOutPath "$INSTDIR\Client\Program\Include\afs"
- File "${AFS_BUILD_INCDIR}\afs\afs_args.h"
- File "${AFS_BUILD_INCDIR}\afs\debug.h"
- File "${AFS_BUILD_INCDIR}\afs\param.h"
- File "${AFS_BUILD_INCDIR}\afs\afs_sysnames.h"
- ;File "${AFS_BUILD_INCDIR}\afs\permit_xprt.h"
- File "${AFS_BUILD_INCDIR}\afs\stds.h"
- File "${AFS_BUILD_INCDIR}\afs\icl.h"
- File "${AFS_BUILD_INCDIR}\afs\procmgmt.h"
- File "${AFS_BUILD_INCDIR}\afs\afsutil.h"
- File "${AFS_BUILD_INCDIR}\afs\assert.h"
- File "${AFS_BUILD_INCDIR}\afs\dirent.h"
- File "${AFS_BUILD_INCDIR}\afs\errors.h"
- File "${AFS_BUILD_INCDIR}\afs\itc.h"
- File "${AFS_BUILD_INCDIR}\afs\vice.h"
- File "${AFS_BUILD_INCDIR}\afs\pthread_glock.h"
- File "${AFS_BUILD_INCDIR}\afs\errmap_nt.h"
- File "${AFS_BUILD_INCDIR}\afs\dirpath.h"
- File "${AFS_BUILD_INCDIR}\afs\ktime.h"
- File "${AFS_BUILD_INCDIR}\afs\fileutil.h"
- File "${AFS_BUILD_INCDIR}\afs\secutil_nt.h"
- File "${AFS_BUILD_INCDIR}\afs\com_err.h"
- File "${AFS_BUILD_INCDIR}\afs\error_table.h"
- ;File "${AFS_BUILD_INCDIR}\afs\mit_sipb-cr.h"
- File "${AFS_BUILD_INCDIR}\afs\cmd.h"
- File "${AFS_BUILD_INCDIR}\afs\rxgen_consts.h"
- File "${AFS_BUILD_INCDIR}\afs\afsint.h"
- File "${AFS_BUILD_INCDIR}\afs\afscbint.h"
- File "${AFS_BUILD_INCDIR}\afs\audit.h"
- File "${AFS_BUILD_INCDIR}\afs\acl.h"
- File "${AFS_BUILD_INCDIR}\afs\prs_fs.h"
- File "${AFS_BUILD_INCDIR}\afs\afsd.h"
- File "${AFS_BUILD_INCDIR}\afs\cm.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_buf.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_cell.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_config.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_conn.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_ioctl.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_scache.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_server.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_user.h"
- File "${AFS_BUILD_INCDIR}\afs\cm_utils.h"
- File "${AFS_BUILD_INCDIR}\afs\fs_utils.h"
- File "${AFS_BUILD_INCDIR}\afs\krb.h"
- File "${AFS_BUILD_INCDIR}\afs\krb_prot.h"
- File "${AFS_BUILD_INCDIR}\afs\smb.h"
- File "${AFS_BUILD_INCDIR}\afs\smb3.h"
- File "${AFS_BUILD_INCDIR}\afs\smb_iocons.h"
- File "${AFS_BUILD_INCDIR}\afs\smb_ioctl.h"
- File "${AFS_BUILD_INCDIR}\afs\afsrpc.h"
- File "${AFS_BUILD_INCDIR}\afs\afssyscalls.h"
- File "${AFS_BUILD_INCDIR}\afs\pioctl_nt.h"
- File "${AFS_BUILD_INCDIR}\afs\auth.h"
- File "${AFS_BUILD_INCDIR}\afs\cellconfig.h"
- File "${AFS_BUILD_INCDIR}\afs\keys.h"
- File "${AFS_BUILD_INCDIR}\afs\ptserver.h"
- File "${AFS_BUILD_INCDIR}\afs\ptint.h"
- File "${AFS_BUILD_INCDIR}\afs\pterror.h"
- File "${AFS_BUILD_INCDIR}\afs\ptint.h"
- File "${AFS_BUILD_INCDIR}\afs\pterror.h"
- File "${AFS_BUILD_INCDIR}\afs\ptclient.h"
- File "${AFS_BUILD_INCDIR}\afs\prserver.h"
- File "${AFS_BUILD_INCDIR}\afs\print.h"
- File "${AFS_BUILD_INCDIR}\afs\prerror.h"
- File "${AFS_BUILD_INCDIR}\afs\prclient.h"
- File "${AFS_BUILD_INCDIR}\afs\kautils.h"
- File "${AFS_BUILD_INCDIR}\afs\kauth.h"
- File "${AFS_BUILD_INCDIR}\afs\kaport.h"
- File "${AFS_BUILD_INCDIR}\afs\vl_opcodes.h"
- File "${AFS_BUILD_INCDIR}\afs\vlserver.h"
- File "${AFS_BUILD_INCDIR}\afs\vldbint.h"
- File "${AFS_BUILD_INCDIR}\afs\usd.h"
- File "${AFS_BUILD_INCDIR}\afs\bubasics.h"
- File "${AFS_BUILD_INCDIR}\afs\butc.h"
- File "${AFS_BUILD_INCDIR}\afs\bumon.h"
- File "${AFS_BUILD_INCDIR}\afs\butm.h"
- File "${AFS_BUILD_INCDIR}\afs\tcdata.h"
- File "${AFS_BUILD_INCDIR}\afs\budb.h"
- ;File "${AFS_BUILD_INCDIR}\afs\budb_errors.h"
- File "${AFS_BUILD_INCDIR}\afs\budb_client.h"
- File "${AFS_BUILD_INCDIR}\afs\dir.h"
- File "${AFS_BUILD_INCDIR}\afs\fssync.h"
- File "${AFS_BUILD_INCDIR}\afs\ihandle.h"
- File "${AFS_BUILD_INCDIR}\afs\nfs.h"
- File "${AFS_BUILD_INCDIR}\afs\ntops.h"
- File "${AFS_BUILD_INCDIR}\afs\partition.h"
- File "${AFS_BUILD_INCDIR}\afs\viceinode.h"
- File "${AFS_BUILD_INCDIR}\afs\vnode.h"
- File "${AFS_BUILD_INCDIR}\afs\volume.h"
- File "${AFS_BUILD_INCDIR}\afs\voldefs.h"
- File "${AFS_BUILD_INCDIR}\afs\volser.h"
- File "${AFS_BUILD_INCDIR}\afs\volint.h"
- File "${AFS_BUILD_INCDIR}\afs\fs_stats.h"
- File "${AFS_BUILD_INCDIR}\afs\bosint.h"
- File "${AFS_BUILD_INCDIR}\afs\bnode.h"
-
-
- SetOutPath "$INSTDIR\Client\Program\Include\rx"
- File "${AFS_BUILD_INCDIR}\rx\rx.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_packet.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_user.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_event.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_queue.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_globals.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_clock.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_misc.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_multi.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_null.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_lwp.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_pthread.h"
- File "${AFS_BUILD_INCDIR}\rx\rx_xmit_nt.h"
- File "${AFS_BUILD_INCDIR}\rx\xdr.h"
- File "${AFS_BUILD_INCDIR}\rx\rxkad.h"
-
-
+ SetOutPath "$INSTDIR\Client\Program\Include"
+ File /r "${AFS_BUILD_INCDIR}\*.*"
; Client Sample
SetOutPath "$INSTDIR\Client\Program\Sample"
Abort
contInstall:
+
+ ; Check that RPC functions are installed (I believe any one of these can be present for
+ ; OpenAFS to work)
+ ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_np"
+ StrCmp $R0 "rpcrt4.dll" contInstall2
+ ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_ip_tcp"
+ StrCmp $R0 "rpcrt4.dll" contInstall2
+ ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncadg_ip_udp"
+ StrCmp $R0 "rpcrt4.dll" contInstall2
+
+ 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."
+ Abort
+
+
+contInstall2:
; Our logic should be like this.
; 1) If no AFS components are installed, we do a clean install with default options. (Client/Docs)
; 2) If existing modules are installed, we keep them selected
Call ShouldClientInstall
Pop $R2
+ ; Check if it was an IBM/Transarc version
+ ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "DisplayName"
+ StrCmp $R0 "IBM AFS Client" DoIBM
+ StrCmp $R0 "Transarc AFS Client" DoIBM
+NotIBM:
+ StrCpy $R9 ""
StrCmp $R2 "0" NoClient
StrCmp $R2 "1" ReinstallClient
StrCmp $R2 "2" UpgradeClient
StrCmp $R2 "3" DowngradeClient
-
+ goto Continue
+DoIBM:
+ ReadRegDWORD $R0 HKLM "Software\TransarcCorporation\AFS Client\CurrentVersion" "MajorVersion"
+ StrCmp $R0 "3" +1 NotIBM
+ StrCpy $R9 "IBM"
+ goto UpgradeClient
+
+Continue:
SectionGetFlags ${secClient} $0
IntOp $0 $0 | ${SF_SELECTED}
SectionSetFlags ${secClient} $0
SectionGetFlags ${secDocs} $0
IntOp $0 $0 | ${SF_SELECTED}
SectionSetFlags ${secDocs} $0
- goto end
+ goto CheckSDK
NoDocs:
SectionGetFlags ${secDocs} $0
IntOp $0 $0 & ${SECTION_OFF}
SectionSetFlags ${secDocs} $0
- goto end
+ goto CheckSDK
; To check the SDK, we simply look to see if the files exist. If they do,
; the SDK is installed. If not, we don't need to push it on the user.
StrCmp $R0 "" TryServer
Push $R0
Call GetParent
- Call GetParent
+
+ ; Work around bug in 1.3.5000, 1.3.5100, 1.3.5200, 1.3.5201, 1.3.5299 installers...
+ ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MajorVersion"
+ StrCmp $R0 "1" +1 SkipParent
+ ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "MinorVersion"
+ StrCmp $R0 "3" +1 SkipParent
+ ReadRegStr $R0 HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion" "PatchLevel"
+ StrCmp $R0 "5000" UpParent
+ StrCmp $R0 "5100" UpParent
+ StrCmp $R0 "5200" UpParent
+ StrCmp $R0 "5201" UpParent
+ StrCmp $R0 "5299" UpParent
+ goto SkipParent
+
+UpParent:
+ Call GetParent
+
+SkipParent:
Pop $R0
StrCpy $INSTDIR $R0
goto Nope
GetTempFileName $R0
File /oname=$R0 "${AFS_WININSTALL_DIR}\Killer.exe"
nsExec::Exec '$R0 afscreds.exe'
- nsExec::Exec "afscreds.exe -z"
+ Exec "afscreds.exe -z"
+ ; in case we are upgrading an old version that does not support -z
+ Sleep 2000
+ nsExec::Exec '$R0 afscreds.exe'
!IFDEF INSTALL_KFW
nsExec::Exec '$R0 krbcc32s.exe'
!ENDIF
nsExec::Exec '$R0 u TransarcAFSServer'
Delete $R0
+ Call un.RemoveProvider
+
Push "$INSTDIR\Client\Program"
Call un.RemoveFromPath
Push "$INSTDIR\Common"
Delete /REBOOTOK "$INSTDIR\Common\afsptsadmin.pdb"
!IFDEF CL_1310
- File "${SYSTEMDIR}\msvcr71d.dll"
- File "${SYSTEMDIR}\msvcr71d.pdb"
- File "${SYSTEMDIR}\msvcp71d.dll"
- File "${SYSTEMDIR}\msvcp71d.pdb"
- File "${SYSTEMDIR}\mfc71d.dll"
- File "${SYSTEMDIR}\mfc71d.pdb"
- File "${SYSTEMDIR}\MFC71CHS.DLL"
- File "${SYSTEMDIR}\MFC71CHT.DLL"
- File "${SYSTEMDIR}\MFC71DEU.DLL"
- File "${SYSTEMDIR}\MFC71ENU.DLL"
- File "${SYSTEMDIR}\MFC71ESP.DLL"
- File "${SYSTEMDIR}\MFC71FRA.DLL"
- File "${SYSTEMDIR}\MFC71ITA.DLL"
- File "${SYSTEMDIR}\MFC71JPN.DLL"
- File "${SYSTEMDIR}\MFC71KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71d.pdb"
!ELSE
!IFDEF CL_1300
- File "${SYSTEMDIR}\msvcr70d.dll"
- File "${SYSTEMDIR}\msvcr70d.pdb"
- File "${SYSTEMDIR}\msvcp70d.dll"
- File "${SYSTEMDIR}\msvcp70d.pdb"
- File "${SYSTEMDIR}\mfc70d.dll"
- File "${SYSTEMDIR}\mfc70d.pdb"
- File "${SYSTEMDIR}\MFC70CHS.DLL"
- File "${SYSTEMDIR}\MFC70CHT.DLL"
- File "${SYSTEMDIR}\MFC70DEU.DLL"
- File "${SYSTEMDIR}\MFC70ENU.DLL"
- File "${SYSTEMDIR}\MFC70ESP.DLL"
- File "${SYSTEMDIR}\MFC70FRA.DLL"
- File "${SYSTEMDIR}\MFC70ITA.DLL"
- File "${SYSTEMDIR}\MFC70JPN.DLL"
- File "${SYSTEMDIR}\MFC70KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70d.pdb"
!ELSE
- File "${SYSTEMDIR}\mfc42d.dll"
- File "${SYSTEMDIR}\mfc42d.pdb"
- File "${SYSTEMDIR}\msvcp60d.dll"
- File "${SYSTEMDIR}\msvcp60d.pdb"
- File "${SYSTEMDIR}\msvcrtd.dll"
- File "${SYSTEMDIR}\msvcrtd.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
!ENDIF
!ENDIF
!ELSE
!IFDEF CL_1310
- File "${SYSTEMDIR}\mfc71.dll"
- File "${SYSTEMDIR}\msvcr71.dll"
- File "${SYSTEMDIR}\msvcp71.dll"
- File "${SYSTEMDIR}\MFC71CHS.DLL"
- File "${SYSTEMDIR}\MFC71CHT.DLL"
- File "${SYSTEMDIR}\MFC71DEU.DLL"
- File "${SYSTEMDIR}\MFC71ENU.DLL"
- File "${SYSTEMDIR}\MFC71ESP.DLL"
- File "${SYSTEMDIR}\MFC71FRA.DLL"
- File "${SYSTEMDIR}\MFC71ITA.DLL"
- File "${SYSTEMDIR}\MFC71JPN.DLL"
- File "${SYSTEMDIR}\MFC71KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71KOR.DLL"
!ELSE
!IFDEF CL_1300
- File "${SYSTEMDIR}\mfc70.dll"
- File "${SYSTEMDIR}\msvcr70.dll"
- File "${SYSTEMDIR}\msvcp70.dll"
- File "${SYSTEMDIR}\MFC70CHS.DLL"
- File "${SYSTEMDIR}\MFC70CHT.DLL"
- File "${SYSTEMDIR}\MFC70DEU.DLL"
- File "${SYSTEMDIR}\MFC70ENU.DLL"
- File "${SYSTEMDIR}\MFC70ESP.DLL"
- File "${SYSTEMDIR}\MFC70FRA.DLL"
- File "${SYSTEMDIR}\MFC70ITA.DLL"
- File "${SYSTEMDIR}\MFC70JPN.DLL"
- File "${SYSTEMDIR}\MFC70KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70KOR.DLL"
!ELSE
- File "${SYSTEMDIR}\mfc42.dll"
- File "${SYSTEMDIR}\msvcp60.dll"
- File "${SYSTEMDIR}\msvcrt.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrt.dll"
!ENDIF
!ENDIF
!ENDIF
!endif
RMDir /r "$INSTDIR\Server\usr\afs\bin"
- RmDir /r "$INSTDIR\Server\usr\afs\etc\logs"
- RmDir /r "$INSTDIR\Server\usr\afs\etc"
- RmDir /r "$INSTDIR\Server\usr\afs\local"
- RMDIR /r "$INSTDIR\Server\usr\afs\logs"
+ ; do not delete the server configuration files
+ ; or we will lose the volumes and authentication
+ ; databases
+ ;RmDir /r "$INSTDIR\Server\usr\afs\etc\logs"
+ ;RmDir /r "$INSTDIR\Server\usr\afs\etc"
+ ;RmDir /r "$INSTDIR\Server\usr\afs\local"
+ ;RMDIR /r "$INSTDIR\Server\usr\afs\logs"
Delete /REBOOTOK "$SYSDIR\afsserver.cpl"
Delete /REBOOTOK "$SYSDIR\afs_cpa.cpl"
RMDir "$INSTDIR\Client\Program\Include"
RMDir "$INSTDIR\Client\Program"
RMDir "$INSTDIR\Client"
-
-!IFDEF DEBUG
+
+!IFDEF DEBUG
!IFDEF CL_1310
- File "${SYSTEMDIR}\msvcr71d.dll"
- File "${SYSTEMDIR}\msvcr71d.pdb"
- File "${SYSTEMDIR}\msvcp71d.dll"
- File "${SYSTEMDIR}\msvcp71d.pdb"
- File "${SYSTEMDIR}\mfc71d.dll"
- File "${SYSTEMDIR}\mfc71d.pdb"
- File "${SYSTEMDIR}\MFC71CHS.DLL"
- File "${SYSTEMDIR}\MFC71CHT.DLL"
- File "${SYSTEMDIR}\MFC71DEU.DLL"
- File "${SYSTEMDIR}\MFC71ENU.DLL"
- File "${SYSTEMDIR}\MFC71ESP.DLL"
- File "${SYSTEMDIR}\MFC71FRA.DLL"
- File "${SYSTEMDIR}\MFC71ITA.DLL"
- File "${SYSTEMDIR}\MFC71JPN.DLL"
- File "${SYSTEMDIR}\MFC71KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71d.pdb"
!ELSE
!IFDEF CL_1300
- File "${SYSTEMDIR}\msvcr70d.dll"
- File "${SYSTEMDIR}\msvcr70d.pdb"
- File "${SYSTEMDIR}\msvcp70d.dll"
- File "${SYSTEMDIR}\msvcp70d.pdb"
- File "${SYSTEMDIR}\mfc70d.dll"
- File "${SYSTEMDIR}\mfc70d.pdb"
- File "${SYSTEMDIR}\MFC70CHS.DLL"
- File "${SYSTEMDIR}\MFC70CHT.DLL"
- File "${SYSTEMDIR}\MFC70DEU.DLL"
- File "${SYSTEMDIR}\MFC70ENU.DLL"
- File "${SYSTEMDIR}\MFC70ESP.DLL"
- File "${SYSTEMDIR}\MFC70FRA.DLL"
- File "${SYSTEMDIR}\MFC70ITA.DLL"
- File "${SYSTEMDIR}\MFC70JPN.DLL"
- File "${SYSTEMDIR}\MFC70KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70d.pdb"
!ELSE
- File "${SYSTEMDIR}\mfc42d.dll"
- File "${SYSTEMDIR}\mfc42d.pdb"
- File "${SYSTEMDIR}\msvcp60d.dll"
- File "${SYSTEMDIR}\msvcp60d.pdb"
- File "${SYSTEMDIR}\msvcrtd.dll"
- File "${SYSTEMDIR}\msvcrtd.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
!ENDIF
!ENDIF
!ELSE
!IFDEF CL_1310
- File "${SYSTEMDIR}\mfc71.dll"
- File "${SYSTEMDIR}\msvcr71.dll"
- File "${SYSTEMDIR}\msvcp71.dll"
- File "${SYSTEMDIR}\MFC71CHS.DLL"
- File "${SYSTEMDIR}\MFC71CHT.DLL"
- File "${SYSTEMDIR}\MFC71DEU.DLL"
- File "${SYSTEMDIR}\MFC71ENU.DLL"
- File "${SYSTEMDIR}\MFC71ESP.DLL"
- File "${SYSTEMDIR}\MFC71FRA.DLL"
- File "${SYSTEMDIR}\MFC71ITA.DLL"
- File "${SYSTEMDIR}\MFC71JPN.DLL"
- File "${SYSTEMDIR}\MFC71KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp71.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC71KOR.DLL"
!ELSE
!IFDEF CL_1300
- File "${SYSTEMDIR}\mfc70.dll"
- File "${SYSTEMDIR}\msvcr70.dll"
- File "${SYSTEMDIR}\msvcp70.dll"
- File "${SYSTEMDIR}\MFC70CHS.DLL"
- File "${SYSTEMDIR}\MFC70CHT.DLL"
- File "${SYSTEMDIR}\MFC70DEU.DLL"
- File "${SYSTEMDIR}\MFC70ENU.DLL"
- File "${SYSTEMDIR}\MFC70ESP.DLL"
- File "${SYSTEMDIR}\MFC70FRA.DLL"
- File "${SYSTEMDIR}\MFC70ITA.DLL"
- File "${SYSTEMDIR}\MFC70JPN.DLL"
- File "${SYSTEMDIR}\MFC70KOR.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp70.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC70KOR.DLL"
!ELSE
- File "${SYSTEMDIR}\mfc42.dll"
- File "${SYSTEMDIR}\msvcp60.dll"
- File "${SYSTEMDIR}\msvcrt.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc42.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp60.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcrt.dll"
!ENDIF
!ENDIF
!ENDIF
+
Delete /REBOOTOK "$INSTDIR\Common\*"
RMDir "$INSTDIR\Common"
ReadINIStr $R0 $0 "Field 2" "State"
StrCmp $R0 "1" done
+ReadINIStr $R0 $0 "Field 6" "State"
+StrCmp $R0 "1" CheckOther
+
ReadINIStr $R0 $0 "Field 3" "State"
StrCmp $R0 "1" UsePackaged
; If none of these, grab file from other location
-goto CheckOther
+goto UsePackaged
DoDownload:
ReadINIStr $R0 $0 "Field 5" "State"
CheckOther:
ReadINIStr $R0 $0 "Field 7" "State"
- StrCmp $R0 "1" +1 done
+ StrCmp $R0 "" done
CopyFiles $R0 "$WINDIR\afsdcell.ini"
done:
FunctionEnd
+Function AddProvider
+ Push $R0
+ Push $R1
+ ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder"
+ Push $R0
+ StrCpy $R0 "TransarcAFSDaemon"
+ Push $R0
+ Call StrStr
+ Pop $R0
+ StrCmp $R0 "" +1 DoOther
+ ReadRegStr $R1 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder"
+ StrCpy $R0 "$R1,TransarcAFSDaemon"
+ WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder" "ProviderOrder" $R0
+DoOther:
+ ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder"
+ Push $R0
+ StrCpy $R0 "TransarcAFSDaemon"
+ Push $R0
+ Call StrStr
+ Pop $R0
+ StrCmp $R0 "" +1 End
+ ReadRegStr $R1 HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder"
+ StrCpy $R0 "$R1,TransarcAFSDaemon"
+ WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order" "ProviderOrder" $R0
+End:
+ Pop $R1
+ Pop $R0
+FunctionEnd
+
+Function un.RemoveProvider
+ Push $R0
+ StrCpy $R0 "TransarcAFSDaemon"
+ Push $R0
+ StrCpy $R0 "SYSTEM\CurrentControlSet\Control\NetworkProvider\HWOrder"
+ Call un.RemoveFromProvider
+ StrCpy $R0 "TransarcAFSDaemon"
+ Push $R0
+ StrCpy $R0 "SYSTEM\CurrentControlSet\Control\NetworkProvider\Order"
+ Call un.RemoveFromProvider
+ Pop $R0
+FunctionEnd
+
+Function un.RemoveFromProvider
+ Exch $0
+ Push $1
+ Push $2
+ Push $3
+ Push $4
+ Push $5
+ Push $6
+
+ ReadRegStr $1 HKLM "$R0" "ProviderOrder"
+ StrCpy $5 $1 1 -1 # copy last char
+ StrCmp $5 "," +2 # if last char != ,
+ StrCpy $1 "$1," # append ,
+ Push $1
+ Push "$0,"
+ Call un.StrStr ; Find `$0,` in $1
+ Pop $2 ; pos of our dir
+ StrCmp $2 "" unRemoveFromPath_done
+ ; else, it is in path
+ # $0 - path to add
+ # $1 - path var
+ StrLen $3 "$0,"
+ StrLen $4 $2
+ StrCpy $5 $1 -$4 # $5 is now the part before the path to remove
+ StrCpy $6 $2 "" $3 # $6 is now the part after the path to remove
+ StrCpy $3 $5$6
+
+ StrCpy $5 $3 1 -1 # copy last char
+ StrCmp $5 "," 0 +2 # if last char == ,
+ StrCpy $3 $3 -1 # remove last char
+
+ WriteRegStr HKLM "$R0" "ProviderOrder" $3
+
+ unRemoveFromPath_done:
+ Pop $6
+ Pop $5
+ Pop $4
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+FunctionEnd
+
+Function CheckPathForAFS
+ Push $0
+ Push $1
+ Push $2
+ Push $3
+ ReadRegStr $1 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
+ StrCpy $1 "$1;"
+loop:
+ Push $1
+ Push ";"
+ Call StrStr
+ Pop $0
+ StrLen $2 $0
+ StrCpy $3 $1 -$2
+ IfFileExists "$3\afsd_service.exe" Error
+ StrCpy $1 $0 32768 1
+ StrLen $2 $1
+ IntCmp $2 0 Done Done loop
+ goto Done
+Error:
+ 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."
+ Abort "Unable to install OpenAFS"
+Done:
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+FunctionEnd
+
+Function AddToUniquePath
+ Pop $R0
+ Push $R0
+ Push "$R0;"
+ ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PATH"
+ Push "$R0;"
+ Call StrStr
+ Pop $R0
+ StrCmp $R0 "" +1 Done
+ Call AddToPath
+Done:
+FunctionEnd
;-------------------------------
StrCmp $R0 "" NotInstalled
; Now we see if it's an older or newer version
-
+
Call GetInstalledVersionMajor
Pop $R0
IntCmpU $R0 ${AFS_MAJORVERSION} +1 Upgrade Downgrade
Exch $R0
goto end
-
NotInstalled:
StrCpy $R0 "0"
Exch $R0
SetOutPath "$INSTDIR\Common"
File "${AFS_CLIENT_BUILDDIR}\afs_config.exe"
File "${AFS_SERVER_BUILDDIR}\afsadminutil.dll"
- !insertmacro UpgradeDLL "${AFS_DESTDIR}\lib\afsauthent.dll" "$INSTDIR\Common\afsauthent.dll" "$INSTDIR"
- !insertmacro UpgradeDLL "${AFS_DESTDIR}\lib\afspthread.dll" "$INSTDIR\Common\afspthread.dll" "$INSTDIR"
- !insertmacro UpgradeDLL "${AFS_DESTDIR}\lib\afsrpc.dll" "$INSTDIR\Common\afsrpc.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afsauthent.dll" "$INSTDIR\Common\afsauthent.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afspthread.dll" "$INSTDIR\Common\afspthread.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_DESTDIR}\lib\afsrpc.dll" "$INSTDIR\Common\afsrpc.dll" "$INSTDIR"
File "${AFS_SERVER_BUILDDIR}\afsclientadmin.dll"
File "${AFS_SERVER_BUILDDIR}\afsprocmgmt.dll"
File "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll"
File "..\..\doc\install\Documentation\en_US\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1033.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1033.dll" "$INSTDIR\Client\Program\afs_shl_ext_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1033.dll" "$INSTDIR\Client\Program\afscreds_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1033.dll" "$INSTDIR\Client\Program\afs_shl_ext_1033.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1033.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1033.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1033.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1033.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1033.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1033.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1033.dll" "$INSTDIR\Common\afs_config_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1033.dll" "$INSTDIR\Common\afs_cpa_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1033.dll" "$INSTDIR\Common\afseventmsg_1033.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1033.dll" "$INSTDIR\Common\afs_setup_utils_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1033.dll" "$INSTDIR\Common\afsserver_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1033.dll" "$INSTDIR\Common\afssvrcfg_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1033.dll" "$INSTDIR\Common\TaAfsAccountManager_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1033.dll" "$INSTDIR\Common\TaAfsAppLib_1033.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1033.dll" "$INSTDIR\Common\TaAfsServerManager_1033.dll" "$INSTDIR"
File "..\..\doc\help\en_US\afs-cc.CNT"
File "..\..\doc\help\en_US\afs-cc.hlp"
File "..\..\doc\help\en_US\afs-light.CNT"
File "..\..\doc\install\Documentation\de_DE\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1032.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1032.dll" "$INSTDIR\Client\Program\afs_shl_ext_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1032.dll" "$INSTDIR\Client\Program\afscreds_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1032.dll" "$INSTDIR\Client\Program\afs_shl_ext_1032.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1032.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1032.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1032.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1032.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1032.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1032.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1032.dll" "$INSTDIR\Common\afs_config_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1032.dll" "$INSTDIR\Common\afs_cpa_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1032.dll" "$INSTDIR\Common\afseventmsg_1032.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1032.dll" "$INSTDIR\Common\afs_setup_utils_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1032.dll" "$INSTDIR\Common\afsserver_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1032.dll" "$INSTDIR\Common\afssvrcfg_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1032.dll" "$INSTDIR\Common\TaAfsAccountManager_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1032.dll" "$INSTDIR\Common\TaAfsAppLib_1032.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1032.dll" "$INSTDIR\Common\TaAfsServerManager_1032.dll" "$INSTDIR"
File "..\..\doc\help\de_DE\afs-cc.CNT"
File "..\..\doc\help\de_DE\afs-cc.hlp"
File "..\..\doc\help\de_DE\afs-light.CNT"
File "..\..\doc\install\Documentation\es_ES\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1034.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1034.dll" "$INSTDIR\Client\Program\afs_shl_ext_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1034.dll" "$INSTDIR\Client\Program\afscreds_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1034.dll" "$INSTDIR\Client\Program\afs_shl_ext_1034.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1034.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1034.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1034.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1034.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1034.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1034.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1034.dll" "$INSTDIR\Common\afs_config_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1034.dll" "$INSTDIR\Common\afs_cpa_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1034.dll" "$INSTDIR\Common\afseventmsg_1034.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1034.dll" "$INSTDIR\Common\afs_setup_utils_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1034.dll" "$INSTDIR\Common\afsserver_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1034.dll" "$INSTDIR\Common\afssvrcfg_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1034.dll" "$INSTDIR\Common\TaAfsAccountManager_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1034.dll" "$INSTDIR\Common\TaAfsAppLib_1034.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1034.dll" "$INSTDIR\Common\TaAfsServerManager_1034.dll" "$INSTDIR"
File "..\..\doc\help\es_ES\afs-cc.CNT"
File "..\..\doc\help\es_ES\afs-cc.hlp"
File "..\..\doc\help\es_ES\afs-light.CNT"
File "..\..\doc\install\Documentation\ja_JP\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1041.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1041.dll" "$INSTDIR\Client\Program\afs_shl_ext_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1041.dll" "$INSTDIR\Client\Program\afscreds_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1041.dll" "$INSTDIR\Client\Program\afs_shl_ext_1041.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1041.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1041.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1041.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1041.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1041.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1041.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1041.dll" "$INSTDIR\Common\afs_config_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1041.dll" "$INSTDIR\Common\afs_cpa_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1041.dll" "$INSTDIR\Common\afseventmsg_1041.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1041.dll" "$INSTDIR\Common\afs_setup_utils_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1041.dll" "$INSTDIR\Common\afsserver_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1041.dll" "$INSTDIR\Common\afssvrcfg_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1041.dll" "$INSTDIR\Common\TaAfsAccountManager_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1041.dll" "$INSTDIR\Common\TaAfsAppLib_1041.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1041.dll" "$INSTDIR\Common\TaAfsServerManager_1041.dll" "$INSTDIR"
File "..\..\doc\help\ja_JP\afs-cc.CNT"
File "..\..\doc\help\ja_JP\afs-cc.hlp"
File "..\..\doc\help\ja_JP\afs-light.CNT"
File "..\..\doc\install\Documentation\ko_KR\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1042.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1042.dll" "$INSTDIR\Client\Program\afs_shl_ext_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1042.dll" "$INSTDIR\Client\Program\afscreds_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1042.dll" "$INSTDIR\Client\Program\afs_shl_ext_1042.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1042.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1042.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1042.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1042.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1042.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1042.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1042.dll" "$INSTDIR\Common\afs_config_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1042.dll" "$INSTDIR\Common\afs_cpa_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1042.dll" "$INSTDIR\Common\afseventmsg_1042.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1042.dll" "$INSTDIR\Common\afs_setup_utils_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1042.dll" "$INSTDIR\Common\afsserver_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1042.dll" "$INSTDIR\Common\afssvrcfg_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1042.dll" "$INSTDIR\Common\TaAfsAccountManager_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1042.dll" "$INSTDIR\Common\TaAfsAppLib_1042.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1042.dll" "$INSTDIR\Common\TaAfsServerManager_1042.dll" "$INSTDIR"
File "..\..\doc\help\ko_KR\afs-cc.CNT"
File "..\..\doc\help\ko_KR\afs-cc.hlp"
File "..\..\doc\help\ko_KR\afs-light.CNT"
File "..\..\doc\install\Documentation\pt_BR\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1046.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1046.dll" "$INSTDIR\Client\Program\afs_shl_ext_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1046.dll" "$INSTDIR\Client\Program\afscreds_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1046.dll" "$INSTDIR\Client\Program\afs_shl_ext_1046.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1046.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1046.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1046.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1046.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1046.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1046.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1046.dll" "$INSTDIR\Common\afs_config_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1046.dll" "$INSTDIR\Common\afs_cpa_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1046.dll" "$INSTDIR\Common\afseventmsg_1046.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1046.dll" "$INSTDIR\Common\afs_setup_utils_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1046.dll" "$INSTDIR\Common\afsserver_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1046.dll" "$INSTDIR\Common\afssvrcfg_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1046.dll" "$INSTDIR\Common\TaAfsAccountManager_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1046.dll" "$INSTDIR\Common\TaAfsAppLib_1046.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1046.dll" "$INSTDIR\Common\TaAfsServerManager_1046.dll" "$INSTDIR"
File "..\..\doc\help\pt_BR\afs-cc.CNT"
File "..\..\doc\help\pt_BR\afs-cc.hlp"
File "..\..\doc\help\pt_BR\afs-light.CNT"
File "..\..\doc\install\Documentation\zh_CN\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_2052.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_2052.dll" "$INSTDIR\Client\Program\afs_shl_ext_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_2052.dll" "$INSTDIR\Client\Program\afscreds_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_2052.dll" "$INSTDIR\Client\Program\afs_shl_ext_2052.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_2052.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_2052.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_2052.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_2052.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_2052.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_2052.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_2052.dll" "$INSTDIR\Common\afs_config_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_2052.dll" "$INSTDIR\Common\afs_cpa_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_2052.dll" "$INSTDIR\Common\afseventmsg_2052.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_2052.dll" "$INSTDIR\Common\afs_setup_utils_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_2052.dll" "$INSTDIR\Common\afsserver_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_2052.dll" "$INSTDIR\Common\afssvrcfg_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_2052.dll" "$INSTDIR\Common\TaAfsAccountManager_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_2052.dll" "$INSTDIR\Common\TaAfsAppLib_2052.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_2052.dll" "$INSTDIR\Common\TaAfsServerManager_2052.dll" "$INSTDIR"
File "..\..\doc\help\zh_CN\afs-cc.CNT"
File "..\..\doc\help\zh_CN\afs-cc.hlp"
File "..\..\doc\help\zh_CN\afs-light.CNT"
File "..\..\doc\install\Documentation\zh_TW\README.TXT"
SetOutPath "$INSTDIR\Client\Program"
- File "${AFS_CLIENT_BUILDDIR}\afscreds_1028.dll"
- !insertmacro UpgradeDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1028.dll" "$INSTDIR\Client\Program\afs_shl_ext_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1028.dll" "$INSTDIR\Client\Program\_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1028.dll" "$INSTDIR\Client\Program\afs_shl_ext_1028.dll" "$INSTDIR"
!ifdef DEBUG
;File "${AFS_CLIENT_BUILDDIR}\afscreds_1028.pdb"
;File "${AFS_CLIENT_BUILDDIR}\afs_shl_ext_1028.pdb"
!endif
SetOutPath "$INSTDIR\Common"
- File "${AFS_CLIENT_BUILDDIR}\afs_config_1028.dll"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\afseventmsg_1028.dll"
- ;File "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\afsserver_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\afssvrcfg_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1028.dll"
- File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1028.dll"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_config_1028.dll" "$INSTDIR\Common\afs_config_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa_1028.dll" "$INSTDIR\Common\afs_cpa_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afseventmsg_1028.dll" "$INSTDIR\Common\afseventmsg_1028.dll" "$INSTDIR"
+ ;!insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afs_setup_utils_1028.dll" "$INSTDIR\Common\afs_setup_utils_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsserver_1028.dll" "$INSTDIR\Common\afsserver_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afssvrcfg_1028.dll" "$INSTDIR\Common\afssvrcfg_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1028.dll" "$INSTDIR\Common\TaAfsAccountManager_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1028.dll" "$INSTDIR\Common\TaAfsAppLib_1028.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1028.dll" "$INSTDIR\Common\TaAfsServerManager_1028.dll" "$INSTDIR"
File "..\..\doc\help\zh_TW\afs-cc.CNT"
File "..\..\doc\help\zh_TW\afs-cc.hlp"
File "..\..\doc\help\zh_TW\afs-light.CNT"
!define RegSetValueEx "Advapi32::RegSetValueExA(i, t, i, i, i, i) i"
!define RegCloseKey "Advapi32::RegCloseKeyA(i) i"
+ Exch $R0
+ Push $1
+ Push $2
+ Push $9
+
SetPluginUnload alwaysoff
; Create a buffer for the multi_sz value
System::Call "*(&t${NSIS_MAX_STRLEN}) i.r1"
; Clear the buffer
SetPluginUnload manual
System::Free $1
+
+ Pop $9
+ Pop $2
+ Pop $1
+ Exch $R0
FunctionEnd
\ No newline at end of file