-;OpenAFS Install Script for NSIS
-; This version compiles with NSIS v2.0
+; OpenAFS Install Script for NSIS
+; This version compiles with NSIS v2.07
;
; Originally written by Rob Murawski <rsm4@ieee.org>
;
VIAddVersionKey "ProductVersion" ${AFS_VERSION}
VIAddVersionKey "FileVersion" ${AFS_VERSION}
VIAddVersionKey "FileDescription" "OpenAFS for Windows Installer"
-VIAddVersionKey "LegalCopyright" "(C)2000-2004"
+VIAddVersionKey "LegalCopyright" "(C)2000-2005"
!ifdef DEBUG
VIAddVersionKey "PrivateBuild" "Checked/Debug"
!endif ; End DEBUG
!define REPLACEDLL_NOREGISTER
;General
+!ifndef AFSIFS
!ifndef DEBUG
OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows.exe"
!else
OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows-DEBUG.exe"
!endif
+!else
+!ifndef DEBUG
+ OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows-IFS.exe"
+!else
+ OutFile "${AFS_DESTDIR}\WinInstall\OpenAFSforWindows-IFS-DEBUG.exe"
+!endif
+!endif
SilentInstall normal
- SetCompressor lzma
- !define MUI_ICON "..\..\client_config\afs_config.ico"
- !define MUI_UNICON "..\..\client_config\afs_config.ico"
+ SetCompressor /solid lzma
+ !define MUI_ICON "..\..\client_config\OpenAFS.ico"
+ !define MUI_UNICON "..\..\client_config\OpenAFS.ico"
!define AFS_COMPANY_NAME "OpenAFS"
!define AFS_PRODUCT_NAME "OpenAFS"
!define AFS_REGKEY_ROOT "Software\TransarcCorporation"
var REG_DATA_1
var REG_DATA_2
var REG_DATA_3
+var REG_DATA_4
;--------------------------------
;----------------------
; OpenAFS CLIENT
-Section "AFS Client" secClient
+Section "!AFS Client" secClient
SetShellVarContext all
File "${AFS_CLIENT_BUILDDIR}\tokens.exe"
File "${AFS_CLIENT_BUILDDIR}\unlog.exe"
File "${AFS_CLIENT_BUILDDIR}\fs.exe"
+ File "${AFS_CLIENT_BUILDDIR}\afsdacl.exe"
+ File "${AFS_CLIENT_BUILDDIR}\cmdebug.exe"
File "${AFS_CLIENT_BUILDDIR}\aklog.exe"
File "${AFS_CLIENT_BUILDDIR}\afscreds.exe"
!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 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_DESTDIR}\bin\translate_et.exe"
File "${AFS_DESTDIR}\etc\rxdebug.exe"
File "${AFS_DESTDIR}\etc\backup.exe"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl" "$INSTDIR\Client\Program\afs_cpa.cpl" "$INSTDIR"
- Call AFSLangFiles
+ SetOutPath "$SYSDIR"
+ !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afslogon.dll" "$SYSDIR\afslogon.dll" "$INSTDIR"
+ File "${AFS_CLIENT_BUILDDIR}\afscpcc.exe"
+!ifdef AFSIFS
+!ifndef DEBUG
+ !insertmacro ReplaceDLL "..\..\afsrdr\objfre_w2K_x86\i386\afsrdr.sys" "$SYSDIR\DRIVERS\afsrdr.sys" "$INSTDIR"
+!else
+ !insertmacro ReplaceDLL "..\..\afsrdr\objchk_w2K_x86\i386\afsrdr.sys" "$SYSDIR\DRIVERS\afsrdr.sys" "$INSTDIR"
+!endif
+!endif
+ Call AFSLangFiles
-
- ; Do WINDOWSDIR components
-
- ; Do Windows SYSDIR (Control panel)
- SetOutPath "$SYSDIR"
- !insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl" "$SYSDIR\afs_cpa.cpl" "$INSTDIR"
-
; Get AFS CellServDB file
Call afs.GetCellServDB
+ GetTempFileName $R0
+ File /oname=$R0 "${AFS_WININSTALL_DIR}\AdminGroup.exe"
+ nsExec::Exec '$R0 -create'
+
!ifdef INSTALL_KFW
; Include Kerberos for Windows files in the installer...
SetOutPath "$INSTDIR\kfw\bin\"
WriteRegStr HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}\InprocServer32" "ThreadingModel" "Apartment"
WriteRegStr HKCR "FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" "" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" "AFS Client Shell Extension"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" "afs_cpa" "$INSTDIR\Client\Program\afs_cpa.cpl"
+
+ ; Support for apps that wrote submount data directly to afsdsbmt.ini
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\afsdsbmt.ini" "AFS Mappings" "USR:Software\OpenAFS\Client\mappings"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\afsdsbmt.ini" "AFS Submounts" "SYS:OpenAFS\Client\Submounts"
; AFS Reg entries
DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion"
ReadINIStr $R1 $2 "Field 13" "State"
StrCmp $R1 "1" +1 +2
StrCpy $R2 "$R2-S"
+
+ WriteRegStr HKLM "SOFTWARE\OpenAFS\Client" "AfscredsShortcutParams" "$R2"
CreateShortCut "$SMPROGRAMS\OpenAFS\Client\Authentication.lnk" "$INSTDIR\Client\Program\afscreds.exe" "$R2"
StrCmp $R1 "1" +1 +2
CreateShortCut "$SMSTARTUP\AFS Credentials.lnk" "$INSTDIR\Client\Program\afscreds.exe" "$R2"
-
-
Push "$INSTDIR\Client\Program"
Call AddToUniquePath
Push "$INSTDIR\Common"
SetOutPath "$INSTDIR\Common"
File "${AFS_WININSTALL_DIR}\Service.exe"
nsExec::Exec "net stop TransarcAFSDaemon"
+ nsExec::Exec "net stop AfsRdr"
;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
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"'
+ nsExec::Exec '$INSTDIR\Common\Service.exe u AfsRdr'
+!ifdef AFSIFS
+ nsExec::Exec '$INSTDIR\Common\Service.exe AfsRdr "System32\DRIVERS\afsrdr.sys" "AFS Redirector"'
+!endif
skipremove:
Delete "$INSTDIR\Common\service.exe"
; Daemon entries
WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon" "" ""
- WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "ProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
- WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
- WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$INSTDIR\Client\Program\afslogon.dll"
+ WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "ProviderPath" "$SYSDIR\afslogon.dll"
+ WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "AuthentProviderPath" "$SYSDIR\afslogon.dll"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "Class" 2
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "VerboseLogging" 10
; 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
+ WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" "LogonOptions" $R0
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"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "SecurityLevel" $R0
ReadINIStr $R0 $1 "Field 5" "State"
WriteRegDWORD HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "FreelanceClient" $R0
- ReadINIStr $R0 $1 "Field 11" "State"
+ ReadINIStr $R0 $1 "Field 9" "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"
strcpy $REG_DATA_1 "PNP_TDI"
strcpy $REG_DATA_2 ""
strcpy $REG_DATA_3 ""
+ strcpy $REG_DATA_4 ""
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"
+!ifdef AFSIFS
+ strcpy $REG_DATA_4 "AfsRdr"
+!else
+ strcpy $REG_DATA_4 ""
+!endif
+ Call RegWriteMultiStr
+!ifdef AFSIFS
+ strcpy $REG_SUB_KEY "SYSTEM\CurrentControlSet\Services\AfsRdr"
+ strcpy $REG_VALUE "DependOnService"
+ strcpy $REG_DATA_1 "Tcpip"
+ strcpy $REG_DATA_2 ""
+ strcpy $REG_DATA_3 ""
+ strcpy $REG_DATA_4 ""
Call RegWriteMultiStr
+!endif
+
+ ; WinLogon Event Notification
+ WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "Asynchronous" 0
+ WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "Impersonate" 1
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "DLLName" "afslogon.dll"
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "Logon" "AFS_Logon_Event"
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "Logoff" "AFS_Logoff_Event"
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" "Startup" "AFS_Startup_Event"
+
+ WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\KFWLogon" "Asynchronous" 0
+ WriteRegDWORD HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\KFWLogon" "Impersonate" 0
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\KFWLogon" "DLLName" "afslogon.dll"
+ WriteRegStr HKLM "Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\KFWLogon" "Logon" "KFW_Logon_Event"
SetRebootFlag true
WriteUninstaller "$INSTDIR\Uninstall.exe"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
+ Call CreateDesktopIni
SectionEnd
; MS Loopback adapter
-Section "MS Loopback Adapter" secLoopback
+Section "!MS Loopback Adapter" secLoopback
Call afs.InstallMSLoopback
;------------------------
; OpenAFS SERVER
-Section "AFS Server" secServer
+Section /o "AFS Server" secServer
SetShellVarContext all
SetOutPath "$INSTDIR\Server\usr\afs\bin"
File "${AFS_SERVER_BUILDDIR}\afskill.exe"
File "${AFS_SERVER_BUILDDIR}\afssvrcfg.exe"
+ File "${AFS_SERVER_BUILDDIR}\asetkey.exe"
File "${AFS_SERVER_BUILDDIR}\bosctlsvc.exe"
File "${AFS_SERVER_BUILDDIR}\bosserver.exe"
File "${AFS_SERVER_BUILDDIR}\buserver.exe"
File "${AFS_SERVER_BUILDDIR}\afskasadmin.dll"
File "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll"
-!ifdef DEBUG
-!endif
SetOutPath "$INSTDIR\Common"
Call AFSLangFiles
WriteUninstaller "$INSTDIR\Uninstall.exe"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
SectionEnd
;----------------------------
; OpenAFS Control Center
-Section "AFS Control Center" secControl
+Section /o "AFS Control Center" secControl
SetShellVarContext all
Call AFSLangFiles
SetOutPath "$INSTDIR\Common"
- SetOutPath "$INSTDIR\Common"
-!IFDEF DEBUG
-!IFDEF CL_1310
- File "${SYSTEMDIR}\msvcr71d.dll"
- File "${SYSTEMDIR}\msvcp71d.dll"
- File "${SYSTEMDIR}\mfc71d.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"
-!ELSE
-!IFDEF CL_1300
- File "${SYSTEMDIR}\msvcr70d.dll"
- File "${SYSTEMDIR}\msvcp70d.dll"
- File "${SYSTEMDIR}\mfc70d.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"
-!ELSE
- File "${SYSTEMDIR}\mfc42d.dll"
- File "${SYSTEMDIR}\msvcp60d.dll"
- File "${SYSTEMDIR}\msvcrtd.dll"
-!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"
-!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"
-!ELSE
- File "${SYSTEMDIR}\mfc42.dll"
- File "${SYSTEMDIR}\msvcp60.dll"
- File "${SYSTEMDIR}\msvcrt.dll"
-!ENDIF
-!ENDIF
-!ENDIF
;Store install folder
WriteRegStr HKCU "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "PathName" $INSTDIR
WriteRegStr HKLM "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "VersionString" ${AFS_VERSION}
CreateShortCut "$SMPROGRAMS\OpenAFS\Control Center\Server Manager.lnk" "$INSTDIR\Control Center\TaAfsServerManager.exe"
WriteUninstaller "$INSTDIR\Uninstall.exe"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
SectionEnd
;----------------------------
; OpenAFS Supplemental Documentation
-Section "Supplemental Documentation" secDocs
+Section /o "Supplemental Documentation" secDocs
SetShellVarContext all
StrCmp $LANGUAGE ${LANG_ENGLISH} DoEnglish
DoEnglish:
- SetOutPath "$INSTDIR\Documentation\html"
- File "..\..\doc\install\Documentation\en_US\html\*"
SetOutPath "$INSTDIR\Documentation\html\CmdRef"
File "..\..\doc\install\Documentation\en_US\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\en_US\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- File "..\..\doc\install\Documentation\en_US\html\ReleaseNotes\*"
SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
File "..\..\doc\install\Documentation\en_US\html\SysAdminGd\*"
goto DoneLanguage
DoGerman:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\de_DE\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\de_DE\html\*"
SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\de_DE\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\de_DE\html\InstallGd\*"
- ;SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- ;File "..\..\doc\install\Documentation\de_DE\html\ReleaseNotes\*"
;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\de_DE\html\SysAdminGd\*"
goto DoneLanguage
DoSpanish:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\es_ES\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\es_ES\html\*"
SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\es_ES\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- ;File "..\..\doc\install\Documentation\es_ES\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- ;File "..\..\doc\install\Documentation\es_ES\html\ReleaseNotes\*"
SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\es_ES\html\SysAdminGd\*"
goto DoneLanguage
DoJapanese:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\ja_JP\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\ja_JP\html\*"
SetOutPath "$INSTDIR\Documentation\html\CmdRef"
File "..\..\doc\install\Documentation\ja_JP\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\ja_JP\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- ;File "..\..\doc\install\Documentation\ja_JP\html\ReleaseNotes\*"
SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\ja_JP\html\SysAdminGd\*"
goto DoneLanguage
DoKorean:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\ko_KR\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\ko_KR\html\*"
;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\ko_KR\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\ko_KR\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- File "..\..\doc\install\Documentation\ko_KR\html\ReleaseNotes\*"
SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
File "..\..\doc\install\Documentation\ko_KR\html\SysAdminGd\*"
goto DoneLanguage
DoPortugueseBR:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\pt_BR\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\pt_BR\html\*"
;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\pt_BR\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\pt_BR\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- File "..\..\doc\install\Documentation\pt_BR\html\ReleaseNotes\*"
;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\pt_BR\html\SysAdminGd\*"
goto DoneLanguage
DoSimpChinese:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\zh_CN\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\zh_CN\html\*"
;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\zh_CN\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\zh_CN\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- File "..\..\doc\install\Documentation\zh_CN\html\ReleaseNotes\*"
;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\zh_CN\html\SysAdminGd\*"
goto DoneLanguage
DoTradChinese:
- SetOutPath "$INSTDIR\Documentation"
- File "..\..\doc\install\Documentation\zh_TW\README.TXT"
SetOutPath "$INSTDIR\Documentation\html"
File "..\..\doc\install\Documentation\zh_TW\html\*"
;SetOutPath "$INSTDIR\Documentation\html\CmdRef"
;File "..\..\doc\install\Documentation\zh_TW\html\CmdRef\*"
- SetOutPath "$INSTDIR\Documentation\html\InstallGd"
- File "..\..\doc\install\Documentation\zh_TW\html\InstallGd\*"
- SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
- File "..\..\doc\install\Documentation\zh_TW\html\ReleaseNotes\*"
;SetOutPath "$INSTDIR\Documentation\html\SysAdminGd"
;File "..\..\doc\install\Documentation\zh_TW\html\SysAdminGd\*"
goto DoneLanguage
WriteUninstaller "$INSTDIR\Uninstall.exe"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
CreateShortCut "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk" "$INSTDIR\Uninstall.exe"
Call AFSCommon.Install
SectionEnd
-Section "Software Development Kit (SDK)" secSDK
+Section /o "Software Development Kit (SDK)" secSDK
SetOutPath "$INSTDIR\Client\Program\lib"
File /r "${AFS_CLIENT_LIBDIR}\*.*"
WriteRegDWORD HKLM "${AFS_REGKEY_ROOT}\AFS SDK\${AFS_VERSION}" "PatchLevel" ${AFS_PATCHLEVEL}
WriteUninstaller "$INSTDIR\Uninstall.exe"
+ WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
+
SetOutPath "$SMPROGRAMS\OpenAFS"
CreateShortCut "$SMPROGRAMS\OpenAFS\Uninstall OpenAFS.lnk" "$INSTDIR\Uninstall.exe"
- Call AFSCommon.Install
+ Call AFSCommon.Install
SectionEnd
-Section "Debug symbols" secDebug
- SectionGetFlags ${secClient} $R0
+Section /o "Debug symbols" secDebug
+ SectionGetFlags ${secClient} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} +1 DoServer
File "${AFS_CLIENT_BUILDDIR}\tokens.pdb"
File "${AFS_CLIENT_BUILDDIR}\unlog.pdb"
File "${AFS_CLIENT_BUILDDIR}\fs.pdb"
+ File "${AFS_CLIENT_BUILDDIR}\afsdacl.pdb"
+ File "${AFS_CLIENT_BUILDDIR}\cmdebug.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_DESTDIR}\bin\pts.pdb"
File "${AFS_DESTDIR}\bin\translate_et.pdb"
File "${AFS_DESTDIR}\etc\rxdebug.pdb"
File "${AFS_DESTDIR}\etc\backup.pdb"
+ File "${AFS_CLIENT_BUILDDIR}\afs_cpa.pdb"
SetOutPath "$SYSDIR"
- File "${AFS_CLIENT_BUILDDIR}\afs_cpa.pdb"
+ File "${AFS_CLIENT_BUILDDIR}\afslogon.pdb"
DoServer:
- SectionGetFlags ${secServer} $R0
+ SectionGetFlags ${secServer} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} +1 DoControl
SetOutPath "$INSTDIR\Server\usr\afs\bin"
File "${AFS_SERVER_BUILDDIR}\afskill.pdb"
File "${AFS_SERVER_BUILDDIR}\afssvrcfg.pdb"
+ File "${AFS_SERVER_BUILDDIR}\asetkey.pdb"
File "${AFS_SERVER_BUILDDIR}\bosctlsvc.pdb"
File "${AFS_SERVER_BUILDDIR}\bosserver.pdb"
File "${AFS_SERVER_BUILDDIR}\buserver.pdb"
; Do control center components
DoControl:
- SectionGetFlags ${secControl} $R0
+ SectionGetFlags ${secControl} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} +1 DoCommon
DoCommon:
SetOutPath "$INSTDIR\Common"
+!IFDEF CL_1400
+ File "${SYSTEMDIR}\msvcr80d.pdb"
+ File "${SYSTEMDIR}\msvcp80d.pdb"
+ File "${SYSTEMDIR}\mfc80d.pdb"
+!ELSE
!IFDEF CL_1310
File "${SYSTEMDIR}\msvcr71d.pdb"
File "${SYSTEMDIR}\msvcp71d.pdb"
File "${SYSTEMDIR}\msvcrtd.pdb"
!ENDIF
!ENDIF
+!ENDIF
; Common Areas
SetOutPath "$INSTDIR\Common"
contInstall:
+ ; Set Install Type text
+ InstTypeSetText 0 "AFS Client"
+ InstTypeSetText 1 "AFS Administrator"
+ InstTypeSetText 2 "AFS Server"
+ InstTypeSetText 3 "AFS Developer Tools"
+
+ ; Set sections in each install type
+ SectionSetInstTypes 0 15 ; AFS Client
+ SectionSetInstTypes 1 15 ; Loopback adapter
+ SectionSetInstTypes 2 4 ; AFS Server
+ SectionSetInstTypes 3 6 ; AFS Control Center
+ SectionSetInstTypes 4 14 ; Documentation
+ SectionSetInstTypes 5 8 ; SDK
+!ifndef DEBUG
+ SectionSetInstTypes 6 8 ; Debug symbols
+!else
+ SectionSetInstTypes 6 15 ; Debug symbols
+!endif
+
; 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" "ncadg_ip_udp"
StrCmp $R0 "rpcrt4.dll" contInstall2
+ ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\RPC\ClientProtocols" "ncacn_http"
+ 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:
-DoLoop:
; If the Loopback is already installed, we mark the option OFF and Read Only
; so the user can not select it.
Call afs.isLoopbackInstalled
IntOp $0 $0 & ${SECTION_OFF}
IntOp $0 $0 | ${SF_RO}
SectionSetFlags ${secLoopback} $0
+ ; And disable the loopback in the types
+ SectionSetInstTypes 1 0 ; Loopback adapter
SkipLoop:
; Never install debug symbols unless explicitly selected, except in DEBUG mode
StrCmp $R2 "2" UpgradeServer
StrCmp $R2 "3" DowngradeServer
- SectionGetFlags ${secServer} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${secServer} $0
- ;# !insertmacro UnselectSection ${secServer}
+ SectionGetFlags ${secServer} $0
+ IntOp $0 $0 | ${SF_SELECTED}
+ SectionSetFlags ${secServer} $0
+ ;# !insertmacro UnselectSection ${secServer}
goto skipServer
UpgradeServer:
goto skipServer
NoServer:
- SectionGetFlags ${secServer} $0
- IntOp $0 $0 & ${SECTION_OFF}
- SectionSetFlags ${secServer} $0
- ;# !insertmacro UnselectSection ${secServer}
+ SectionGetFlags ${secServer} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secServer} $0
+ ;# !insertmacro UnselectSection ${secServer}
goto skipServer
skipServer:
Pop $R2
StrCmp $R2 "0" NoControl
- SectionGetFlags ${secControl} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${secControl} $0
+ SectionGetFlags ${secControl} $0
+ IntOp $0 $0 | ${SF_SELECTED}
+ SectionSetFlags ${secControl} $0
goto CheckDocs
NoControl:
- SectionGetFlags ${secControl} $0
- IntOp $0 $0 & ${SECTION_OFF}
- SectionSetFlags ${secControl} $0
- ;# !insertmacro UnselectSection ${secControl}
+ SectionGetFlags ${secControl} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secControl} $0
+ ;# !insertmacro UnselectSection ${secControl}
CheckDocs:
; Check Documentation
Call IsDocumentationInstalled
Pop $R2
StrCmp $R2 "0" NoDocs
- SectionGetFlags ${secDocs} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${secDocs} $0
+ SectionGetFlags ${secDocs} $0
+ IntOp $0 $0 | ${SF_SELECTED}
+ SectionSetFlags ${secDocs} $0
goto CheckSDK
NoDocs:
- SectionGetFlags ${secDocs} $0
- IntOp $0 $0 & ${SECTION_OFF}
- SectionSetFlags ${secDocs} $0
+ SectionGetFlags ${secDocs} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secDocs} $0
goto CheckSDK
; To check the SDK, we simply look to see if the files exist. If they do,
DefaultOptions:
; Client Selected
- SectionGetFlags ${secClient} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${secClient} $0
+ SectionGetFlags ${secClient} $0
+ IntOp $0 $0 | ${SF_SELECTED}
+ SectionSetFlags ${secClient} $0
; Server NOT selected
- SectionGetFlags ${secServer} $0
- IntOp $0 $0 & ${SECTION_OFF}
- SectionSetFlags ${secServer} $0
+ SectionGetFlags ${secServer} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secServer} $0
; Control Center NOT selected
- SectionGetFlags ${secControl} $0
- IntOp $0 $0 & ${SECTION_OFF}
- SectionSetFlags ${secControl} $0
- ;# !insertmacro UnselectSection ${secControl}
+ SectionGetFlags ${secControl} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secControl} $0
+ ;# !insertmacro UnselectSection ${secControl}
- ; Documentation selected
- SectionGetFlags ${secDocs} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${secDocs} $0
- ;# !insertmacro UnselectSection ${secDocs}
+ ; Documentation NOT selected
+ SectionGetFlags ${secDocs} $0
+ IntOp $0 $0 & ${SECTION_OFF}
+ SectionSetFlags ${secDocs} $0
+ ;# !insertmacro UnselectSection ${secDocs}
; SDK not selected
SectionGetFlags ${secSDK} $0
goto end
end:
- Pop $0
+ Pop $0
Push $R0
FunctionEnd
-
-
-
;--------------------------------
; These are our cleanup functions
Function .onInstFailed
; Delete documentation
Delete "$INSTDIR\Documentation\README.TXT"
Delete "$INSTDIR\Documentation\html\*"
+ Delete "$INSTDIR\Documentation\html\index_files\*"
Delete "$INSTDIR\Documentation\html\CmdRef\*"
Delete "$INSTDIR\Documentation\html\InstallGd\*"
Delete "$INSTDIR\Documentation\html\ReleaseNotes\*"
+ Delete "$INSTDIR\Documentation\html\ReleaseNotes\logo_files\*"
Delete "$INSTDIR\Documentation\html\SysAdminGd\*"
Delete /REBOOTOK "$INSTDIR\Common\afs_config.exe"
Delete /REBOOTOK "$INSTDIR\Common\afscfgadmin.pdb"
Delete /REBOOTOK "$INSTDIR\Common\afskasadmin.pdb"
Delete /REBOOTOK "$INSTDIR\Common\afsptsadmin.pdb"
-
+!IFDEF DEBUG
+!IFDEF CL_1400
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80d.pdb"
+!ELSE
!IFDEF CL_1310
Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.dll"
Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
!ENDIF
+!ENDIF
+!ENDIF
+!ELSE
+!IFDEF CL_1400
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80KOR.DLL"
!ELSE
!IFDEF CL_1310
Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
!ENDIF
!ENDIF
!ENDIF
+!ENDIF
IfSilent SkipDel
-; IfFileExists "$WINDIR\afsdcell.ini" CellExists SkipDelAsk
+; IfFileExists "$INSTDIR\Client\CellServDB" CellExists SkipDelAsk
; CellExists:
- MessageBox MB_YESNO "Would you like to keep your configuration files?" IDYES SkipDel
- Delete "$WINDIR\afsdcell.ini"
+ MessageBox MB_YESNO "Would you like to keep your configuration information?" IDYES SkipDel
+ Delete "$INSTDIR\Client\CellServDB"
- Delete "$WINDIR\afsdsbmt.ini"
; Only remove krb5.ini if KfW was installed
!IFDEF INSTALL_KFW
Delete "$WINDIR\krb5.ini"
!ENDIF
- Delete "$WINDIR\afsdns.ini"
- Delete "$WINDIR\afs_freelance.ini"
+ Delete "$INSTDIR\Client\afsdns.ini"
+ GetTempFileName $R0
+ File /oname=$R0 "${AFS_WININSTALL_DIR}\AdminGroup.exe"
+ nsExec::Exec '$R0 -remove'
+
SkipDel:
Delete "$WINDIR\afsd_init.log"
Delete "$INSTDIR\Uninstall.exe"
Delete /REBOOTOK "$SYSDIR\afsserver.cpl"
Delete /REBOOTOK "$SYSDIR\afs_cpa.cpl"
+ Delete /REBOOTOK "$SYSDIR\afslogon.dll"
+ Delete /REBOOTOK "$SYSDIR\afscpcc.exe"
Delete /REBOOTOK "$SYSDIR\afsserver.pdb"
Delete /REBOOTOK "$SYSDIR\afs_cpa.pdb"
-
+ Delete /REBOOTOK "$SYSDIR\afslogon.pdb"
+ Delete /REBOOTOK "$SYSDIR\afscpcc.pdb"
+
RMDir /r "$INSTDIR\Documentation\html\CmdRef"
RMDir /r "$INSTDIR\Documentation\html\InstallGd"
RMDir /r "$INSTDIR\Documentation\html\ReleaseNotes"
RMDir "$INSTDIR\Client"
!IFDEF DEBUG
+!IFDEF CL_1400
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80d.pdb"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80d.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80d.pdb"
+!ELSE
!IFDEF CL_1310
Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.dll"
Delete /REBOOTOK "$INSTDIR\bin\msvcr71d.pdb"
Delete /REBOOTOK "$INSTDIR\bin\msvcrtd.pdb"
!ENDIF
!ENDIF
+!ENDIF
+!ELSE
+!IFDEF CL_1400
+ Delete /REBOOTOK "$INSTDIR\bin\mfc80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcr80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\msvcp80.dll"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80CHS.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80CHT.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80DEU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ENU.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ESP.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80FRA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80ITA.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80JPN.DLL"
+ Delete /REBOOTOK "$INSTDIR\bin\MFC80KOR.DLL"
!ELSE
!IFDEF CL_1310
Delete /REBOOTOK "$INSTDIR\bin\mfc71.dll"
!ENDIF
!ENDIF
!ENDIF
+!ENDIF
Delete /REBOOTOK "$INSTDIR\Common\*"
RMDir "$INSTDIR\Common"
DeleteRegKey HKCR "CLSID\{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
DeleteRegKey HKCR "FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension"
DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" "{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}"
+ DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" "afs_cpa"
+
+ ; WinLogon Event Notification
+ DeleteRegKey HKLM "Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\AfsLogon"
DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client\CurrentVersion"
DeleteRegKey HKLM "${AFS_REGKEY_ROOT}\AFS Client"
DeleteRegKey /ifempty HKLM "${AFS_REGKEY_ROOT}"
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenAFS"
DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Services\NetBT\Parameters" "SmbDeviceEnabled"
-
+
+ ; Support for apps that wrote submount data directly to afsdsbmt.ini
+ DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\afsdsbmt.ini"
+
RMDir "$INSTDIR"
SectionEnd
DoDownload:
ReadINIStr $R0 $0 "Field 5" "State"
- NSISdl::download $R0 "$WINDIR\afsdcell.ini"
+ NSISdl::download $R0 "$INSTDIR\Client\CellServDB"
Pop $R0 ;Get the return value
StrCmp $R0 "success" +2
MessageBox MB_OK|MB_ICONSTOP "Download failed: $R0"
goto done
UsePackaged:
- SetOutPath "$WINDIR"
- File "afsdcell.ini"
+ SetOutPath "$INSTDIR\Client"
+ File "CellServDB"
goto done
CheckOther:
ReadINIStr $R0 $0 "Field 7" "State"
StrCmp $R0 "" done
- CopyFiles $R0 "$WINDIR\afsdcell.ini"
+ CopyFiles $R0 "$INSTDIR\Client\CellServDB"
done:
WriteINISTR $0 "Field 4" "State" "0"
WriteINIStr $0 "Field 6" "State" "0"
- ; If there is an existing afsdcell.ini file, allow the user to choose it and make it default
- IfFileExists "$WINDIR\afsdcell.ini" +1 notpresent
+ ; If there is an existing afsdcell.ini file, migrate it to CellServDB
+ IfFileExists "$WINDIR\afsdcell.ini" +1 +3
+ CopyFiles /SILENT "$WINDIR\afsdcell.ini" "$INSTDIR\Client\CellServDB"
+ Delete "$WINDIR\afsdcell.ini"
+ ; If there is an existing CellServDB file, allow the user to choose it and make it default
+ IfFileExists "$INSTDIR\Client\CellServDB" +1 notpresent
WriteINIStr $0 "Field 2" "Flags" "ENABLED"
WriteINIStr $0 "Field 2" "State" "1"
WriteINIStr $0 "Field 3" "State" "0"
StrCmp $R0 "0" good
startOver:
+ ; We want to read in the existing parameters and make them the defaults
+
+ ;AFS Crypt security
+ ReadRegDWORD $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "SecurityLevel"
+ StrCmp $R1 "" +3
+ WriteINIStr $1 "Field 3" "State" $R1
+ goto +2
+ WriteINIStr $1 "Field 3" "State" "1"
+
+ ;Use DNS
+ ReadRegDWORD $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "UseDNS"
+ StrCmp $R1 "" +3
+ WriteINIStr $1 "Field 9" "State" $R1
+ goto +2
+ WriteINIStr $1 "Field 9" "State" "1"
+
+ ; Use integrated logon
+ ReadRegDWORD $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "LogonOptions"
+ StrCmp $R1 "" +3
+ WriteINIStr $1 "Field 7" "State" $R1
+ goto +2
+ WriteINIStr $1 "Field 7" "State" "0"
+
; If this is a server install, we do NOT want to recommend the Freelance client
; And we do not need to ask for the cell name.
SectionGetFlags ${secServer} $R1
IntOp $R1 $R1 & ${SF_SELECTED}
StrCmp $R1 "1" +1 NotServer
WriteINIStr $1 "Field 6" "Text" "Enable AFS Freelance client (Not Recommended for servers)"
+ ReadRegDWORD $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "FreelanceClient"
+ StrCmp $R1 "" +3
+ WriteINIStr $1 "Field 5" "State" $R1
+ goto +2
WriteINIStr $1 "Field 5" "State" "0"
WriteINIStr $1 "Field 1" "Flags" "DISABLED"
WriteINIStr $1 "Field 2" "Flags" "DISABLED"
goto SkipServerTest
NotServer:
WriteINIStr $1 "Field 6" "Text" "Enable AFS Freelance client (Recommended)"
+ ReadRegDWORD $R1 HKLM "SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" "FreelanceClient"
+ StrCmp $R1 "" +3
+ WriteINIStr $1 "Field 5" "State" $R1
+ goto +2
WriteINIStr $1 "Field 5" "State" "1"
WriteINIStr $1 "Field 1" "Flags" ""
WriteINIStr $1 "Field 2" "Flags" ""
FunctionEnd
+!ifdef USE_GETPARAMETERS
; GetParameters
; input, none
; output, top of stack (replaces, with e.g. whatever)
Pop $R1
Exch $R0
FunctionEnd
+!endif
;Check to see if any AFS component is installed
; Common files
SetOutPath "$INSTDIR\Common"
File "${AFS_CLIENT_BUILDDIR}\afs_config.exe"
- File "${AFS_SERVER_BUILDDIR}\afsadminutil.dll"
!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 "${AFS_SERVER_BUILDDIR}\TaAfsAppLib.dll"
- File "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll"
- File "${AFS_SERVER_BUILDDIR}\afsbosadmin.dll"
- File "${AFS_SERVER_BUILDDIR}\afscfgadmin.dll"
- File "${AFS_SERVER_BUILDDIR}\afskasadmin.dll"
- File "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsadminutil.dll" "$INSTDIR\Common\afsadminutil.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsclientadmin.dll" "$INSTDIR\Common\afsclientadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsprocmgmt.dll" "$INSTDIR\Common\afsprocmgmt.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll" "$INSTDIR\Common\afsvosadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\TaAfsAppLib.dll" "$INSTDIR\Common\TaAfsAppLib.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsvosadmin.dll" "$INSTDIR\Common\afsvosadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsbosadmin.dll" "$INSTDIR\Common\afsbosadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afscfgadmin.dll" "$INSTDIR\Common\afscfgadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afskasadmin.dll" "$INSTDIR\Common\afskasadmin.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll" "$INSTDIR\Common\afsptsadmin.dll" "$INSTDIR"
+
+ SetOutPath "$INSTDIR\Common"
!IFDEF DEBUG
+!IFDEF CL_1400
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr80d.dll" "$INSTDIR\Common\msvcr80d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp80d.dll" "$INSTDIR\Common\msvcp80d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc80d.dll" "$INSTDIR\Common\mfc80d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80CHS.DLL" "$INSTDIR\Common\MFC80CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80CHT.DLL" "$INSTDIR\Common\MFC80CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80DEU.DLL" "$INSTDIR\Common\MFC80DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ENU.DLL" "$INSTDIR\Common\MFC80ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ESP.DLL" "$INSTDIR\Common\MFC80ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80FRA.DLL" "$INSTDIR\Common\MFC80FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ITA.DLL" "$INSTDIR\Common\MFC80ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80JPN.DLL" "$INSTDIR\Common\MFC80JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80KOR.DLL" "$INSTDIR\Common\MFC80KOR.DLL" "$INSTDIR"
+!ELSE
!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"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr71d.dll" "$INSTDIR\Common\msvcr71d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp71d.dll" "$INSTDIR\Common\msvcp71d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc71d.dll" "$INSTDIR\Common\mfc71d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71CHS.DLL" "$INSTDIR\Common\MFC71CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71CHT.DLL" "$INSTDIR\Common\MFC71CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71DEU.DLL" "$INSTDIR\Common\MFC71DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ENU.DLL" "$INSTDIR\Common\MFC71ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ESP.DLL" "$INSTDIR\Common\MFC71ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71FRA.DLL" "$INSTDIR\Common\MFC71FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ITA.DLL" "$INSTDIR\Common\MFC71ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71JPN.DLL" "$INSTDIR\Common\MFC71JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71KOR.DLL" "$INSTDIR\Common\MFC71KOR.DLL" "$INSTDIR"
!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"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr70d.dll" "$INSTDIR\Common\msvcr70d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp70d.dll" "$INSTDIR\Common\msvcp70d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc70d.dll" "$INSTDIR\Common\mfc70d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70CHS.DLL" "$INSTDIR\Common\MFC70CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70CHT.DLL" "$INSTDIR\Common\MFC70CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70DEU.DLL" "$INSTDIR\Common\MFC70DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ENU.DLL" "$INSTDIR\Common\MFC70ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ESP.DLL" "$INSTDIR\Common\MFC70ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70FRA.DLL" "$INSTDIR\Common\MFC70FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ITA.DLL" "$INSTDIR\Common\MFC70ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70JPN.DLL" "$INSTDIR\Common\MFC70JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70KOR.DLL" "$INSTDIR\Common\MFC70KOR.DLL" "$INSTDIR"
!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"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc42d.dll" "$INSTDIR\Common\mfc42d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp60d.dll" "$INSTDIR\Common\msvcp60d.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcrtd.dll" "$INSTDIR\Common\msvcrtd.dll" "$INSTDIR"
+!ENDIF
!ENDIF
!ENDIF
!ELSE
+!IFDEF CL_1400
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc80.dll" "$INSTDIR\Common\mfc80.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr80.dll" "$INSTDIR\Common\msvcr80.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp80.dll" "$INSTDIR\Common\msvcp80.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80CHS.DLL" "$INSTDIR\Common\MFC80CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80CHT.DLL" "$INSTDIR\Common\MFC80CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80DEU.DLL" "$INSTDIR\Common\MFC80DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ENU.DLL" "$INSTDIR\Common\MFC80ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ESP.DLL" "$INSTDIR\Common\MFC80ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80FRA.DLL" "$INSTDIR\Common\MFC80FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80ITA.DLL" "$INSTDIR\Common\MFC80ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80JPN.DLL" "$INSTDIR\Common\MFC80JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC80KOR.DLL" "$INSTDIR\Common\MFC80KOR.DLL" "$INSTDIR"
+!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"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc71.dll" "$INSTDIR\Common\mfc71.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr71.dll" "$INSTDIR\Common\msvcr71.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp71.dll" "$INSTDIR\Common\msvcp71.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71CHS.DLL" "$INSTDIR\Common\MFC71CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71CHT.DLL" "$INSTDIR\Common\MFC71CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71DEU.DLL" "$INSTDIR\Common\MFC71DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ENU.DLL" "$INSTDIR\Common\MFC71ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ESP.DLL" "$INSTDIR\Common\MFC71ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71FRA.DLL" "$INSTDIR\Common\MFC71FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71ITA.DLL" "$INSTDIR\Common\MFC71ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71JPN.DLL" "$INSTDIR\Common\MFC71JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC71KOR.DLL" "$INSTDIR\Common\MFC71KOR.DLL" "$INSTDIR"
!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"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc70.dll" "$INSTDIR\Common\mfc70.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcr70.dll" "$INSTDIR\Common\msvcr70.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp70.dll" "$INSTDIR\Common\msvcp70.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70CHS.DLL" "$INSTDIR\Common\MFC70CHS.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70CHT.DLL" "$INSTDIR\Common\MFC70CHT.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70DEU.DLL" "$INSTDIR\Common\MFC70DEU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ENU.DLL" "$INSTDIR\Common\MFC70ENU.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ESP.DLL" "$INSTDIR\Common\MFC70ESP.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70FRA.DLL" "$INSTDIR\Common\MFC70FRA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70ITA.DLL" "$INSTDIR\Common\MFC70ITA.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70JPN.DLL" "$INSTDIR\Common\MFC70JPN.DLL" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\MFC70KOR.DLL" "$INSTDIR\Common\MFC70KOR.DLL" "$INSTDIR"
!ELSE
- File "${SYSTEMDIR}\mfc42.dll"
- File "${SYSTEMDIR}\msvcp60.dll"
- File "${SYSTEMDIR}\msvcrt.dll"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\mfc42.dll" "$INSTDIR\Common\mfc42.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcp60.dll" "$INSTDIR\Common\msvcp60.dll" "$INSTDIR"
+ !insertmacro ReplaceDLL "${SYSTEMDIR}\msvcrt.dll" "$INSTDIR\Common\msvcrt.dll" "$INSTDIR"
!ENDIF
!ENDIF
+!ENDIF
!ENDIF
StrCmp $LANGUAGE ${LANG_ENGLISH} DoEnglish
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\en_US\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\en_US\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\en_US\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\en_US\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ File "..\..\doc\install\Documentation\en_US\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ File "..\..\doc\install\Documentation\en_US\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1033.dll" "$INSTDIR\Client\Program\afscreds_1033.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\de_DE\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\de_DE\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\de_DE\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\de_DE\html\InstallGd\*"
+ ;SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ ;File "..\..\doc\install\Documentation\de_DE\html\ReleaseNotes\*"
+ ;SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ ;File "..\..\doc\install\Documentation\de_DE\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1032.dll" "$INSTDIR\Client\Program\afscreds_1032.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\es_ES\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ ;File "..\..\doc\install\Documentation\es_ES\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_html"
+ ;File "..\..\doc\install\Documentation\es_ES\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ ;File "..\..\doc\install\Documentation\es_ES\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ ;File "..\..\doc\install\Documentation\es_ES\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ ;File "..\..\doc\install\Documentation\es_ES\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1034.dll" "$INSTDIR\Client\Program\afscreds_1034.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\ja_JP\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\ja_JP\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\ja_JP\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\ja_JP\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ ;File "..\..\doc\install\Documentation\ja_JP\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ ;File "..\..\doc\install\Documentation\ja_JP\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1041.dll" "$INSTDIR\Client\Program\afscreds_1041.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\ko_KR\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\ko_KR\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\ko_KR\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\ko_KR\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ File "..\..\doc\install\Documentation\ko_KR\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ File "..\..\doc\install\Documentation\ko_KR\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1042.dll" "$INSTDIR\Client\Program\afscreds_1042.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\pt_BR\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\pt_BR\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\pt_BR\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\pt_BR\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ File "..\..\doc\install\Documentation\pt_BR\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ File "..\..\doc\install\Documentation\pt_BR\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1046.dll" "$INSTDIR\Client\Program\afscreds_1046.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\zh_CN\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\zh_CN\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\zh_CN\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\zh_CN\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ File "..\..\doc\install\Documentation\zh_CN\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ File "..\..\doc\install\Documentation\zh_CN\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_2052.dll" "$INSTDIR\Client\Program\afscreds_2052.dll" "$INSTDIR"
SetOutPath "$INSTDIR\Documentation"
File "..\..\doc\install\Documentation\zh_TW\README.TXT"
+ SetOutPath "$INSTDIR\Documentation\html"
+ File "..\..\doc\install\Documentation\zh_TW\html\*"
+ SetOutPath "$INSTDIR\Documentation\html\index_files"
+ File "..\..\doc\install\Documentation\zh_TW\html\index_files\*"
+ SetOutPath "$INSTDIR\Documentation\html\InstallGd"
+ File "..\..\doc\install\Documentation\zh_TW\html\InstallGd\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes"
+ File "..\..\doc\install\Documentation\zh_TW\html\ReleaseNotes\*"
+ SetOutPath "$INSTDIR\Documentation\html\ReleaseNotes\logo_files"
+ File "..\..\doc\install\Documentation\zh_TW\html\ReleaseNotes\logo_files\*"
SetOutPath "$INSTDIR\Client\Program"
!insertmacro ReplaceDLL "${AFS_CLIENT_BUILDDIR}\afscreds_1028.dll" "$INSTDIR\Client\Program\_1028.dll" "$INSTDIR"
Function afs.InstallMSLoopback
GetTempFileName $R0
File /oname=$R0 "${AFS_WININSTALL_DIR}\afsloopback.dll"
- nsExec::Exec "rundll32.exe $R0 doLoopBackEntry AFS 10.254.253.1 255.255.255.0"
+ nsExec::Exec "rundll32.exe $R0 doLoopBackEntry AFS 10.254.254.253 255.255.255.252"
Delete $R0
FunctionEnd
System::Call "*$2(&t$9 '$REG_DATA_3')" ; Place the string
IntOp $2 $2 + $9 ; Advance to the next position
+ StrCmp '$REG_DATA_4' "" terminate
+ StrLen $9 '$REG_DATA_4' ; Length of third string
+ IntOp $9 $9 + 1 ; Plus null
+ System::Call "*$2(&t$9 '$REG_DATA_4')" ; Place the string
+ IntOp $2 $2 + $9 ; Advance to the next position
+
terminate:
System::Call "*$2(&t1 '')" ; Place the terminating null
IntOp $2 $2 + 1 ; Advance to the next position
Pop $2
Pop $1
Exch $R0
-FunctionEnd
\ No newline at end of file
+FunctionEnd
+
+Function CreateDesktopIni
+ WriteIniStr "$INSTDIR\Desktop.ini" ".ShellClassInfo" "IconFile" "client\program\afsd_service.exe"
+ WriteIniStr "$INSTDIR\Desktop.ini" ".ShellClassInfo" "IconIndex" "0"
+ SetFileAttributes "$INSTDIR\Desktop.ini" HIDDEN|SYSTEM
+ SetFileAttributes "$INSTDIR\" READONLY
+FunctionEnd