;*********************************************************************** ; ; OEMNPRNW.INF ; ; Novell Client for Windows NT base installation INF ; ; ;*********************************************************************** ; ; The following is the version info for Novell ; ;VeRsIoN=v4.83 Novell Client Install for Windows NT ;CoPyRiGhT=copyright 1992-2002, by Novell, INC. All rights reserved. ;----------------------------------------------------------------------- ; OPTION TYPE ; ----------- ; This identifies the Option type we are dealing with. The different ; possible types are: ; ; COMPUTER, DISPLAY, MOUSE, KEYBOARD, LAYOUT, SCSI, PRINTER, ... ; ; Types specific to networking: ; ; NetAdapter, a netcard / adapter combination or just a netcard ; NetDriver, just a netcard driver ; NetTransport, a complete NDIS-compliant TDI transport stack ; NetService, an NT networking service ; NetWork, a complete network ensemble. ; NetProvider, a complete network which supports NT MPR protocol ;----------------------------------------------------------------------- [Identification] OptionType = NetProvider ;----------------------------------------------------------------------- ; OPTION LIST ; ----------- ; This section lists the OEM Option key names. These keys are locale ; independent and used to represent the option in a locale independent ; manner. ; ;----------------------------------------------------------------------- [Options] NWFS [InitBaseVars] KeyNull = "" MAXIMUM_ALLOWED = 33554432 KeyInfo = {} RegistryErrorIndex = NO_ERROR NoTitle = 0 CurrentControlSet = "SYSTEM\CurrentControlSet" ServicesBaseName = $(CurrentControlSet)"\Services" ;----------------------------------------------------------------------- ; CONSTANTS FOR USING DIALOGS ;----------------------------------------------------------------------- [FileConstants] ; ; File names, etc. ; UtilityInf = "UTILITY.INF" subroutineinf = "SUBROUTN.INF" NwSubsInf = "NWSUBS.INF" NwLangIdDll = "NWLANGID.DLL" NwSetupDll = "nwsetup.dll" SoftwareType = "service" Exit_Code = 0 ; ; Product Info ; Manufacturer = "Novell" UserModeRoot = "%SystemRoot%" System32Root = $(UserModeRoot)"\System32" SoftwareBinHome = $(System32Root)"\NetWare\" DriverBinHome = $(System32Root)"\Drivers\" NetWareEventFile = $(System32Root)"\nls\"$(NLSDirName)"\nwevents.dll" ; ; Services ; ; ; MUP: if not already installed ; ProductMUPDisplayName = "Mup" ProductMUPTitle = "Mup" ProductMUPControl = service ProductMUPHidden = 0 ProductMUPInstrumentation = FALSE ProductMUPName = "Mup" ProductMUPImagePath = "\SystemRoot\System32\drivers\mup.sys" ProductMUPSvcType = "transport" ProductMUPGroup = "Network" ProductMUPDependList = {} ProductMUPEventFile = "" ; ; TDI: if not already installed ; ProductTDIDisplayName = "Tdi" ProductTDITitle = "Tdi" ProductTDIControl = service ProductTDIHidden = 0 ProductTDIInstrumentation = FALSE ProductTDIName = "Tdi" ProductTDIImagePath = "\SystemRoot\System32\drivers\TDI.sys" ProductTDISvcType = "kernelauto" ProductTDIGroup = "Network" ProductTDIDependList = {} ProductTDIEventFile = "" ; ; NWSIPX32: Driver for Sipx Api's. ; ProductNWSIPX32Control = service ProductNWSIPX32Hidden = 0 ProductNWSIPX32Instrumentation = TRUE ProductNWSIPX32Name = "NWSIpx32" ProductNWSIPX32ImagePath = $(SoftwareBinHome)nwsipx32.sys ProductNWSIPX32SvcType = "systemauto" ProductNWSIPX32Group = "" ProductNWSIPX32DependList = {"NwlnkIpx", "NwlnkSpx", "+NetWare Services", "+TDI"} ProductNWSIPX32EventFile = $(NetWareEventFile) ; ; NwFs: NetWare Workstation ; ProductNWFSControl = component ProductNWFSHidden = 0 ProductNWFSReviewBindings = 1 ProductNWFSInstrumentation = TRUE ProductNWFSName = "NetWareWorkstation" ProductNWFSImagePath = $(SoftwareBinHome)nwfs.sys ProductNWFSSvcType = "systemauto" ProductNWFSSoftType = "service" ProductNWFSGroup = "NetworkProvider" ; ProductNWFSDependList = {"+TDI", "+NetWare Services", "Mup", "NwlnkIpx"} ProductNWFSDependList = {"+TDI", "+NetWare Services"} ProductNWFSEventFile = $(NetWareEventFile) ProductNWFSKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion" NetRuleNWFSSoftwareType = "nwfs nwFileSys" NetRuleNWFSSoftwareUse = "service yes yes" NetRuleNWFSSoftwareBindForm = """Nwfs"" yes yes container" NetRuleNWFSSoftwareClass = {"nwFileSys basic"} NetRuleNWFSSoftwareBindable = {} ; ; ResMgr: NetWare Resource Manager ; ProductRESMGRControl = component ProductRESMGRHidden = 1 ProductRESMGRInstrumentation = TRUE ProductRESMGRName = "ResMgr" ProductRESMGRImagePath = $(SoftwareBinHome)resmgr.sys ProductRESMGRSvcType = "kernelautostart" ProductRESMGRSoftType = "service" ProductRESMGRGroup = "NetWare Services" ProductRESMGRDependList = {} ProductRESMGREventFile = $(NetWareEventFile) ProductRESMGRKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductRESMGRName)"\CurrentVersion" ; ; SPSENTRY: Novell Service Pack Sentry Service ; ProductSPSENTRYControl = service ProductSPSENTRYHidden = 0 ProductSPSENTRYInstrumentation = FALSE ProductSPSENTRYName = "SpSentry" ProductSPSENTRYImagePath = $(System32Root)\spsentry.exe ProductSPSENTRYSvcType = "serviceauto" ProductSPSENTRYGroup = "NetWare Services" ProductSPSENTRYDependList = {} ProductSPSENTRYEventFile = $(NetWareEventFile) ; ; NICM: Novell InterService Communication Driver ; ProductNICMControl = component ProductNICMHidden = 1 ProductNICMInstrumentation = TRUE ProductNICMName = "NICM" ProductNICMImagePath = "\SystemRoot\System32\drivers\nicm.sys" ProductNICMSvcType = "systemstart" ProductNICMGroup = "" ProductNICMDependList = {} ProductNICMEventFile = $(NetWareEventFile) ; ; NWSAP: Novell SAP Name Space Service Provider ; ProductNWSAPControl = component ProductNWSAPHidden = 1 ProductNWSAPInstrumentation = TRUE ProductNWSAPName = "NwSap" ProductNWSAPImagePath = $(SoftwareBinHome)nwsap.sys ProductNWSAPSvcType = "transport" ProductNWSAPGroup = "" ProductNWSAPDependList = {} ProductNWSAPEventFile = $(NetWareEventFile) ; ; NWSNS: Novell Simple Naming Services ; ProductNWSNSControl = component ProductNWSNSHidden = 1 ProductNWSNSInstrumentation = TRUE ProductNWSNSName = "NwSns" ProductNWSNSImagePath = $(SoftwareBinHome)nwsns.sys ProductNWSNSSvcType = "transport" ProductNWSNSGroup = "" ProductNWSNSDependList = {} ProductNWSNSEventFile = $(NetWareEventFile) ; ; NWHost: Novell Host File Name Space Service Provider ; ProductNWHOSTControl = component ProductNWHOSTHidden = 1 ProductNWHOSTInstrumentation = TRUE ProductNWHOSTName = "NwHost" ProductNWHOSTImagePath = $(SoftwareBinHome)nwhost.sys ProductNWHOSTSvcType = "transport" ProductNWHOSTGroup = "" ProductNWHOSTDependList = {} ProductNWHOSTEventFile = $(NetWareEventFile) ; ; NWDHCP: Novell DHCP Inform Client ; ProductNWDHCPControl = component ProductNWDHCPHidden = 1 ProductNWDHCPInstrumentation = TRUE ProductNWDHCPName = "nwdhcp" ProductNWDHCPImagePath = $(SoftwareBinHome)nwdhcp.sys ProductNWDHCPSvcType = "systemauto" ProductNWDHCPGroup = "" ProductNWDHCPDependList = {"tcpip", "+NetWare Services", "+TDI"} ProductNWDHCPEventFile = $(NetWareEventFile) ; ; srvloc: Novell Service Location ; ProductSRVLOCControl = component ProductSRVLOCHidden = 1 ProductSRVLOCInstrumentation = TRUE ProductSRVLOCName = "srvloc" ProductSRVLOCImagePath = $(SoftwareBinHome)srvloc.sys ProductSRVLOCSvcType = "systemauto" ProductSRVLOCGroup = "" ProductSRVLOCDependList = {} ProductSRVLOCEventFile = $(NetWareEventFile) ; ; NwSlp: SLP Name Space Service Provider ; ProductNWSLPControl = component ProductNWSLPHidden = 1 ProductNWSLPInstrumentation = TRUE ProductNWSLPName = "NwSlp" ProductNWSLPImagePath = $(SoftwareBinHome)nwslp.sys ProductNWSLPSvcType = "transport" ProductNWSLPGroup = "" ProductNWSLPDependList = {} ProductNWSLPEventFile = $(NetWareEventFile) ; ; NWDNS: Novell DNS Name Space Service Provider ; ProductNWDNSControl = component ProductNWDNSHidden = 1 ProductNWDNSInstrumentation = TRUE ProductNWDNSName = "NwDns" ProductNWDNSImagePath = $(SoftwareBinHome)nwdns.sys ProductNWDNSSvcType = "transport" ProductNWDNSGroup = "" ProductNWDNSDependList = {} ProductNWDNSEventFile = $(NetWareEventFile) ; ; Provider ; ProductProviderName = "NetWare Services" ProductProviderImagePath = $(System32Root)"\netware.dll" ProductProviderDevice = "\Device\NetWareRedirector" ProductProviderClass = 3 ; ; Registry key names ; ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion" ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductNWFSName)"\Parameters" ServiceNameList = ^(ServiceNames, 1) UpdateServiceNameList = ^(UpdateServiceNames, 1) IPServiceNameList = ^(IPServiceNames, 1) IPXServiceNameList = ^(IPXServiceNames, 1) SAMServiceNameList = ^(SAMServiceNames, 1) ExtendedFunctionList = ^(ExtendedFunctionNames, 1) [ServiceNames] ; ; referenced by ServiceNameList ; SVC_1 = "NWFS" SVC_2 = "RESMGR" SVC_3 = "MUP" SVC_4 = "TDI" SVC_5 = "NWSIPX32" SVC_6 = "NICM" SVC_7 = "NWSAP" SVC_8 = "NWSNS" SVC_9 = "NWHOST" SVC_10 = "SRVLOC" SVC_11 = "NWSLP" SVC_12 = "NWDNS" SVC_13 = "NWDHCP" SVC_14 = "SPSENTRY" [UpdateServiceNames] ; ; referenced by UpdateRoutine ; SVC_1 = "NWFS" SVC_2 = "RESMGR" SVC_3 = "NWSIPX32" SVC_4 = "NICM" SVC_5 = "NWSAP" SVC_6 = "NWSNS" SVC_7 = "NWHOST" SVC_8 = "SRVLOC" SVC_9 = "NWSLP" SVC_10 = "NWDNS" SVC_11 = "NWDCHP" SVC_12 = "SPSENTRY" [IPServiceNames] ; ; referenced by IPServiceNameList ; SVC_1 = "NWHOST" SVC_2 = "SRVLOC" SVC_3 = "NWSLP" SVC_4 = "NWDNS" SVC_5 = "NWDHCP" [IPXServiceNames] ; ; referenced by IPXServiceNameList ; SVC_1 = "NWSIPX32" SVC_2 = "NWSAP" [SAMServiceNames] SVC_1 = "SPSENTRY" [ExtendedFunctionNames] ; ; referenced by ExtendedFunctionList ; EXFN_1 = "AuthenticationPackage" EXFN_2 = "NetworkProvider" EXFN_3 = "NetWarePrintServices" [GeneralConstants] ; ; Program flow control variables. ; from = "" to = "" ; ; Return codes; Exit_Code is set to one of these ; ExitCodeOk = 0 ExitCodeCancel = 1 ExitCodeFatal = 2 KeyNull = "" MAXIMUM_ALLOWED = 33554432 RegistryErrorIndex = NO_ERROR KeyProduct = "" KeyParameters = "" TRUE = 1 FALSE = 0 NoTitle = 0 ExitState = "Active" OldVersionExisted = $(FALSE) ProductMajorVersion = 4 ProductMinorVersion = 83 ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion) [ExtendedConstants] SvcList = {"NetWare Services", "ODI", "ODI Drivers"} PkgName = "nwv1_0" ProviderName = "NetWareWorkstation" NetWarePrintProviderName = "NetWare Print Services" PrintProvider = "System\CurrentControlSet\Control\Print\Providers" [NWHostConstants] HostFileName = "\SystemRoot\System32\drivers\etc\hosts" [date] ; ; Now is a list which contains { Sec from 1-1-1970, Year, Month, Day, Hour, ; Minute, Second } ; Now = {} ? $(!LIBHANDLE) GetSystemDate [DetectDiskSpace] VolumeList = {} ? $(!LIBHANDLE) GetHardDriveLetters VolumeFSList = {} ? $(!LIBHANDLE) GetHardDriveFileSystems [DetectSystemMemory] SystemMemory = "" ? $(!LIBHANDLE) GetMemorySize [ProcessorDetect] !STF_PROCESSOR = "" ? $(!LIBHANDLE) GetProcessor ;--------------------------------------------------------------------------- ; 1. Identify ; ; DESCRIPTION: To verify that this INF deals with the same type of options ; as we are choosing currently. ; ; INPUT: None ; ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL ; $($R1): Option Type (COMPUTER ...) ; $($R2): Diskette description ;--------------------------------------------------------------------------- [Identify] read-syms Identification set Status = STATUS_SUCCESSFUL set Identifier = $(OptionType) set Media = #("Source Media Descriptions", 1, 1) Return $(Status) $(Identifier) $(Media) ;------------------------------------------------------------------------ ; 2. ReturnOptions: ; ; DESCRIPTION: To return the option list supported by this INF and the ; localised text list representing the options. ; ; ; INPUT: $($0): Language used. ( ENG | FRN | ... ) ; ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL | ; STATUS_NOLANGUAGE ; STATUS_FAILED ; ; $($R1): Option List ; $($R2): Option Text List ;------------------------------------------------------------------------ [ReturnOptions] set Status = STATUS_FAILED set OptionList = {} set OptionTextList = {} ; ; Check if the language requested is supported ; set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $($0) in $(LanguageList) goto returnoptions else set Status = STATUS_NOLANGUAGE goto finish_ReturnOptions endif ; ; form a list of all the options and another of the text representing ; returnoptions = + set OptionList = ^(Options, 1) set OptionTextList = ^(OptionsText$($0), 1) set Status = STATUS_SUCCESSFUL finish_ReturnOptions = + Return $(Status) $(OptionList) $(OptionTextList) ;----------InstallOption------------------------------------------------- ; ; InstallOption: ; ; This section is shelled to by main installation processing ; or by NCPASHEL.INF during reconfig, removal, update, etc. ; ; ; FUNCTION: To copy files representing Options ; To configure the installed option ; To update the registry for the installed option ; ; INPUT: $($0): Language to use ; $($1): OptionID to install ; $($2): SourceDirectory ; $($3): AddCopy (YES | NO) ; $($4): DoCopy (YES | NO) ; $($5): DoConfig (YES | NO) ; ; OUTPUT: $($R0): STATUS: STATUS_SUCCESSFUL | ; STATUS_NOLANGUAGE | ; STATUS_USERCANCEL | ; STATUS_FAILED ; ;------------------------------------------------------------------------ [InstallOption] ; ; Flush this INF file from the control panel ; FlushInf "OEMNPRNW.INF" ; ; extract parameters ; set Option = $($1) set SrcDir = $($2) set AddCopy = $($3) set DoCopy = $($4) set DoConfig = $($5) set NLSDirName = $($6) set OriginalAddCopy = $($3) set OriginalDoCopy = $($4) set OriginalDoConfig = $($5) ; ; Check if the language requested is supported ; set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $($0) NOT-IN $(LanguageList) Return STATUS_NOLANGUAGE endif detect ProcessorDetect ifstr(i) $(!STF_PROCESSOR) == "I386" set !STF_PLATFORM = "I386" else-ifstr(i) $(!STF_PROCESSOR) == "I486" set !STF_PLATFORM = "I386" else-ifstr(i) $(!STF_PROCESSOR) == "I586" set !STF_PLATFORM = "I386" else-ifstr(i) $(!STF_PROCESSOR) == "R4000" set !STF_PLATFORM = "Mips" else set !STF_PLATFORM = "Alpha" endif StartWait ; ; define all the constants ; set-subst LF = "\n" read-syms GeneralConstants read-syms ExtendedConstants read-syms FileConstants read-syms DialogConstants$(!STF_LANGUAGE) read-syms FileConstants$(!STF_LANGUAGE) read-syms InstallOption$(!STF_LANGUAGE) set LibDir = "" Ifstr(i) $(!NTN_InstallMode) == install set LibDir = $(SrcDir) else-Ifstr(i) $(!NTN_InstallMode) == update set LibDir = $(SrcDir) endif Set !G:DebugOutputControl = 0 Set !InstallDebugFiles = 0 Ifstr(i) $(LibDir) != "" LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(LibDir) Ifstr(i) $(STATUS) != "ERROR" set LibDir = $(STATUS) Endif LoadLibrary $(LoadDisk1Text) $(LibDir)$(NwLangIdDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWCheckDebugMode ifstr(i) $(LibResult) == "TRUE" Set !G:DebugOutputControl = 1 Set !InstallDebugFiles = 1 endif FreeLibrary $(NwLibHandle) endif ifstr(i) $(!NTN_Origination) == "NCPA" set Continue = "OK" endif ; ; This call checks the STF_ variables and sets the NWU variables. ; Shell "" UnattendedInstallOption ; ; Get the data from the Unattended file. ; ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" Shell $(!NWUnattendedFile) ReadDefaultData, $(!NWUnattendedSection) ifstr(i) $($R0) != "STATUS_SUCCESSFUL" Debug-Output "OEMNPRNW.INF: Shell to read the NW Parameter values from an Unattend.txt file Failed." Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "Warning", $(UnattendFileReadFailed) ifstr(i) $($R1) == "CANCEL" set CommonStatus = STATUS_USERCANCEL goto end endif endif endif endif ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWWizard) != YES Debug-OutPut "OEMNPRNW.INF: !DoRemove = "$(!DoRemove) ifstr(i) $(!DoRemove) == YES set !NTN_InstallMode = deinstall else-Ifstr(i) $(!DoInstall) == NO Debug-OutPut "OEMNPRNW.INF: !DoInstall = "$(!DoInstall) set CommonStatus = STATUS_SUCCESSFUL goto end endif endif endif set CanInstall = "NO" ; ; Find out what NT's version is ; set CurrentVersion = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion" OpenRegKey $(!REG_H_LOCAL) "" $(CurrentVersion) $(MAXIMUM_ALLOWED) CurrentVersionKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(CurrentVersionKey) "CurrentVersion" VersionList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set VersionListData = *($(VersionList), 4) Split-string $(VersionListData) "." SplitVersionList Set NTMajorVersion = *($(SplitVersionList), 1) Set NTMinorVersion = *($(SplitVersionList), 3) Debug-OutPut "Windows NT current version is "$(VersionListData) Debug-OutPut "Windows NT Major version is "$(NTMajorVersion) Debug-OutPut "Windows NT Minor version is "$(NTMinorVersion) ifint $(NTMajorVersion) > "3" set CanInstall = "YES" endif else Debug-Output "OEMNPRNW.INF: Error getting NT version" endif CloseRegKey $(CurrentVersionKey) else Debug-Output "OEMNPRNW.INF: Error opening "$(CurrentVersion) endif ifstr(i) $(CanInstall) == "NO" set BadNTVersionMessage = $(WrongNTVersionMessage) ifint $(NTMajorVersion) == "3" ifint $(NTMinorVersion) >= "51" set BadNTVersionMessage = $(OldNTVersionMessage) endif endif Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(BadNTVersionMessage) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif goto end endif ; ; Is this an Advanced Server ; Debug-Output "OEMNPRNW.INF: Checking to see if advanced server" set AdvancedServer = "NO" Set TempKeyName = "SYSTEM\CurrentControlSet\Control\ProductOptions" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set ValueName = "ProductType" GetRegValue $(TempKey) $(ValueName) ValueList Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ValueListData = *($(ValueList), 4) set AdvancedServer = "YES" ifstr(i) $(ValueListData) == "WinNT" set AdvancedServer = "NO" Debug-Output "OEMNPRNW.INF: AdvancedServer is "$(AdvancedServer) endif else Debug-Output "OEMNPRNW.INF: Failed to get ProductType" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open ProductOptions key" endif ; ; Set install flags based on unattended install setting ; ifstr(i) $(!NWWizard) != YES ifstr(i) $(!Protocol) == "IP" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES else-ifstr(i) $(!Protocol) == "IPNOCM" set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(!Protocol) == "IPIPX" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO else-ifstr(i) $(!Protocol) == "IPX" set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif endif ; ; Save the old language dir so we know if the language is changed ; set OldNLSDirName = "" set NovellParameters = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(NovellParameters) $(MAXIMUM_ALLOWED) KeyNovellParameters ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(KeyNovellParameters) "NWLanguage" NWLanguageList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ValueType = *($(NWLanguageList), 3) ifstr(i) $(ValueType) == $(!REG_VT_SZ) set OldNLSDirName = *($(NWLanguageList), 4) else-ifstr(i) $(ValueType) == $(!REG_VT_MULTI_SZ) set LanguageList = *($(NWLanguageList), 4) set OldNLSDirName = *($(LanguageList), 1) endif endif CloseRegKey $(KeyNovellParameters) Endif ifstr(i) $(!InstallSAMRedir) == "YES" ifstr(i) $(AdvancedServer) == "NO" Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(SAMServerMessage) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end endif endif ; ; If updating a server that had SAM redir, force to SAM redir ; ; ifstr(i) $(!NTN_InstallMode) == update ; ifstr(i) $(!InstallSAMRedir) != "YES" ; ifstr(i) $(AdvancedServer) == "YES" ; Set TempKeyName = $(!NTN_ServiceBase)"\LanmanServer" ; OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; GetRegValue $(TempKey) "DependOnService" ValueData ; Set ValueList = *($(ValueData), 4) ; CloseRegKey $(TempKey) ; ; ifcontains(i) "NetWareWorkstation" in $(ValueList) ; set !InstallSAMRedir = "YES" ; endif ; endif ; endif ; endif ; endif ; ; Set new product title if SAM Redirection ; ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" set ProductNWFSDisplayName = $(ProductNWFSDisplayNameSAM) set ProCaption = $(ProCaptionSAM) set FunctionTitle = $(FunctionTitleSAM) endif endif ; ; Set flag to identify if a local replica exists, and get path if it does ; ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" set DHOSTReplica = NO Set TempKeyName = $(!NTN_ServiceBase)"\NDS Server0" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) set DHOSTReplica = YES endif endif endif set ActiveDirectoryInstalled = NO OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\ADs\Providers" $(MAXIMUM_ALLOWED) KeyAD ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ActiveDirectoryInstalled = YES CloseRegKey $(KeyAD) Endif Debug-Output "OEMNPRNW.INF: ActiveDirectoryInstalled = "$(ActiveDirectoryInstalled) GetDriveInPath SystemDrive $(!STF_WINDOWSSYSPATH) ; get drive where os is installed ifstr(i) $(SystemDrive) == "" ; if no drive found Set SystemDrive = "C:" ; default to C: endif detect date set-title $(FunctionTitle) set to = Begin set from = Begin ; ; Assume all is well. ; set CommonStatus = STATUS_SUCCESSFUL Begin = + ; ; Set the debug output level ; Set OEM_ABANDON_SERVICES = {} Set OEM_ABANDON_COMPONENTS = {} Ifstr(i) $(!NTN_InstallMode) == deinstall set StartLabel = removenetware else-Ifstr(i) $(!NTN_InstallMode) == update set StartLabel = updatenetware else-Ifstr(i) $(!NTN_InstallMode) == bind set StartLabel = bindnetware else-Ifstr(i) $(!NTN_InstallMode) == configure Set StartLabel = configurenetware else set StartLabel = installnetware ; ; Turn on all the options. ; ForListDo $(ServiceNameList) Set Do$($) = TRUE EndForListDo endif set from = $(fatal) set to = $(fatal) goto $(StartLabel) ;----------------------------------------------- ; Installation Section ;----------------------------------------------- installnetware = + ; ; Check whether the same version of the software exists ; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NetWareWorkStation" $(MAXIMUM_ALLOWED) KeyProduct ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Same version already existed in the local machine ; CloseRegKey $(KeyProduct) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(NetWareClientInstalledMessage) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end endif ; ; Ask user to agree to license ; ; Error checking data in the Variables ifstr(i) $(!AcceptLicenseAgreement) != "" ifstr(i) $(!AcceptLicenseAgreement) == "yes" goto AcceptLicenseAgreementValid else-ifstr(i) $(!AcceptLicenseAgreement) == "no" goto AcceptLicenseAgreementValid else ; Error case the Variable AcceptLicenseAgreement does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "AcceptLicenseAgreement"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else ; set variable to blank set !AcceptLicenseAgreement = "" endif endif AcceptLicenseAgreementValid = + endif ifstr(i) $(!AcceptLicenseAgreement) != "yes" shell "" AgreeToLicense $(SrcDir) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ; Set common status and exit ; set CommonStatus = $($R0) goto end endif endif ; ; Check free disk space on system drive ; shell "" CheckSystemDriveSpace $(SrcDir) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL set CommonStatus = STATUS_USERCANCEL goto end endif ; ; Check for Microsoft's redirector ; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\NWCWorkstation\CurrentVersion" $(MAXIMUM_ALLOWED) KeyProduct ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Microsoft redirector found ; Tell the user that we are going to remove the MS Client for them ; and Add our Client then reboot ; Debug-Output "Found Microsoft Redirector." CloseRegKey $(KeyProduct) ; ; Check the variables before displaying the dialog to the user. ; ; Error checking data in the Variables ifstr(i) $(!AskRemoveMSNetWareClient) != "" ifstr(i) $(!AskRemoveMSNetWareClient) == "yes" goto AskRemoveMSNetWareClientValid else-ifstr(i) $(!AskRemoveMSNetWareClient) == "no" goto AskRemoveMSNetWareClientValid else ; Error case the Variable AskRemoveMSNetWareClient does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "AskRemoveMSNetWareClient"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else ; set variable to blank set !AskRemoveMSNetWareClient = "" endif endif AskRemoveMSNetWareClientValid = + endif ; Error checking data in the Variables ifstr(i) $(!RemoveMSNetWareClient) != "" ifstr(i) $(!RemoveMSNetWareClient) == "yes" goto RemoveMSNetWareClientValid else-ifstr(i) $(!RemoveMSNetWareClient) == "no" goto RemoveMSNetWareClientValid else ; Error case the Variable RemoveMSNetWareClient does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "RemoveMSNetWareClient"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else set !RemoveMSNetWareClient = "" endif endif RemoveMSNetWareClientValid = + endif ; Check the ACU variable ifstr(i) $(!NWACU) == "YES" ifstr(i) $(!AskRemoveMSNetWareClient) == "" set !AskRemoveMSNetWareClient = "no" endif else-ifstr(i) $(!NWACU) == "NO" ifstr(i) $(!AskRemoveMSNetWareClient) == "" set !AskRemoveMSNetWareClient = "yes" endif endif ifstr(i) $(!AskRemoveMSNetWareClient) == "no" ifstr(i) $(!RemoveMSNetWareClient) != "" ifstr(i) $(!RemoveMSNetWareClient) == "no" set CommonStatus = STATUS_USERCANCEL goto end else-ifstr(i) $(!RemoveMSNetWareClient) == "yes" ; ; Remove the MS Client for NetWare and install Novell's Client ; goto RemoveMSClient endif else ; $(!RemoveMSNetWareClient) is empty so default to remove and continue goto RemoveMSClient endif else askToRemoveMSClient = + ; ; Ask the user if they want to remove the MS Client for NetWare ; ifstr(i) $(!RemoveMSNetWareClient) == "NO" set STF_MB_DEF = 2 else set STF_MB_DEF = 1 endif set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = $(RemoveMSClientMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end endif endif RemoveMSClient = + ; ; Save the install value before we call the deinstall section of the MS inf. ; set saveValue = $(!NTN_InstallMode) set !NTN_InstallMode = deinstall Shell "oemnsvnw.inf" InstallOption, $(!STF_LANGUAGE), "NWWKSTA", "A:\", "YES", "YES", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(RemoveMSClientFailedMessage) goto ShellCodeError endif set !NTN_InstallMode = $(saveValue) Endif LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\netware.drv" ifstr(i) $(Status1) == "YES" LibraryProcedure Status1, $(!LIBHANDLE), DelFile, $(!STF_WINDOWSSYSPATH)"\netware.drv" endif EndWait ifstr(i) $(!DO_TCPIP) == "" ifstr(i) $(!DO_NWLINK) == "" LoadLibrary $(LoadDisk2Text) $(LibDir)"nls\"$(NLSDirName)"\nwsetupr.dll" NwLibHandle ; SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\setupnw.hlp" $(!MinimumID) $(!MaximumID) read-syms InstallType$(!STF_LANGUAGE) Debug-Output "OEMNPRNW.INF: !NWWizard = "$(NWWizard) ifstr(i) $(!NWWizard) == YES set ProtocolsListData = "" set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Protocols" ProtocolsList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ProtocolsListData = *($(ProtocolsList), 4) endif CloseRegKey $(TempKey) endif Debug-Output "OEMNPRNW.INF: ProtocolsListData = "$(ProtocolsListData) ifstr(i) $(ProtocolsListData) != "" ifstr(i) $(ProtocolsListData) == "IP" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES else-ifstr(i) $(ProtocolsListData) == "IPNOCM" set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(ProtocolsListData) == "IPIPX" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO else-ifstr(i) $(ProtocolsListData) == "IPX" set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif goto SkipSelectProto endif else set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO endif ;No network configured. ;Set default protocol selection ; to IP/IPX and move on. set RadioIn = { 3 } Debug-Output "OEMNPRNW.INF: no protocols exist. " ifstr(i) $(!NWSetup) != YES Debug-Output "OEMNPRNW.INF: RadioIn is (install): "$(RadioIn) ui start "INSTTP" $(NwLibHandle) ui pop 1 FreeLibrary $(NwLibHandle) ifstr(i) $(DLGEVENT) == "CONTINUE" set RadioSelected = *($(RadioOut), 1) Debug-Output "OEMNPRNW.INF: install type OK" Debug-Output "OEMNPRNW.INF: Radio Selected: "$(RadioSelected) ifstr(i) $(RadioSelected) == 1 set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(RadioSelected) == 2 set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES else-ifstr(i) $(RadioSelected) == 3 set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO else-ifstr(i) $(RadioSelected) == 4 set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif else Debug-Output "OEMNPRNW.INF: install type CANCEL" set CommonStatus = STATUS_USERCANCEL goto end endif endif endif endif SkipSelectProto = + ifstr(i) $(!InstallCompatMode) == YES set RasProtocolsKeyName = $(!NTN_SoftwareBase)"\Microsoft\RAS\PROTOCOLS" OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolsKeyName) $(MAXIMUM_ALLOWED) KeyRasProtocols ifstr $(KeyRasProtocols) != "" GetRegValue $(KeyRasProtocols) "fIpxSelected" IpxSelectedValue ifint $(RegLastError) == 0 set IpxSelectedVal = *($(IpxSelectedValue), 4) Debug-Output "OEMNPRNW.INF: IpxSelectedVal is "$(IpxSelectedVal) ifint $(IpxSelectedVal) == 1 ; ; RAS and NWCMD are not compatible. ; CloseRegKey $(KeyRasProtocols) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(IPOnlyMessageText) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end Endif Endif GetRegValue $(KeyRasProtocols) "fIpxAllowed" IpxAllowedValue ifint $(RegLastError) == 0 set IpxAllowedVal = *($(IpxAllowedValue), 4) ifint $(IpxAllowedVal) == 1 ; ; RAS and NWCMD are not compatible. ; CloseRegKey $(KeyRasProtocols) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(IPOnlyMessageText) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end Endif Endif CloseRegKey $(KeyRasProtocols) Endif Endif ifstr(i) $(!DO_TCPIP) != "NO" ; ; Install TCPIP if not already installed. ; shell "" Install-TCPIP ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ifstr(i) $(!DO_TCPIP) != "" ; goto fatal ; endif endif endif ifstr(i) $(!DO_NWLINK) != "NO" ; ; Install NWLINK if not already installed. Our client now depends ; on NWLINK. ; shell "" Install-NWLINK ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ifstr(i) $(!DO_NWLINK) != "" ; goto fatal ; endif endif endif set RemoveNWLINK = "NO" ifstr(i) $(!DO_NWLINK) == "NO" ifstr(i) $(!NWWizard) == YES set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Remove IPX" RemoveIPXList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set RemoveIPXListData = *($(RemoveIPXList), 4) ifint $(RemoveIPXListData) == 1 set RemoveNWLINK = "YES" endif endif CloseRegKey $(TempKey) endif else ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!RemoveIPXIfPresent) == "YES" set RemoveNWLINK = "YES" endif else OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NwLnkIpx" $(MAXIMUM_ALLOWED) KeyNWLINK ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(KeyNWLINK) ; ; Ask the user if they want to remove NWLINK ; set DlgType = "MessageBox" set STF_MB_TITLE = $(RemoveNWLinkMessageTitle) set STF_MB_TEXT = $(RemoveNWLinkMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 2 ui start "RemoveNWLINK" ifstr(i) $(DLGEVENT) == "YES" set RemoveNWLINK = "YES" endif endif endif endif endif ; ; Set bindings based on the protocols ; ifstr(i) $(!DO_NWLINK) != "NO" ; if doing IPX/SPX then bind to it set NetRuleNWFSSoftwareBindable = >($(NetRuleNWFSSoftwareBindable),"nwFileSys ipxTransport non non 100") endif ifstr(i) $(!DO_TCPIP) != "NO" ; if doing TCP/IP then bind to it set NetRuleNWFSSoftwareBindable = >($(NetRuleNWFSSoftwareBindable),"nwFileSys tcpipTransport non non 100") endif ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!DO_TCPIP) == "YES" Shell "" Install-TcpipBindings ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Install-TcpipBindings ShellCode error "$($ShellCode) goto ShellCodeError else Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Install-TcpipBindings returned error" goto fatalregistry endif endif endif endif ifstr(i) $(!NWACU) == "YES" set DoCopy = "YES" Debug-Output "OEMNPRNW.INF: InstallOption: DoCopy = "$(DoCopy) endif Ifstr(i) $(DoCopy) == "YES" ; ; Get source location ; Shell "", DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES Ifint $($ShellCode) != $(!SHELL_CODE_OK) Goto ShellCodeError Else-Ifstr(i) $($R0) == STATUS_FAILED Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) Goto fatal Else-Ifstr(i) $($R0) == STATUS_USERCANCEL Goto successful Endif Set SrcDir = $($R1) LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(SrcDir) ifstr(i) $(STATUS) != "ERROR" set SrcDir = $(STATUS) Endif Endif set OEM_ABANDON_ON = TRUE StartWait ; ; If updating files for local replica, then stop the service first ; ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" ifstr(i) $(DHOSTReplica) == "YES" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWStopService "NDS Server0" FreeLibrary $(NwLibHandle) endif endif endif ; ; Add the needed directories for files ; install "Install-NetWare-Dir" ; ; Copy all files to destination ; install "Install-Files" ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) goto fatal endif StartWait ; ; Install all enabled services mentioned in the ServiceNameList ; InstallEnabledServices = + ForListDo $(ServiceNameList) Set SvcOpt = $($) ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) != "YES" Ifcontains(i) $(SvcOpt) in $(SAMServiceNameList) ; skip all SAM only services goto skipservice endif endif endif ifstr(i) $(AdvancedServer) != "YES" ifstr(i) $(!InstallSAMRedir) != "YES" Ifcontains(i) $(SvcOpt) in $(SAMServiceNameList) ; skip all SAM only services goto skipservice endif endif endif ifstr(i) $(!DO_NWLINK) != "NO" ; if doing IPX/SPX ifstr(i) $(!DO_TCPIP) == "NO" ; and not doing TCP/IP Ifcontains(i) $(SvcOpt) in $(IPServiceNameList) ; skip all ip only services goto skipservice endif endif else Ifcontains(i) $(SvcOpt) in $(IPXServiceNameList) ; skip all ip only services goto skipservice endif endif ; ; Check to see if the product to be installed is already installed ; Set TempProductKeyName = $(!NTN_ServiceBase)"\"$(Product$(SvcOpt)Name) OpenRegKey $(!REG_H_LOCAL) "" $(TempProductKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OMENPRNW.INF: "$(SvcOpt)" is already installed" Set Do$(SvcOpt) = FALSE ifstr(i) $(Product$(SvcOpt)Name) == "SRVLOC" ; if SRVLOC already exists it might be incomplete GetRegValue $(TempKey) "ImagePath" ServiceImagePath CloseRegKey $(TempKey) ifstr(i) $(ServiceImagePath) == "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) $(MAXIMUM_ALLOWED) TempKey1 DeleteRegTree $(TempKey1) "SRVLOC" FlushRegKey $(TempKey1) CloseRegKey $(TempKey1) Set Do$(SvcOpt) = TRUE endif endif Endif Ifstr(i) $(Do$(SvcOpt)) == TRUE Ifstr(i) $(Product$(SvcOpt)Control) == component Debug-Output "OEMNPRNW.INF: install component: "$(SvcOpt) Shell $(UtilityInf), AddSoftwareComponent + $(Manufacturer), + $(Product$(SvcOpt)Name), + $(Product$(SvcOpt)Name), + $(Product$(SvcOpt)DisplayName), + "oemnprnw.inf", + $(Product$(SvcOpt)ImagePath), + $(Product$(SvcOpt)SvcType), + $(Product$(SvcOpt)Group), + $(Product$(SvcOpt)DependList), "" + $(Product$(SvcOpt)EventFile), "", "", 1 Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: AddSoftwareComponent ShellCode error "$($ShellCode)" installing "$(SvcOpt) EndWait goto ShellCodeError Endif StartWait Set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR EndWait CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) Debug-Output "OEMNPRNW.INF: Registry error "$(RegistryErrorIndex)" installing "$(SvcOpt) EndWait goto fatalregistry Endif Set SvcVersion = $($R1) Set SvcNetRules = $($R2) Set SvcSvcKey = $($R3) Set SvcParamKey = $($R4) Set SvcLinkKey = $($R5) ifint $(Product$(SvcOpt)ReviewBindings) == 1 Set ReviewBindingsValue = 1 else Set ReviewBindingsValue = 0 Endif Set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)SoftType)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(Product$(SvcOpt)Hidden)},+ {Review,$(NoTitle),$(!REG_VT_DWORD),$(ReviewBindingsValue)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)DisplayName)},+ {Description,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)DisplayName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)Name)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}} Shell $(UtilityInf), AddValueList, $(SvcVersion), $(NewValueList) StartWait Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: ShellCode error: AddValueList for version info for "$(SvcOpt) EndWait goto ShellCodeError Endif ; ; Add the NetRules info ; Set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareType)},+ {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRule$(SvcOpt)SoftwareClass)}, + {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRule$(SvcOpt)SoftwareBindable)}, + {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareUse)}, + {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareBindForm)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ),$(SvcOpt)}} Shell $(UtilityInf), AddValueList, $(SvcNetRules), $(NewValueList) StartWait Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: AddValueList ShellCode error = "$($ShellCode) EndWait Goto ShellCodeError Endif Set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR CloseRegKey $(SvcSvcKey) CloseRegKey $(SvcParamKey) CloseRegKey $(SvcLinkKey) CloseRegKey $(SvcVersion) CloseRegKey $(SvcNetRules) Debug-Output "OEMNPRNW.INF: Registry error adding NetRules to "$(SvcOpt) EndWait goto fatalregistry Endif Else Debug-Output "OEMNPRNW.INF: install service: "$(SvcOpt) Shell $(UtilityInf), CreateService, + $(Product$(SvcOpt)Name), + $(Product$(SvcOpt)DisplayName), + $(Product$(SvcOpt)ImagePath), + $(Product$(SvcOpt)SvcType), + $(Product$(SvcOpt)Group), + $(Product$(SvcOpt)DependList), "" + $(Product$(SvcOpt)EventFile), "", "", 1 StartWait Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: ShellCode error installing "$(SvcOpt) EndWait goto ShellCodeError Endif Set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) Debug-Output "OEMNPRNW.INF: Registry error installing "$(SvcOpt) EndWait goto fatalregistry Endif Set SvcVersion = "" Set SvcNetRules = "" Set SvcSvcKey = $($R1) Set SvcParamKey = $($R2) Set SvcLinkKey = $($R3) Endif ; ; Add the NetWare Instrumentation Level. ; Ifstr(i) $(Product$(SvcOpt)Instrumentation) == TRUE SetRegValue $(SvcParamKey) {"Instrumentation Level",$(NoTitle),$(!REG_VT_SZ),"NONE"} Endif ; ; Call the service-specific installation section ; Shell "" FinishInstalling-$(SvcOpt) + $(SvcSvcKey) $(SvcParamKey) $(SvcLinkKey) + $(SvcVersion) $(SvcNetRules) $(TransportSelected) StartWait Ifstr(i) $(SvcVersion) != "" CloseRegKey $(SvcVersion) Endif Ifstr(i) $(SvcNetRules) != "" CloseRegKey $(SvcNetRules) Endif CloseRegKey $(SvcSvcKey) CloseRegKey $(SvcParamKey) CloseRegKey $(SvcLinkKey) ; ; Add this service to the list of "undoable" things in case of failure ; Set OEM_ABANDON_SERVICES = >($(OEM_ABANDON_SERVICES), $(Product$(SvcOpt)Name)) Endif skipservice = + EndForListDo ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" ; Make certain that SpSentry is enabled (as it may become ; disabled after a reverse migrate) set SERVICE_NO_CHANGE = 4294967295 LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, "SpSentry" $(SERVICE_NO_CHANGE), 2, $(SERVICE_NO_CHANGE), "", "", "", "", "", "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWCheckSAMMigrated ifstr(i) $(GUIResult) != "TRUE" ; ; If not migrated, then set Max Connection Busy Timeout values ; Set TempKeyName = $(!NTN_ServiceBase)"\NetWareWorkstation\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Max Connection Busy Timeout" MaxConnBusyTOList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done set MaxConnBusyTOValue = *($(MaxConnBusyTOList), 4) SetRegValue $(TempKey) {"Max Connection Busy Timeout Temp", $(NoTitle), $(!REG_VT_DWORD), $(MaxConnBusyTOValue)} endif SetRegValue $(TempKey) {"Max Connection Busy Timeout", $(NoTitle), $(!REG_VT_DWORD), 0} CloseRegKey $(TempKey) endif endif endif endif Ifstr(i) $(CalledFromUpdate) == "YES" goto ReturnToUpdate endif ; ; Setup the new login parameters ; Install "Install-Login" ; ; Add different various parameters to the system ; Shell $(SrcDir)"nls\"$(NLSDirName)"\nwbldnum.inf" ReadBuildNumber set BuildNumber = $($R0) Install "Install-Parameters" ; ; Install the NetWare Gina dll. ; shell "" Install-Gina ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ; Set common status and exit ; set CommonStatus = $($R0) goto setfailed endif ; ; Install our help files in the NT help ; Install "Install-Help" ; ; Install the NetWare Performance Counters. ; Install "Install-PerformanceCounters" ; ; Install the Winsock Name Space Providers. ; Install "Install-Winsock" ; ; Add the NetWare group and icons to desktop ; install "Install-NetWare-Group" ifstr(i) $(ActiveDirectoryInstalled) == YES Debug-Output "OEMNPRNW.INF: rundll32 with adsnnds.inf for install" RunProgram ExitCode $(LoadDisk1Text) "" $(!STF_WINDOWSSYSPATH)"\rundll32.exe" "setupapi,InstallHinfSection DefaultInstall 132 adsnnds.inf" Debug-Output "OEMNPRNW.INF: back from rundll32 with adsnnds.inf for install" endif Debug-Output "OEMNPRNW.INF: adding NetWareIP" ; ; Add NetWareIP if the user wants ; shell "" Install-NetWareIP ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL goto fatal endif ; ; Add Compatibility Mode if the user wants ; shell "" Install-NWCMD ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL goto fatal endif ; ; Add the extended function stuff ; ForListDo $(ExtendedFunctionList) Shell "" InstallEx-$($) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: ExtendedFunctionFailedMessage is "$(ExtendedFunctionFailedMessage) set Error = $(ExtendedFunctionFailedMessage) goto fatal endif StartWait EndForListDo ; ; Set SAM Redirection info ; ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" Debug-Output "OEMNPRNW.INF: adding SAM Redirection" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWCheckSAMMigrated ifstr(i) $(GUIResult) != "TRUE" ; ; If not migrated, then auto launch the migrate ; set TempRegKeyName = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" OpenRegKey $(!REG_H_CUSER) "" $(TempRegKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_CUSER) {$(TempRegKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Failed to create Windows key for SAM Migration utility" goto migerror1 ; if error, then done endif endif set CommandLine = $(!STF_WINDOWSSYSPATH)"\sammig.exe" set RunValue = "" GetRegValue $(TempKey) "run" RunList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set RunValue = *($(RunList), 4) Split-string $(RunValue) " ," SplitRunList ifcontains(i) $(CommandLine) in $(SplitRunList) goto migerror1 endif ifstr(i) $(RunValue) != "" set RunValue = $(RunValue)" " endif endif set NewRunValue = $(RunValue)$(CommandLine) SetRegValue $(TempKey) {"run", $(NoTitle), $(!REG_VT_SZ), $(NewRunValue)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Run for SAM Migration utility" endif CloseRegKey $(TempKey) migerror1 = + endif FreeLibrary $(NwLibHandle) Shell "" AddServiceDependency "LanmanServer" "NetWareWorkstation" endif endif LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWSetEnvVar NWLANGUAGE $(NLSDirName) ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axcred.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axcrednt.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axnds.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axbndry.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axscript.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axdialup.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\loginsvc.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axprf.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\connsvc.dll" ; LibraryProcedure GUIResult $(NwLibHandle) NWSetKeySecurity "Software\Novell\Login\TabInfo" "ON" ; Turning this OFF causes 20 min delay during install ; LibraryProcedure GUIResult $(NwLibHandle) NWSetKeySecurity "Software\Novell\Login\TabInfo" "OFF" FreeLibrary $(NwLibHandle) ifstr(i) $(RemoveNWLINK) == "YES" shell "" Remove-NWLINK ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif Shell $(UtilityInf), RemoveService, "NWSIPX32", YES Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: ShellCode error removing NWSIPX32." goto ShellCodeError endif endif ; ; Write out the unattended variables to registry ; shell "" Write-Unattended-Variables ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: User Canceled due to a error processing the Unattended Variables." set CommonStatus = STATUS_USERCANCEL goto setfailed endif goto successful ;----------------------------------------------- ; Configure Browser section ;----------------------------------------------- configurenetware = + Debug-Output "OEMNPRNW.INF: Configure NetWare "$(!NTN_RegBase) set CommonStatus = STATUS_USERCANCEL LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\setupnw.hlp" $(!MinimumID) $(!MaximumID) Ifstr(i) $(!NTN_RegBase) == $(ProductNWFSKeySoftware) ; ; Configure the NetWare Workstation. ; StartWait set HelpContext = $(IDH_NETWAREWRKSTATIONPARMS) LibraryProcedure LibResult $(NwLibHandle) NWConfigure $(Option) ifstr(i) $(LibResult) == "CONTINUE" Set CommonStatus = STATUS_REBOOT endif Endif FreeLibrary $(NwLibHandle) goto successful ;----------------------------------------------- ; Binding section ;----------------------------------------------- bindnetware =+ ; ; Find what NLS directory is being used ; set NovellParameters = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(NovellParameters) $(MAXIMUM_ALLOWED) KeyNovellParameters ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(KeyNovellParameters) "NWLanguage" NWLanguageList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ValueType = *($(NWLanguageList), 3) ifstr(i) $(ValueType) == $(!REG_VT_SZ) set NLSDirName = *($(NWLanguageList), 4) else-ifstr(i) $(ValueType) == $(!REG_VT_MULTI_SZ) set LanguageList = *($(NWLanguageList), 4) set NLSDirName = *($(LanguageList), 1) SetRegValue $(KeyNovellParameters) {"NWLanguage", $(NoTitle), $(!REG_VT_SZ), $(NLSDirName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add NWLanguage value to "$(SoftwareNovell)"\Parameters" endif endif LoadLibrary $(LoadDisk2Text) $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nwsetupr.dll" NwLibHandle ; SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\setupnw.hlp" $(!MinimumID) $(!MaximumID) else goto fatalregistry endif CloseRegKey $(KeyNovellParameters) else goto fatalregistry Endif Shell $(NwSubsInf) GetTotalAdapterList Set OdiProductNameList = $($R0) Set OdiTitleList = $($R1) Set OdiCardList = $($R2) Set NumberOdiAdapters = $($R3) Set NdisProductNameList = $($R4) Set NdisTitleList = $($R5) Set NdisCardList = $($R6) Set NumberNdisAdapters = $($R7) Set ODINSUPCardNumber = $($R8) Set NetWareIPCardNumList = $($R9) Set NumberNetWareIPAdapters = $($R10) Set NWCMDCardNumList = $($R11) Set NumberNWCMDAdapters = $($R12) ; ; Is there a ODI driver installed? ; ifint $(NumberOdiAdapters) > 0 Debug-Output "Found Odi Adapters" ; ; Set the group order to follow ; Set GroupOrderToFollow = "file system" Else-ifint $(NumberNdisAdapters) > 0 Debug-Output "Found NDIS Adapters" ; ; Set the group order to follow ; Set GroupOrderToFollow = "NDIS" Else Debug-Output "Found no Adapters" ; ; Set the group order to follow ; Set GroupOrderToFollow = "file system" ; ; Checking to see if RAS is installed. ; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\RemoteAccess" $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; ; Can't find RAS either. ; Let the user know that there are not any LAN or WAN adapters ; set DlgType = "MessageBox" set STF_MB_TITLE = $(NoLanAdapterInstalledTitle) set STF_MB_TEXT = $(NoLanAdapterInstalledText) set STF_MB_TYPE = 1 set STF_MB_ICON = 2 set STF_MB_DEF = 1 ui start "NoAdapter" else CloseRegKey $(TempKey) Endif Endif ifint $(NumberNetWareIPAdapters) > 0 Debug-Output "Found NetWareIP Adapters" ; ; Set the group order to follow ; Set GroupOrderToFollow = "file system" ifstr(i) $(AdvancedServer) == "YES" ; ;Force networknumber to 0 ; set KeyNull = "" set TempKeyName = $(!NTN_ServiceBase)"\NwlnkIpx\NetConfig" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) KeyNWLNKIPXNetConfig Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) EnumRegKey $(KeyNWLNKIPXNetConfig) DriverList ForListDo $(DriverList) set DriverName = *($($),1) Debug-Output "OEMNPRNW.INF: Driver is "$(DriverName) OpenRegKey $(KeyNWLNKIPXNetConfig) "" $(DriverName) $(MAXIMUM_ALLOWED) Driver ifstr $(Driver) == $(KeyNull) Debug-Output "OEMNPRNW.INF: could not open key NWLnkIpx\NetConfig\"$(DriverName) CloseRegKey $(KeyNWLNKIPXNetConfig) Endif SetRegValue $(Driver) {"PktType", $(NoTitle), $(!REG_VT_MULTI_SZ), {"ff"}} SetRegValue $(Driver) {"NetworkNumber", $(NoTitle), $(!REG_VT_MULTI_SZ), {}} CloseRegKey $(Driver) EndForListDo CloseRegKey $(KeyNWLNKIPXNetConfig) Else Debug-Output "***OEMNPRNW.INF: error opening NWLnkIpx\NetConfig key" Endif endif endif ifint $(NumberNWCMDAdapters) > 0 Debug-Output "Found Compatibility Mode Adapters" ; ; Set the group order to follow ; Set GroupOrderToFollow = "file system" ifstr(i) $(AdvancedServer) == "YES" ; ;Force networknumber to 0, frametype to autodetect ; set KeyNull = "" set TempKeyName = $(!NTN_ServiceBase)"\NwlnkIpx\NetConfig" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) KeyNWLNKIPXNetConfig Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) EnumRegKey $(KeyNWLNKIPXNetConfig) DriverList ForListDo $(DriverList) set DriverName = *($($),1) Debug-Output "OEMNPRNW.INF: Driver is "$(DriverName) OpenRegKey $(KeyNWLNKIPXNetConfig) "" $(DriverName) $(MAXIMUM_ALLOWED) Driver ifstr $(Driver) == $(KeyNull) Debug-Output "OEMNPRNW.INF: could not open key NWLnkIpx\NetConfig\"$(DriverName) CloseRegKey $(KeyNWLNKIPXNetConfig) Endif SetRegValue $(Driver) {"PktType", $(NoTitle), $(!REG_VT_MULTI_SZ), {"ff"}} SetRegValue $(Driver) {"NetworkNumber", $(NoTitle), $(!REG_VT_MULTI_SZ), {}} CloseRegKey $(Driver) EndForListDo CloseRegKey $(KeyNWLNKIPXNetConfig) Else Debug-Output "***OEMNPRNW.INF: error opening NWLnkIpx\NetConfig key" Endif endif endif ; ; Check to see if mup has been marked for delete. ; Set TempKeyName = $(!NTN_ServiceBase)"\Mup" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleting the delete flag for mup" DeleteRegValue $(TempKey) "DeleteFlag" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete Mups Delete Flag" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open "$(TempKeyName) endif ; ; Set the group Order ; Shell $(NwSubsInf) InstallEx-ServiceGroupOrder $(GroupOrderToFollow) $(SvcList) Ifstr(i) $($R0) != NO_ERROR set CommonStatus = STATUS_NO_EFFECT Endif FreeLibrary $(NwLibHandle) goto end ;----------------------------------------------- ; Removenetware section ;----------------------------------------------- removenetware = + StartWait LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; ; Remove the SAM Redirection changes made to server ; ifstr(i) $(AdvancedServer) == "YES" Set TempKeyName = $(!NTN_ServiceBase)"\LanmanServer" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "DependOnService" ValueData Set ValueList = *($(ValueData), 4) CloseRegKey $(TempKey) ifcontains(i) "NetWareWorkstation" in $(ValueList) ; ; if SAM has been migrated, warn the user ; LibraryProcedure GUIResult $(NwLibHandle) NWCheckSAMMigrated ifstr(i) $(GUIResult) == "TRUE" set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = $(RemoveSAMMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL FreeLibrary $(NwLibHandle) goto end endif StartDetachedProcess ExitCode "" "" $(!STF_WINDOWSSYSPATH)"\sammig.exe" set CommonStatus = STATUS_USERCANCEL FreeLibrary $(NwLibHandle) goto end else LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" ifstr(i) $(Status1) == "YES" Debug-Output "OEMNPRNW.INF: renaming mssamsrv.dll to samsrv.dll" LibraryProcedure GUIResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" LibraryProcedure GUIResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" $(!STF_WINDOWSSYSPATH)"\samsrv.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" endif endif Shell "" RemoveServiceDependency "LanmanServer" "NetWareWorkstation" Debug-Output "OEMNPRNW.INF: deleting files for SAM redirection" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwsamsrv.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\sammig.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\ndssrch.avi" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nt2nds.avi" Debug-Output "OEMNPRNW.INF: deleting run entry for sammig (if there)" set TempRegKeyName = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" OpenRegKey $(!REG_H_CUSER) "" $(TempRegKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no new key set CommandLine = $(!STF_WINDOWSSYSPATH)"\sammig.exe" GetRegValue $(TempKey) "run" RunList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set RunValue = *($(RunList), 4)" " Split-string $(RunValue) " ," SplitRunList ifcontains(i) $(CommandLine) in $(SplitRunList) set NewRunValue = "" ForListDo $(SplitRunList) ifstr(i) $($) != $(CommandLine) Set NewRunValue = $(NewRunValue)$($) Endif EndForListDo SetRegValue $(TempKey) {"run", $(NoTitle), $(!REG_VT_SZ), $(NewRunValue)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to remove Run for SAM Migration utility" endif endif endif CloseRegKey $(KeyNovellParameters) Endif Endif Endif ; ; Remove NDS for NT Management Utilities, if installed ; set UninstallADM = $(!NTN_SoftwareBase)"\Microsoft\Windows\CurrentVersion\Uninstall\NDS for NT Management Utilities" OpenRegKey $(!REG_H_LOCAL) "" $(UninstallADM) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "UninstallString" UninstallList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set UninstallListData = *($(UninstallList), 4) Split-string $(UninstallListData) " " SplitUninstallList Set UninstallExe = *($(SplitUninstallList), 1) Set UninstallParam = *($(SplitUninstallList), 3) RunProgram ExitCode $(LoadDisk3Text) "" $(UninstallExe) $(UninstallParam) endif CloseRegKey $(TempKey) endif ; ; Remove the 'NDS for NT' from the Add/Remove icon. ; OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows\CurrentVersion\Uninstall" $(MAXIMUM_ALLOWED) KeyUninstall Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegTree $(KeyUninstall) "NDS4NT" CloseRegKey $(KeyUninstall) Else Debug-Output "OEMNPRNW.INF: Delete NDS4NT, Can't open Uninstall" Endif Endif ifstr(i) $(NLSDirName) == "" Set NLSDirName = $(OldNLSDirName) endif LibraryProcedure GUIResult $(NwLibHandle) NWSetEnvVar NWLANGUAGE $(NLSDirName) ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axcred.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axcrednt.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axnds.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axbndry.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axscript.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axdialup.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\loginsvc.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axprf.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\connsvc.dll" Set TempKeyName = $(!NTN_ServiceBase)"\NWCMD" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvcm.inf" InstallOption, $(!STF_LANGUAGE), "NWCMD", "", "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVCM.INF to deinstall NWCMD" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\CPROXY" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnxpgw.inf" InstallOption, $(!STF_LANGUAGE), "CPROXY", $(SrcDir), "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNXPGW.INF to deinstall IP Gateway" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\NTTSA" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvts.inf" InstallOption, $(!STF_LANGUAGE), "NTTSA", $(SrcDir), "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVTS.INF to deinstall TSA" endif endif Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NDPS" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvnp.inf" InstallOption, $(!STF_LANGUAGE), "NDPS", $(SrcDir), "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVNP.INF to deinstall NDPS" endif endif Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\ZENWorks" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Version" ZENWorksVersion ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) goto SkipRemovalOfZENWorksComponents endif CloseRegKey $(TempKey) endif Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\WM" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvwm.inf" InstallOption, $(!STF_LANGUAGE), "WM", $(SrcDir), "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVWM.INF to deinstall WM" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\NALNTSERVICE" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvns.inf" InstallOption, $(!STF_LANGUAGE), "NALNTSRV", "", "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVNS.INF to deinstall NALNTSRV" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\Novell WUser Agent" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvwa.inf" InstallOption, $(!STF_LANGUAGE), "WUA", "", "NO", "NO", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVWA.INF to deinstall Remove Control Agent" endif endif SkipRemovalOfZENWorksComponents = + ; ; Remove NwlnkIpx binding to NWCMDDriver. ; Add back binding to ndisDriver ; ifstr(i) $(AdvancedServer) == "YES" Shell "" Remove-TcpipBindings ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Remove-TcpipBindings ShellCode error "$($ShellCode) FreeLibrary $(NwLibHandle) goto ShellCodeError else Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Remove-TcpipBindings returned error" goto fatalregistry endif endif endif ; ; Remove the Winsock Name Space Providers. ; Install "Remove-Winsock" ; ; Remove files and registry settings ; ifstr(i) $(AdvancedServer) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveClient else LibraryProcedure GUIResult $(NwLibHandle) NWCleanUpNetWare endif ; ; Remove the group that gets created on the desktop ; install Remove-NetWare-Group ifstr(i) $(ActiveDirectoryInstalled) == YES Debug-Output "OEMNPRNW.INF: rundll32 with adsnnds.inf for uninstall" RunProgram ExitCode $(LoadDisk1Text) "" $(!STF_WINDOWSSYSPATH)"\rundll32.exe" "setupapi,InstallHinfSection Uninstall 4 adsnnds.inf" Debug-Output "OEMNPRNW.INF: back from rundll32 with adsnnds.inf for uninstall" endif ; ; Remove any persistent network mappings for the Novell NetWare client ; Debug-Output "OEMNPRNW.INF: Remove persistent network mappings" EnumRegKey $(!REG_H_USERS) UsersList ForListDo $(UsersList) set User = *($($),1) Debug-Output "OEMNPRNW.INF: User is "$(User) OpenRegKey $(!REG_H_USERS) "" $(User)"\Network" $(MAXIMUM_ALLOWED) UserNetworkKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) EnumRegKey $(UserNetworkKey) MapList ForListDo $(MapList) set Map = *($($),1) Debug-Output "OEMNPRNW.INF: Persistent Map is "$(Map) set NovellMap = FALSE OpenRegKey $(UserNetworkKey) "" $(Map) $(MAXIMUM_ALLOWED) MapKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(MapKey) "ProviderName" ProviderList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ProviderData = *($(ProviderList), 4) ifstr(i) $(ProviderData) == "NetWare Services" set NovellMap = TRUE endif endif CloseRegKey $(MapKey) Endif Ifstr(i) $(NovellMap) == "TRUE" DeleteRegTree $(UserNetworkKey) $(Map) Debug-Output "OEMNPRNW.INF: Deleted persistent mapping to NetWare Services for "$(User)"\"$(Map) endif EndForListDo CloseRegKey $(UserNetworkKey) Endif EndForListDo FreeLibrary $(NwLibHandle) goto end ;----------------------------------------------- ; Upgrade Software section ;----------------------------------------------- updatenetware = + StartWait ; ; Assume all is well ; set CommonStatus = STATUS_SUCCESSFUL ; ; Mark for no upgrade allowed by default ; Set CanUpgrade = "NO" ; ; Check the current version. Allow upgrade if current version is equal ; to or greater than installed version. ; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\"$(Manufacturer) $(MAXIMUM_ALLOWED) SoftwareNovell Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(SoftwareNovell) "CurrentVersion" VersionList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set VersionListData = *($(VersionList), 4) Split-string $(VersionListData) "." SplitVersionList Set NWMajorVersion = *($(SplitVersionList), 1) Set NWMinorVersion = *($(SplitVersionList), 3) Debug-OutPut "Installed NetWare Client version is "$(VersionListData) Debug-OutPut "Installed NetWare Client Major version is "$(NWMajorVersion) Debug-OutPut "Installed NetWare Client Minor version is "$(NWMinorVersion) ifint $(ProductMajorVersion) == $(NWMajorVersion) ifint $(ProductMinorVersion) >= $(NWMinorVersion) set CanUpgrade = "YES" endif else ifint $(ProductMajorVersion) > $(NWMajorVersion) set CanUpgrade = "YES" endif endif else Debug-Output "OEMNPRNW.INF: Error getting NetWare Client version" endif CloseRegKey $(SoftwareNovell) Endif ; ; Temporarily disable upgrade if needed ; ; set CanUpgrade = "NO" ; ; Check the upgrade flag to see if upgrade allowed. ; ifstr(i) $(CanUpgrade) == "NO" Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(UpgradeButtonMessage) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end endif ; ; Check free disk space on system drive ; shell "" CheckSystemDriveSpace $(SrcDir) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL set CommonStatus = STATUS_USERCANCEL goto end endif LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(SrcDir) ifstr(i) $(STATUS) != "ERROR" set SrcDir = $(STATUS) Endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion\NetRules" $(MAXIMUM_ALLOWED) SoftwareNovell Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(SoftwareNovell) "InfName" CurrentName Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set !UG_Filename = *($(CurrentName), 4) Endif CloseRegKey $(SoftwareNovell) Endif ; ; Check for ODI Drivers ; Shell $(NwSubsInf) GetTotalAdapterList Set OdiProductNameList = $($R0) Set OdiTitleList = $($R1) Set OdiCardList = $($R2) Set NumberOdiAdapters = $($R3) Set NdisProductNameList = $($R4) Set NdisTitleList = $($R5) Set NdisCardList = $($R6) Set NumberNdisAdapters = $($R7) Set ODINSUPCardNumber = $($R8) Set NetWareIPCardNumList = $($R9) Set NumberNetWareIPAdapters = $($R10) ; ; If NWIP is installed, check to see if they are using the ; old NWIP.SYS. ; set RemovedNWIP = 0 Set TempKeyName = $(!NTN_ServiceBase)"\NWIP" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Old NWIP installed. Must remove it." CloseRegKey $(TempKey) ; ; Save NWIP parameters ; Set TempKeyName = $(!NTN_ServiceBase)"\NWIP\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set DomainName = "" set Compatibility = "" set AutoRetries = "" set AutoRetrySecs = "" set NSQBroadcast = "" set NearestIPServer = {} set PreferredDSS = {} GetRegValue $(TempKey) "NetWare/IP Domain" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set DomainName = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP DomainName" endif GetRegValue $(TempKey) "1.1Compatibility" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Compatibility = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP 1.1 Compatibility" endif GetRegValue $(TempKey) "AutoRetries" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set AutoRetries = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP AutoRetries" endif GetRegValue $(TempKey) "AutoRetry Secs" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set AutoRetrySecs = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP AutoRetry Secs" endif GetRegValue $(TempKey) "NSQ Broadcast" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set NSQBroadcast = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP NSQ Broadcast" endif GetRegValue $(TempKey) "Nearest NetWare/IP Server" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set NearestIPServer = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP Nearest NetWare/IP Server" endif GetRegValue $(TempKey) "Preferred DSS" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set PreferredDSS = *($(KeyValueList), 4) else Debug-Output "OEMNPRNW.INF: Failed to get NWIP Preferred DSS" endif CloseRegKey $(TempKey) Debug-Output "OEMNPRNW.INF: DomainName = "$(DomainName) Debug-Output "OEMNPRNW.INF: Compatibility = "$(Compatibility) Debug-Output "OEMNPRNW.INF: AutoRetries = "$(AutoRetries) Debug-Output "OEMNPRNW.INF: AutoRetrySecs = "$(AutoRetrySecs) Debug-Output "OEMNPRNW.INF: NSQBroadcast = "$(NSQBroadcast) Debug-Output "OEMNPRNW.INF: NearestIPServer = "$(NearestIPServer) Debug-Output "OEMNPRNW.INF: PreferredDSS = "$(PreferredDSS) ; ; Set a global varible that the installation of NetWareIP can look ; at later to see if it needs to pop-up the property sheets to ; configure NetWareIP at that point. Since we saved the parameters ; from the old installation of NWIP, set the variable. ; set !HaveNetWareIPParameters = "YES" else Debug-Output "OEMNPRNW.INF: Failed to open key "$(!NTN_ServiceBase)"\NWIP\Parameters" endif ; ; Call old NWIP inf file to remove NWIP ; set OldInstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = deinstall Shell "oemnsvip.inf" InstallOption, $(!STF_LANGUAGE), "NWIP", "", "YES", "YES", "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set !NTN_InstallMode = $(OldInstallMode) ; ; set flag so message will be displayed at end of upgrade ; set RemovedNWIP = 1 endif ifstr(i) $(!DO_TCPIP) == "" ifstr(i) $(!DO_NWLINK) == "" LoadLibrary $(LoadDisk2Text) $(LibDir)"nls\"$(NLSDirName)"\nwsetupr.dll" NwLibHandle ; SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\setupnw.hlp" $(!MinimumID) $(!MaximumID) read-syms InstallType$(!STF_LANGUAGE) ifstr(i) $(!NWWizard) != YES ifint $(NWMajorVersion) == "4" ifint $(NWMinorVersion) <= "30" ;We're upgrading from pre-MOAB. ;Set default protocol selection ; to IP/IPX and move on. Debug-Output "OEMNPRNW.INF: Pre-moab, default to IP/IPX" set RadioIn = { 3 } set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO goto SelectProto2 endif endif endif Debug-Output "OEMNPRNW.INF: !NWWizard = "$(!NWWizard) ifstr(i) $(!NWWizard) == YES set ProtocolsListData = "" set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Protocols" ProtocolsList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ProtocolsListData = *($(ProtocolsList), 4) endif CloseRegKey $(TempKey) endif Debug-Output "OEMNPRNW.INF: ProtocolsListData = "$(ProtocolsListData) ifstr(i) $(ProtocolsListData) != "" ifstr(i) $(ProtocolsListData) == "IP" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES else-ifstr(i) $(ProtocolsListData) == "IPNOCM" set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(ProtocolsListData) == "IPIPX" set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO else-ifstr(i) $(ProtocolsListData) == "IPX" set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif goto SkipSelectProto2 endif else set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO endif Set ipxProtocol = FALSE Set tcpipProtocol = FALSE Set bothProtocols = FALSE OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Novell\NetWareWorkstation\CurrentVersion\NetRules" $(MAXIMUM_ALLOWED) KeyNWWorkstation Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(KeyNWWorkstation) "Bindable" ValueData Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set ValueList = *($(ValueData), 4) Set FindValue = "nwFileSys ipxTransport non non 100" Ifcontains(i) $(FindValue) in $(ValueList) Set ipxProtocol = TRUE else Debug-Output "OEMNPRNW.INF: ipxTransport ... does not exist. " Endif Set FindValue = "nwFileSys tcpipTransport non non 100" Ifcontains(i) $(FindValue) in $(ValueList) Set tcpipProtocol = TRUE else Debug-Output "OEMNPRNW.INF: tcpipTransport ... does not exist. " Endif Endif CloseRegKey $(KeyNWWorkstation) Endif ifstr(i) $(ipxProtocol) == FALSE ifstr(i) $(tcpipProtocol) == FALSE ;No network configured. ;Set default protocol selection ; to IP/IPX and move on. set RadioIn = { 3 } Debug-Output "OEMNPRNW.INF: no protocols exist. " goto SelectProto2 endif endif ifstr(i) $(ipxProtocol) == TRUE ifstr(i) $(tcpipProtocol) == TRUE set bothProtocols = TRUE Debug-Output "OEMNPRNW.INF: both protocols exist. " endif endif ifstr(i) $(bothProtocols) == TRUE ;Both IP and IPX are configured. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWCMD" $(MAXIMUM_ALLOWED) KeyProduct ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ;Set default Protocol selection ; to IP only if NWCMD is installed. Debug-Output "OEMNPRNW.INF: Based on previous install use IP with CMD" set RadioIn = { 2 } set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES CloseRegKey $(KeyProduct) else ;Set default Protocol selection ; to IP/IPX. Debug-Output "OEMNPRNW.INF: Based on previous install use IP/IPX" set RadioIn = { 3 } set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO endif else-ifstr(i) $(tcpipProtocol) == TRUE ;Set default Protocol selection ; to IP only. Debug-Output "OEMNPRNW.INF: Based on previous install use IP Only" set RadioIn = { 1 } set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(ipxProtocol) == TRUE ;Set default Protocol selection ; to IPX only. Debug-Output "OEMNPRNW.INF: Based on previous install use IPX" set RadioIn = { 4 } set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif SelectProto2 = + ifstr(i) $(!NWSetup) != YES Debug-Output "OEMNPRNW.INF: RadioIn is (install): "$(RadioIn) ui start "INSTTP" $(NwLibHandle) ui pop 1 FreeLibrary $(NwLibHandle) ifstr(i) $(DLGEVENT) == "CONTINUE" set RadioSelected = *($(RadioOut), 1) Debug-Output "OEMNPRNW.INF: install type OK" Debug-Output "OEMNPRNW.INF: Radio Selected: "$(RadioSelected) ifstr(i) $(RadioSelected) == 1 set !DO_TCPIP = YES set !DO_NWLINK = NO set !InstallCompatMode = NO else-ifstr(i) $(RadioSelected) == 2 set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = YES else-ifstr(i) $(RadioSelected) == 3 set !DO_TCPIP = YES set !DO_NWLINK = YES set !InstallCompatMode = NO else-ifstr(i) $(RadioSelected) == 4 set !DO_TCPIP = NO set !DO_NWLINK = YES set !InstallCompatMode = NO endif else Debug-Output "OEMNPRNW.INF: install type CANCEL" set CommonStatus = STATUS_USERCANCEL goto end endif endif endif endif SkipSelectProto2 = + ; ifstr(i) $(!InstallCompatMode) == YES ; ; ; ; Check whether NetWareIP is installed (and not doing an unattended install ; ; ; ifstr(i) $(!NWUnattendedFile) == "" ; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NetWareIP" $(MAXIMUM_ALLOWED) KeyProduct ; ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; ; ; ; Cannot install NWCMD while NetWareIP is installed. ; ; ; ; CloseRegKey $(KeyProduct) ; ; Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(NWIPInstalledMessage) ; ; ifint $($ShellCode) != $(!SHELL_CODE_OK) ; goto ShellCodeError ; endif ; ; set CommonStatus = STATUS_USERCANCEL ; goto end ; endif ; endif ; endif ifstr(i) $(!InstallCompatMode) == YES set RasProtocolsKeyName = $(!NTN_SoftwareBase)"\Microsoft\RAS\PROTOCOLS" OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolsKeyName) $(MAXIMUM_ALLOWED) KeyRasProtocols ifstr $(KeyRasProtocols) != "" GetRegValue $(KeyRasProtocols) "fIpxSelected" IpxSelectedValue ifint $(RegLastError) == 0 set IpxSelectedVal = *($(IpxSelectedValue), 4) Debug-Output "OEMNSVCM.INF: IpxSelectedVal is "$(IpxSelectedVal) ifint $(IpxSelectedVal) == 1 ; ; RAS and NWCMD are not compatible. ; CloseRegKey $(KeyRasProtocols) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(IPOnlyMessageText) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end Endif Endif GetRegValue $(KeyRasProtocols) "fIpxAllowed" IpxAllowedValue ifint $(RegLastError) == 0 set IpxAllowedVal = *($(IpxAllowedValue), 4) ifint $(IpxAllowedVal) == 1 ; ; RAS and NWCMD are not compatible. ; CloseRegKey $(KeyRasProtocols) Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(IPOnlyMessageText) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set CommonStatus = STATUS_USERCANCEL goto end Endif Endif CloseRegKey $(KeyRasProtocols) Endif Endif ifstr(i) $(!DO_TCPIP) != "NO" ; ; Install TCPIP if not already installed. ; shell "" Install-TCPIP ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ifstr(i) $(!DO_TCPIP) != "" ; goto fatal ; endif endif endif ifstr(i) $(!DO_NWLINK) != "NO" ; ; Install NWLINK if not already installed. Our client now depends ; on NWLINK. ; shell "" Install-NWLINK ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ifstr(i) $(!DO_NWLINK) != "" ; goto fatal ; endif endif endif set RemoveNWLINK = "NO" ifstr(i) $(!DO_NWLINK) == "NO" ifstr(i) $(!NWWizard) == YES set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Remove IPX" RemoveIPXList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set RemoveIPXListData = *($(RemoveIPXList), 4) ifint $(RemoveIPXListData) == 1 set RemoveNWLINK = "YES" endif endif CloseRegKey $(TempKey) endif else ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!RemoveIPXIfPresent) == "YES" set RemoveNWLINK = "YES" endif else OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NwLnkIpx" $(MAXIMUM_ALLOWED) KeyNWLINK ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(KeyNWLINK) ; ; Ask the user if they want to remove NWLINK ; set DlgType = "MessageBox" set STF_MB_TITLE = $(RemoveNWLinkMessageTitle) set STF_MB_TEXT = $(RemoveNWLinkMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 2 ui start "RemoveNWLINK" ifstr(i) $(DLGEVENT) == "YES" set RemoveNWLINK = "YES" endif endif endif endif endif ; ; Set bindings based on the protocols ; ifstr(i) $(!DO_NWLINK) != "NO" ; if doing IPX/SPX then bind to it set NetRuleNWFSSoftwareBindable = >($(NetRuleNWFSSoftwareBindable),"nwFileSys ipxTransport non non 100") endif ifstr(i) $(!DO_TCPIP) != "NO" ; if doing TCP/IP then bind to it set NetRuleNWFSSoftwareBindable = >($(NetRuleNWFSSoftwareBindable),"nwFileSys tcpipTransport non non 100") endif ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!DO_TCPIP) == "YES" Shell "" Install-TcpipBindings ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Install-TcpipBindings ShellCode error "$($ShellCode) goto ShellCodeError else Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Install-TcpipBindings returned error" goto fatalregistry endif endif endif endif ; ; Create directories for language dependent files ; install "Install-NetWare-Dir" ; ; Copy all files to destination ; set AddCopy = "YES" set DoCopy = "YES" Install "Install-Files" ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) goto fatal endif set AddCopy = $(OriginalAddCopy) set DoCopy = $(OriginalDoCopy) StartWait ; ; Create the NetWare group and icons ; install "Install-NetWare-Group" ; ; Fixup Registry tree ; Set TempKeyNameSrc = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Workstation Manager\Location Profiles" Set TempKeyNameDstBase = $(!NTN_SoftwareBase)"\"$(Manufacturer) Set TempKeyNameDst = "Location Profiles" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyNameSrc) $(MAXIMUM_ALLOWED) TempKeySrc OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyNameDstBase) $(MAXIMUM_ALLOWED) TempKeyDstBase Ifstr(i) $(TempKeySrc) != $(KeyNull) Shell $(UtilityInf) CopyRegTreeAs $(TempKeySrc) $(TempKeyDstBase) $(TempKeyNameDst) CloseRegKey $(TempKeySrc) CloseRegKey $(TempKeyDstBase) DeleteRegTree $(!REG_H_LOCAL) $(TempKeyNameSrc) Endif ; ; Setup the new login parameters ; Install "Install-Login" ; ; Add different various parameters to the system ; Shell $(SrcDir)"nls\"$(NLSDirName)"\nwbldnum.inf" ReadBuildNumber set BuildNumber = $($R0) Install "Install-Parameters" ; ; Install the NetWare Gina dll. ; shell "" Install-Gina ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; ; Set common status and exit ; set CommonStatus = $($R0) goto setfailed endif ; ; Install our help files in the NT help ; Install "Install-Help" ; ; Remove and re-install the Winsock Name Space Providers. ; Install "Remove-Winsock" Install "Install-Winsock" ifstr(i) $(ActiveDirectoryInstalled) == YES Debug-Output "OEMNPRNW.INF: rundll32 with adsnnds.inf for update" RunProgram ExitCode $(LoadDisk1Text) "" $(!STF_WINDOWSSYSPATH)"\rundll32.exe" "setupapi,InstallHinfSection DefaultInstall 132 adsnnds.inf" Debug-Output "OEMNPRNW.INF: back from rundll32 with adsnnds.inf for update" endif ; ; Load our NWSETUP.DLL library ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; ; Novell.cpl changed to Nwcpl.cpl so delete old name. ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\novell.cpl" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\novellr.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwcpl.cpl" ; ; Delete all old NT win16 library files. ; Real 16 bit windows libraries were copied with "Install-Files" ; These files are no longer used. ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSPATH)"\system\nwipxspx.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSPATH)"\system\netware.drv" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwcalls.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwnet.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwclient.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwncp.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwlocale.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwcvdd.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwdrvvdd.dll" ; ; The 32 bit libraries have changed. Supwin32.dll is no longer used as ; well as the temporary psapi32.dll and prtwinnt.dll. ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\supwin32.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\psapi32.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\prtwinnt.dll" ; ; These files were originally installed in the wrong directories. New ; ones were copied to the correct directories so delete these. ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netx.msg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\vipx.msg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwevents.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\tli_win.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwelcome.bmp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\nwmsgsvc.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\reconsvc.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\readme.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\nwip.sys" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nwrights.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nwshlxnt.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nt3using.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nt3using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nt4using.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nt4using.cnt" ; ; These files are now obsolete so delete them if they exist ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\gdos.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\shellvdd.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\clean.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\vipx.msg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\netx.msg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\loginwnt.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3admin.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4admin.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\reconsvc.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwconfig.nt" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwauto.nt" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netx.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSPATH)"\netware.pif" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwchgpwd.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwmsgsvc.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nwcplr.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\msgsvcr.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nwrightr.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\netwarer.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwrights.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwfmext.exe" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwcpl.cpl" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nwpapi32.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axcred.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axcrednt.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axnds.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axbndry.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axscript.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axdialup.rll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\axcred.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"axcrednt.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\axnds.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\axbndry.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\axscript.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\axdialup.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\loginw32.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axcred.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axcrednt.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axnds.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axbndry.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axscript.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axdialup.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\axprf.hlp" GetDriveInPath NtDrive $(!STF_WINDOWSSYSPATH) LibraryProcedure LibResult $(NwLibHandle) NWDeleteFile $(NtDrive)"\workstat.id" ; ; Changes made to the ODI team stuff include renaming route.sys to ; sroute.sys. Delete old files. ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\oemnadna.inf" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\oemnadnb.inf" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\oemnadnc.inf" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\oemnadnd.inf" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\route.sys" ; ; Set up to use NWLINK ; ; These files are now obsolete because we are running under ; NWLINK. Delete them if they exist ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\ipxapi.sys" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\ipxspx.sys" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\spxapi.sys" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\netware\vmlid.sys" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\ipxapi.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\spxapi.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\wshnw.dll" ; ; Reload lines in autoexec.nt and reload performance counters ; LibraryProcedure GUIResult $(NwLibHandle) NWCleanUpAutoexec LibraryProcedure GUIResult $(NwLibHandle) NWFixUpAutoexec LibraryProcedure GUIResult $(NwLibHandle) NWUnLoadPerformanceCounters LibraryProcedure GUIResult $(NwLibHandle) NWLoadPerformanceCounters ; ; Free the NWSETUP.DLL ; FreeLibrary $(NwLibHandle) ; ; Remove the old services from the registry and from eventlog. ; Also from software section of registry. ; Set TempKeyName = $(!NTN_ServiceBase) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleting all our IPXSPX services" DeleteRegTree $(TempKey) "IpxApi" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete IpxApi registry key" endif DeleteRegTree $(TempKey) "IpxSpx" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete IpxSpx registry key" endif DeleteRegTree $(TempKey) "OdiVMLID" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete OdiVMLID registry key" endif DeleteRegTree $(TempKey) "SpxApi" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete SpxApi registry key" endif DeleteRegTree $(TempKey) "NetWareAutoReconnect" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete NetWareAutoReconnect registry key" endif DeleteRegTree $(TempKey) "NWPopUp" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete NWPopUp registry key" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open services key to delete old services" endif Set TempKeyName = $(!NTN_ServiceBase)"\EventLog\System" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleting all our IPXSPX services from EventLog" DeleteRegTree $(TempKey) "IpxApi" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete IpxApi registry key from EventLog" endif DeleteRegTree $(TempKey) "IpxSpx" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete IpxSpx registry key from EventLog" endif DeleteRegTree $(TempKey) "OdiVMLID" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete OdiVMLID registry key from EventLog" endif DeleteRegTree $(TempKey) "SpxApi" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete SpxApi registry key from EventLog" endif DeleteRegTree $(TempKey) "NetWareAutoReconnect" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete NetWareAutoReconnect registry key" endif DeleteRegTree $(TempKey) "NWPopUp" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete NWPopUp registry key" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open services\eventlog key to delete old services" endif Set TempKeyName = $(!NTN_SoftwareBase)"\Novell" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleting all our IPXSPX services from Software" DeleteRegTree $(TempKey) "IpxSpx" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete IpxSpx registry key from Software" endif DeleteRegTree $(TempKey) "OdiVMLID" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete OdiVMLID registry key from Software" endif DeleteRegTree $(TempKey) "NWPopUp" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete NWPopUp registry key from Software" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open software key to delete old services" endif ; ; Fix to change the \NWGINA\Auto Configuation key to \NWGINA\Workstation Manager ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open new key ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if have new key, then done Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Auto Configuration" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done Debug-Output "OEMNPRNW.INF: Found \NWGINA\Auto Configuration" EnumRegValue $(TempKey) TempValueList ; get all values for old key CloseRegKey $(TempKey) ; close old key Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Created \NWGINA\Workstation Manager" ForListDo $(TempValueList) SetRegValue $(TempKey) $($) ; set values in new key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting \NWGINA\Workstation Manager\"*($($), 1) else Debug-Output "OEMNPRNW.INF: Error setting \NWGINA\Workstation Manager\"*($($), 1) endif EndForListDo else Debug-Output "OEMNPRNW.INF: Error creating \NWGINA\Workstation Manager" endif CloseRegKey $(TempKey) endif else CloseRegKey $(TempKey) endif ; ; Delete "SOFTWARE\Novell\NWGINA\Auto Configuration" if it exists ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old key base ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no base, then done DeleteRegKey $(TempKey) "Auto Configuration" ; delete old key from base ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting \NWGINA\Auto Configuration" endif endif ; ; Move the Trusted Trees parameter from the Dynamic Local User to the Workstation Manager key ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Dynamic Local User" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Trusted Trees" TrustedTreesList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting old \NWGINA\Dynamic Local User\Trusted Trees" DeleteRegValue $(TempKey) *($(TrustedTreesList), 1) ; delete old value CloseRegKey $(TempKey) ; close old key Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open new key ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Error creating \NWGINA\Workstation Manager" goto TrustedTreesError ; if error, then done endif endif GetRegValue $(TempKey) "Trusted Trees" TempTrustedTreesList ; get new value ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if new value, then done SetRegValue $(TempKey) $(TrustedTreesList) ; set new value ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Moved Trusted Trees to \NWGINA\Workstation Manager" else Debug-Output "OEMNPRNW.INF: Error moving Trusted Trees to \NWGINA\Workstation Manager" endif endif endif ; end of get old value CloseRegKey $(TempKey) ; closes either the old key or the new key (depending on how far we made it) endif ; end of open old key TrustedTreesError = + ; ; Move the Enabled parameter from the Dynamic Local User to the Workstation Manager key ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Dynamic Local User" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Enabled" EnabledList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting old \NWGINA\Dynamic Local User\Enabled" DeleteRegValue $(TempKey) *($(EnabledList), 1) ; delete old value CloseRegKey $(TempKey) ; close old key Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open new key ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Error creating \NWGINA\Workstation Manager" goto EnabledError ; if error, then done endif endif GetRegValue $(TempKey) "Enabled" TempEnabledList ; get new value ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if new value, then done SetRegValue $(TempKey) $(EnabledList) ; set new value ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Moved Enabled to \NWGINA\Workstation Manager" else Debug-Output "OEMNPRNW.INF: Error moving Enabled to \NWGINA\Workstation Manager" endif endif endif ; end of get old value CloseRegKey $(TempKey) ; closes either the old key or the new key (depending on how far we made it) endif ; end of open old key EnabledError = + ; ; Move the Trusted Trees parameter from the NWGINA\Workstation Manager key to Workstation Manager Tree ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Trusted Trees" TrustedTreesList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting old \NWGINA\Workstation Manager\Trusted Trees" DeleteRegValue $(TempKey) *($(TrustedTreesList), 1) ; delete old value CloseRegKey $(TempKey) ; close old key Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Workstation Manager\Identification" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open new key ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Error creating \Workstation Manager\Identification" goto WMTreeError ; if error, then done endif endif GetRegValue $(TempKey) "Tree" TempTree ; get new value ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if new value, then done set OldTreesList = *($(TrustedTreesList), 4) ; get old tree list Split-string $(OldTreesList) "," TreePieces ; split tree list set NewTree = *($(TreePieces), 1) ; get first tree ifstr(i) $(NewTree) == "," ; ensure it isnt a comma set NewTree = "" endif SetRegValue $(TempKey) {"Tree", $(NoTitle), $(!REG_VT_SZ), $(NewTree)} ; set new value ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Moved Trusted Tree to \Workstation Manager\Identification" else Debug-Output "OEMNPRNW.INF: Error moving Trusted Tree to \Workstation Manager\Identification" endif endif endif ; end of get old value CloseRegKey $(TempKey) ; closes either the old key or the new key (depending on how far we made it) endif ; end of open old key WMTreeError = + ; ; Move the Enabled parameter from NWGINA\Workstation Manager to the Workstation Manager key ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Enabled" EnabledList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting old \NWGINA\Workstation Manager\Enabled" DeleteRegValue $(TempKey) *($(EnabledList), 1) ; delete old value CloseRegKey $(TempKey) ; close old key Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Workstation Manager" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open new key ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Error creating \Workstation Manager" goto WMEnabledError ; if error, then done endif endif GetRegValue $(TempKey) "Enabled" TempEnabledList ; get new value ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if new value, then done SetRegValue $(TempKey) $(EnabledList) ; set new value ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Moved Enabled to \Workstation Manager" else Debug-Output "OEMNPRNW.INF: Error moving Enabled to \Workstation Manager" endif endif endif ; end of get old value CloseRegKey $(TempKey) ; closes either the old key or the new key (depending on how far we made it) endif ; end of open old key WMEnabledError = + ; ; Delete the LSL Max Buffer Size parameter from NetWareWorkstation\Parameters ; Set TempKeyName = $(!NTN_ServiceBase)"\NetWareWorkstation\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; open old parameter key ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no old, then done GetRegValue $(TempKey) "Max Buffer Size" MaxBufferSizeList ; get old values ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; if no value, then done Debug-Output "OEMNPRNW.INF: Deleting old \NetWareWorkstation\Parameters\Max Buffer Size" DeleteRegValue $(TempKey) *($(MaxBufferSizeList), 1) ; delete old value endif CloseRegKey $(TempKey) endif ; ; If language changes, then delete the old GINA login script and profile scripts ; ifstr(i) $(OldNLSDirName) != $(NLSDirName) Debug-Output "OEMNPRNW.INF: Language changed it was - "$(OldNLSDirName)" it is now - "$(NLSDirName) Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Login Screen" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegValue $(TempKey) "DefaultLoginScript" ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleted \NWGINA\Login Screen\DefaultLoginScript" else Debug-Output "OEMNPRNW.INF: Error Deleting \NWGINA\Login Screen\DefaultLoginScript" endif DeleteRegValue $(TempKey) "DefaultProfileScript" ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Deleted \NWGINA\Login Screen\DefaultProfileScript" else Debug-Output "OEMNPRNW.INF: Error Deleting \NWGINA\Login Screen\DefaultProfileScript" endif endif endif ; ; Remove IpxSpx from the transports value in Winsock ; Set TempKeyName = $(!NTN_ServiceBase)"\WinSock\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Transports" ValueData Set ValueList = *($(ValueData), 4) Set NewList = {} ForListDo $(ValueList) Set Item = $($) Ifstr(i) $(Item) != "IpxSpx" Set NewList = >($(NewList), $(Item)) Endif EndForListDo SetRegValue $(TempKey) {"Transports", $(NoTitle), $(!REG_VT_MULTI_SZ), $(NewList)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Cant update Winsock Transports value" Endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Can't open key "$(TempKeyName) Endif ; ; Set up registry for new explorer. This is done with a call ; to the dll. The provider for NT 3.51 will also need to call ; this function if it detects an upgrade from NT 3.51 to 4.0 ; has occured. ; Shell "" InstallEx-NetworkProvider Shell "" InstallEx-NetWarePrintServices ; ; Remove the VipxVDD key from HKEY_LOCAL_MACHINE\Software\Novell ; if it exists ; set ProductName = "VipxVDD" set VIPXVDDManufactureBase = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(VIPXVDDManufactureBase) $(!REG_KEY_ALL_ACCESS) MFBaseKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegTree $(MFBaseKey) $(ProductName) ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Deleting Key $(ProductName)" endif CloseRegKey $(MFBaseKey) else Debug-Output "FATAL Registry Error: Error Opening Key $(VIPXVDDManufactureBase)" endif ; ; Update the CurrentVersion value in SOFTWARE\NOVELL ; set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"CurrentVersion", $(NoTitle), $(!REG_VT_SZ), $(ProductVersion)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update CurrentVersion value in "$(TempKeyName) endif CloseRegKey $(TempKey) Endif ; ; Remove the old 4.6 & 4.8 Service Pack values ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegValue $(TempKey) "Service Pack" DeleteRegValue $(TempKey) "Service Pack Files" DeleteRegValue $(TempKey) "Service Pack Files 2" DeleteRegValue $(TempKey) "Service Pack Files 3" CloseRegKey $(TempKey) endif ; ; The following is stuff that relates to installed services that ; need to change because of new requirements and so forth. ; ForListDo $(UpdateServiceNameList) Set UpdateSvcOpt = $($) ; ; Check to see if the product to be fixed is there ; Set ProductKeyName = $(!NTN_ServiceBase)"\"$(Product$(UpdateSvcOpt)Name) OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) ProductKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: "$(UpdateSvcOpt)" is installed, fix it up" ; ; Set the correct path in the registry for the events file. The ; NWEVENTS.DLL file was moved to a new location. Must reflect this ; in the registry for all things that use it. ; ; Open key to the appropriate system eventlog service ; Set TempKeyName = $(!NTN_ServiceBase)"\EventLog\System\"$(Product$(UpdateSvcOpt)Name) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Set the new events log value ; SetRegValue $(TempKey) {"EventMessageFile", $(NoTitle), $(!REG_VT_EXPAND_SZ), $(Product$(UpdateSvcOpt)EventFile)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to fix EventMessageFile for "$(UpdateSvcOpt) endif ; ; Close the key ; CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName) endif ; ; Update the product software information ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(Product$(UpdateSvcOpt)Name)"\CurrentVersion" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Set the new major version number ; SetRegValue $(TempKey) {"MajorVersion", $(NoTitle), $(!REG_VT_DWORD), $(ProductMajorVersion)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set new major version info for "$(UpdateSvcOpt) endif ; ; Set the new minor version number ; SetRegValue $(TempKey) {"MinorVersion", $(NoTitle), $(!REG_VT_DWORD), $(ProductMinorVersion)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set new minor version info for "$(UpdateSvcOpt) endif ; ; Set the new description and title ; SetRegValue $(TempKey) {"Description", $(NoTitle), $(!REG_VT_SZ), $(Product$(UpdateSvcOpt)DisplayName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update Description for "$(UpdateSvcOpt) endif SetRegValue $(TempKey) {"Title", $(NoTitle), $(!REG_VT_SZ), $(Product$(UpdateSvcOpt)DisplayName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update Title for "$(UpdateSvcOpt) endif ; ; Close the key ; CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName) endif ; ; Fix the display name ; SetRegValue $(ProductKey) {"DisplayName", $(NoTitle), $(!REG_VT_SZ), $(Product$(UpdateSvcOpt)DisplayName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update DisplayName for "$(UpdateSvcOpt) endif ; ; Add new values to Netware Workstation if needed. ; Open the parameters key ; ifstr(i) $(UpdateSvcOpt) == "NWFS" ; ; Set up redirector to be of group NetworkProvider ; SetRegValue $(ProductKey) {"Group", $(NoTitle), $(!REG_VT_SZ), "NetworkProvider"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update group for "$(UpdateSvcOpt) endif ; ; Update the parameters for redirector ; Set TempKeyName = $(!NTN_ServiceBase)"\"$(Product$(UpdateSvcOpt)Name)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; The name of the packet signature value changed. Read old ; value name and set the new signature level value if needed. ; GetRegValue $(TempKey) "Packet Signature" SignatureList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set SignatureListData = *($(SignatureList), 4) SetRegValue $(TempKey) {"Signature Level", $(NoTitle), $(!REG_VT_DWORD), $(SignatureListData)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update signature level for "$(UpdateSvcOpt) endif DeleteRegValue $(TempKey) "Packet Signature" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete the Packet Signature for NWGINA.DLL" endif else GetRegValue $(TempKey) "Signature Level" SignatureList ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"Signature Level", $(NoTitle), $(!REG_VT_DWORD), 1} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add signature level value for "$(UpdateSvcOpt) endif else Debug-Output "OEMNPRNW.INF: Signature level value for "$(UpdateSvcOpt)" is already set" endif endif ; ; Preferred tree and context values have changed. Read old ; values and transfer to the new Tree, context pair values. ; GetRegValue $(TempKey) "Preferred Tree" TreeList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set TreeListData = *($(TreeList), 4) GetRegValue $(TempKey) "Name Context" ContextList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ContextListData = *($(ContextList), 4) CreateRegKey $(TempKey) {"Trees", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TreesKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TreesKey) {$(TreeListData), $(NoTitle), $(!REG_VT_SZ), $(ContextListData)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update tree and context pair value for "$(UpdateSvcOpt) endif CloseRegKey $(TreesKey) else Debug-Output "OEMNPRNW.INF: Failed to create Trees key for "$(UpdateSvcOpt) endif else Debug-Output "OEMNPRNW.INF: Failed to get Name Context value for "$(UpdateSvcOpt) endif else Debug-Output "OEMNPRNW.INF: Failed to get Preferred Tree value for "$(UpdateSvcOpt) endif DeleteRegValue $(TempKey) "Name Context" ; ; Set up redirector to use NWLINK ; ; SetRegValue $(TempKey) {"IPX TDI Provider", $(NoTitle), $(!REG_VT_SZ), "\Device\NwlnkIpx"} ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to set up redirector to use NWLINK" ; endif ; ; Close the key ; CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName) endif ; ; Set the new service dependencies for NWFS ; Set TempKeyName = $(!NTN_ServiceBase)"\"$(Product$(UpdateSvcOpt)Name)"\Linkage" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Set the new service dependencies for NWFS ; ; SetRegValue $(TempKey) {"OtherDependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"Mup", "NwlnkIpx", "+NetWare Services", "+TDI"}} SetRegValue $(TempKey) {"OtherDependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"+NetWare Services", "+TDI"}} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update service dependencies for "$(UpdateSvcOpt) endif ; ; Close the key ; CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName) endif ; ; On 3.5 or 3.5b clients, the inf file "oemnprnw.inf" did not ; exist, therefore, the InfName value was set to oemsetup.inf ; (or the munged file name). This is not the correct file to ; run when doing bindings reviews now that the client has been ; upgraded. We need to set the InfName so NT runs the correct ; Inf file during bindings reviews. ; Set TempKeyName = $(ProductNWFSKeySoftware)"\NetRules" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Get the old InfName for NWFS ; GetRegValue $(TempKey) "InfName" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set InfName = *($(KeyValueList), 4) ifstr(i) $(InfName) != "oemnprnw.inf" ; ; Delete the old inf file ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\"$(InfName) FreeLibrary $(NwLibHandle) ; ; Set the InfName for the inf file to run at review time ; SetRegValue $(TempKey) {"InfName", $(NoTitle), $(!REG_VT_SZ), "oemnprnw.inf"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update InfName for "$(UpdateSvcOpt) endif else Debug-Output "OEMNPRNW.INF: InfName for "$(UpdateSvcOpt)" is already correct" endif else Debug-Output "OEMNPRNW.INF: Failed to get InfName for "$(UpdateSvcOpt) endif ; ; Fix up the bindable value so we will show up in the bindings ; SetRegValue $(TempKey) {"Bindable", $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRule$(UpdateSvcOpt)SoftwareBindable)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to update InfName for "$(UpdateSvcOpt) endif ; ; Close the key ; CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName) endif endif ; ; Set the correct path in the registry for the two services that ; got moved. RECONSVC.EXE and NWMSGSVC.EXE were moved from ; system32\netware to system32 where all the other non driver ; executables are located. ; ifstr(i) $(UpdateSvcOpt) == "RECONNECT" ; ; Set the new Image Paths ; SetRegValue $(ProductKey) {"ImagePath", $(NoTitle), $(!REG_VT_EXPAND_SZ), $(Product$(UpdateSvcOpt)ImagePath)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to fix ImagePath for "$(UpdateSvcOpt) endif endif ifstr(i) $(UpdateSvcOpt) == "NICM" ; ; Set the new Image Paths ; SetRegValue $(ProductKey) {"ImagePath", $(NoTitle), $(!REG_VT_EXPAND_SZ), $(Product$(UpdateSvcOpt)ImagePath)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to fix ImagePath for "$(UpdateSvcOpt) endif endif ; ; Close the first key ; CloseRegKey $(ProductKey) endif EndForListDo ; ; Set up to install any services that were not part of a previous client. ; ForListDo $(ServiceNameList) Set Do$($) = TRUE EndForListDo set CalledFromUpdate = "YES" goto InstallEnabledServices ReturnToUpdate = + ifint $(RemovedNWIP) == 1 Debug-Output "OEMNPRNW.INF: Attempting to readd NetWareIP" ; ; Flush NCPA.CPL cache on our inf file. The inf file was updated ; and we want it to run the new file. ; FlushInf "OEMNSVIP.INF" ; ; Try to readd NetWareIP ; Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = install Shell "OEMNSVIP.INF" InstallOption $(!STF_LANGUAGE) "NetWareIP" "" NO NO NO Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError Endif ; ; Restore NetWareIP parameters ; Set TempKeyName = $(!NTN_ServiceBase)"\NetWareIP\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ifstr(i) $(DomainName) != "" SetRegValue $(TempKey) {"NWIP Domain Name", $(NoTitle), $(!REG_VT_SZ), $(DomainName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP NWIP Domain Name" endif endif ifstr(i) $(Compatibility) != "" SetRegValue $(TempKey) {"NWIP1_1 Compatibility", $(NoTitle), $(!REG_VT_DWORD), $(Compatibility)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP NWIP1_1 Compatibility" endif endif ifstr(i) $(AutoRetries) != "" SetRegValue $(TempKey) {"AutoRetries", $(NoTitle), $(!REG_VT_DWORD), $(AutoRetries)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP AutoRetries" endif endif ifstr(i) $(AutoRetrySecs) != "" SetRegValue $(TempKey) {"AutoRetry Secs", $(NoTitle), $(!REG_VT_DWORD), $(AutoRetrySecs)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP AutoRetry Secs" endif endif ifstr(i) $(NSQBroadcast) != "" SetRegValue $(TempKey) {"NSQ Broadcast", $(NoTitle), $(!REG_VT_DWORD), $(NSQBroadcast)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP NSQ Broadcast" endif endif ifstr(i) $(NearestIPServer) != {} CreateRegKey $(TempKey) {"Nearest NWIP Server", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" NearestServerKey set Index = 0 ForListDo $(NearestIPServer) SetRegValue $(NearestServerKey) {$(Index), $(NoTitle), $(!REG_VT_SZ), $($)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP Nearest NWIP Server" endif set-add Index = $(Index), 1 EndForListDo endif CloseRegKey $(NearestServerKey) ifstr(i) $(PreferredDSS) != {} CreateRegKey $(TempKey) {"Preferred DSS", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" PreferredDSSKey set Index = 0 ForListDo $(PreferredDSS) SetRegValue $(PreferredDSSKey) {$(Index), $(NoTitle), $(!REG_VT_SZ), $($)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set NetWareIP Nearest NWIP Server" endif set-add Index = $(Index), 1 EndForListDo endif CloseRegKey $(PreferredDSSKey) CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to open key "$(!NTN_ServiceBase)"\NWIP\Parameters" endif else Debug-Output "OEMNPRNW.INF: Checking to see in NetWareIP is installed" ; ; Flush NCPA.CPL cache on our inf file. The inf file was updated ; and we want it to run the new file. ; FlushInf "NWSUBS.INF" ; ; Check for NetWareIP Drivers ; Shell $(NwSubsInf) GetTotalAdapterList Set OdiProductNameList = $($R0) Set OdiTitleList = $($R1) Set OdiCardList = $($R2) Set NumberOdiAdapters = $($R3) Set NdisProductNameList = $($R4) Set NdisTitleList = $($R5) Set NdisCardList = $($R6) Set NumberNdisAdapters = $($R7) Set ODINSUPCardNumber = $($R8) Set NetWareIPCardNumList = $($R9) Set NumberNetWareIPAdapters = $($R10) Set NWCMDCardNumList = $($R11) Set NumberNWCMDAdapters = $($R12) ifint $(NumberNetWareIPAdapters) > 0 Debug-Output "OEMNPRNW.INF: Updating NetWareIP" ifstr(i) $(!DO_NWLINK) == "YES" Debug-Output "OEMNPRNW.INF: Updating NetWareIP" ; ; Call NetWareIP inf file to update NetWareIP ; Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = update Shell "oemnsvip.inf" InstallOption, $(!STF_LANGUAGE), "NetWareIP", "", "YES", "YES", "NO" Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif else Debug-Output "OEMNPRNW.INF: Removing NetWareIP" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = deinstall Shell "oemnsvip.INF" InstallOption $(!STF_LANGUAGE) "NetWareIP" "" NO NO NO Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif endif else ; ; Add NetWareIP if the user wants ; shell "" Install-NetWareIP ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL goto fatal endif endif ifint $(NumberNWCMDAdapters) > 0 Debug-Output "OEMNPRNW.INF: Updating Compatibility Mode (NWCMD)" ; ; Call NWCMD inf file to update Compatibility Mode ; ifstr(i) $(!InstallCompatMode) == "YES" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = update ; Shell "oemnsvcm.inf" InstallOption, $(!STF_LANGUAGE), "NWCMD", "", "YES", "YES", "NO" Shell "oemnsvcm.inf" InstallOption, $(!STF_LANGUAGE), "NWCMD", $(SrcDir), "YES", "YES", "NO" Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif else Debug-Output "OEMNPRNW.INF: Removing NWCMD" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = deinstall ; Shell "OEMNSVCM.INF" InstallOption $(!STF_LANGUAGE) "NWCMD" "" NO NO NO Shell "OEMNSVCM.INF" InstallOption $(!STF_LANGUAGE) "NWCMD" $(SrcDir) NO NO NO Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif endif else ; ; Add Compatibility Mode if the user wants ; shell "" Install-NWCMD ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL goto fatal endif endif Endif ifstr(i) $(!NWSetup) != YES set OldSTF_SRCDIR_OVERRIDE = $(!STF_SRCDIR_OVERRIDE) set !STF_SRCDIR_OVERRIDE = $(SrcDir) Set TempKeyName = $(!NTN_ServiceBase)"\CPROXY" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnxpgw.inf" InstallOption, $(!STF_LANGUAGE), "CPROXY", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNXPGW.INF to update IP Gateway" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\NTTSA" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvts.inf" InstallOption, $(!STF_LANGUAGE), "NTTSA", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVTS.INF to update TSA" endif endif Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NDPS" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvnp.inf" InstallOption, $(!STF_LANGUAGE), "NDPS", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVNP.INF to update NDPS" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\WM" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvwm.inf" InstallOption, $(!STF_LANGUAGE), "WM", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVWM.INF to update WM" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\NALNTSRV" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvns.inf" InstallOption, $(!STF_LANGUAGE), "NALNTSRV", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVWM.INF to update NALNTSRV" endif endif Set TempKeyName = $(!NTN_ServiceBase)"\WUA" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Shell "oemnsvwa.inf" InstallOption, $(!STF_LANGUAGE), "WUA", $(SrcDir), YES, YES, NO ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: Failed to shell to OEMNSVWM.INF to update WUA" endif endif set !STF_SRCDIR_OVERRIDE = $(OldSTF_SRCDIR_OVERRIDE) endif ; ; Set SAM Redirection info ; ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWCheckSAMMigrated ifstr(i) $(GUIResult) != "TRUE" set TempRegKeyName = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" OpenRegKey $(!REG_H_CUSER) "" $(TempRegKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; if no new key CreateRegKey $(!REG_H_CUSER) {$(TempRegKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; create new key Debug-Output "OEMNPRNW.INF: Failed to create Windows key for SAM Migration utility" goto migerror2 ; if error, then done endif endif set CommandLine = $(!STF_WINDOWSSYSPATH)"\sammig.exe" set RunValue = "" GetRegValue $(TempKey) "run" RunList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set RunValue = *($(RunList), 4) Split-string $(RunValue) " ," SplitRunList ifcontains(i) $(CommandLine) in $(SplitRunList) goto migerror2 endif ifstr(i) $(RunValue) != "" set RunValue = $(RunValue)" " endif endif set NewRunValue = $(RunValue)$(CommandLine) SetRegValue $(TempKey) {"run", $(NoTitle), $(!REG_VT_SZ), $(NewRunValue)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Run for SAM Migration utility" endif CloseRegKey $(TempKey) migerror2 = + endif FreeLibrary $(NwLibHandle) Shell "" AddServiceDependency "LanmanServer" "NetWareWorkstation" endif endif LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWSetEnvVar NWLANGUAGE $(NLSDirName) ; ; Only unregister if workstation manager client is being upgraded ; Debug-Output "OEMNPRNW.INF: Unregistering Active X" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axcred.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axcrednt.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axnds.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axbndry.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axscript.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axdialup.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\loginsvc.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\axprf.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllUnregisterServer $(!STF_WINDOWSSYSPATH)"\connsvc.dll" Debug-Output "OEMNPRNW.INF: Registering Active X" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axcred.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axcrednt.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axnds.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axbndry.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axscript.ocx" ; LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axdialup.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\loginsvc.dll" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\axprf.ocx" LibraryProcedure GUIResult $(NwLibHandle) NWDllRegisterServer $(!STF_WINDOWSSYSPATH)"\connsvc.dll" FreeLibrary $(NwLibHandle) ifstr(i) $(RemoveNWLINK) == "YES" shell "" Remove-NWLINK ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif Shell $(UtilityInf), RemoveService, "NWSIPX32", YES Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNPRNW.INF: ShellCode error removing NWSIPX32." goto ShellCodeError endif endif ; ; Write out the unattended variables to registry ; shell "" Write-Unattended-Variables ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError else-ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: User Canceled due to a error processing the Unattended Variables." set CommonStatus = STATUS_USERCANCEL goto setfailed endif ; ; Set the reboot flag ; Set CommonStatus = STATUS_SUCCESSFUL ; ; Escape hatches ; successful = + goto end ; ; warning display ; warning = + Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif ifstr(i) $($R1) == "OK" goto $(to) else-ifstr(i) $($R1) == "CANCEL" goto $(from) else goto end endif ; ; non fatal error display ; nonfatalinfo = + Set CommonStatus = STATUS_USERCANCEL Set Severity = STATUS goto nonfatalmsg nonfatal = + Set Severity = NONFATAL goto nonfatalmsg nonfatalmsg = + ifstr(i) $(Error) == "" Set Severity = NONFATAL Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) endif Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif ifstr(i) $($R1) == "OK" goto $(from) else goto "end" endif ; ; Registry is broken ; fatalregistry = + Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) goto fatal ; ; fatal error display ; fatal = + ifstr(i) $(Error) == "" Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) endif Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif goto setfailed ; ; Shelling error ; ShellCodeError = + set DlgType = "MessageBox" set STF_MB_TITLE = $(ShellCodeErrorTitle) set STF_MB_TEXT = $(ShellCodeErrorText) set STF_MB_TYPE = 1 set STF_MB_ICON = 3 set STF_MB_DEF = 1 ui start "ShellCodeError" goto setfailed setfailed = + set CommonStatus = STATUS_FAILED ; ; If OEM_ABANDON_ON, we need to clean up the registry ; ifstr(i) $(OEM_ABANDON_ON) == TRUE set OEM_ABANDON_ON = FALSE Debug-Output "OEMNPRNW.INF: About to start removing netware" goto removenetware endif goto end end = + EndWait goto term term = + Return $(CommonStatus) ;************************************************************************* ; SHELL SECTIONS ;************************************************************************* ;----------UnattendedInstallOption---------------------------------------- ; ; ; SECTION: UnattendedInstallOption: ; ; PURPOSE: This section is shelled to by the Install Option. It looks at the three MS Unattended variables and then ; sets the Novell specific variable for NWACU and the NWUnattended file. ; Our install for both setup.exe /ACU and Unattended install from MS then uses NWACU and the NWUnattended variables. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [UnattendedInstallOption] read-syms GeneralConstants read-syms FileConstants ifstr(i) $(!STF_GUI_UNATTENDED) == "NO" ifstr(i) $(!STF_UNATTENDED) == "YES" set !NWACU = "YES" endif else-ifstr(i) $(!STF_GUI_UNATTENDED) == "YES" ifstr(i) $(!NWUnattendedFile) == "" set !NWACU = "YES" set !NWUnattendedFile = $(!STF_UNATTENDED) set !NWUnattendedSection = $(!STF_UNATTENDED_SECTION) ; new nwfs.sys wont load without nicm ; on unattended install must force nicm to load set !P:ProductRESMGRDependList = {"NICM"} else-ifstr(i) $(!STF_UNATTENDED_SECTION) != "" set !NWUnattendedSection = $(!STF_UNATTENDED_SECTION) endif endif Return ;************************************************************************* ;----------Write-Unattended-Variables----------------------------------- ; ; ; SECTION: Write-Unattended-Variables: ; ; PURPOSE: This section writes the unattended variables to the ; registry. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: Called at end of install section and the update section ; ; MODIFIES: None ; ;************************************************************************* [Write-Unattended-Variables] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; If the /U parameter is passed from Setupnw.exe then call this section to set the defaults. ; Add the values in the unattended file to the registry. set UnattendReturnStatus = STATUS_SUCCESSFUL ifstr(i) $(!NWUnattendedFile) != "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\"$(!P:NLSDirName)"\setupnw.hlp" $(!MinimumID) $(!MaximumID) LibraryProcedure LibResult $(NwLibHandle) NWUnattendedInstall $(!NWUnattendedFile) $(!P:Option) FreeLibrary $(NwLibHandle) endif Return $(UnattendReturnStatus) ;************************************************************************* ; ; SECTION: GetInfFileNameFromRegistry ; ; PURPOSE: get the inf file name from the product' NetRules section. ; ; ARGUMENTS: $0 product key handle ; (ie, system\software\Microsoft\Lance\CurrentVersion) ; ; RETURNS: $R0 Inf file name. ; ; REFERENCES: Nothing ; ; MODIFIES: Nothing ; ; ;************************************************************************* [GetInfFileNameFromRegistry] read-syms InitBaseVars set KeyProduct = $($0) set InfName = "" OpenRegKey $(KeyProduct) "" "NetRules" $(!REG_KEY_READ) NetRuleKey Ifstr(i) $(NetRuleKey) != $(KeyNull) GetRegValue $(NetRuleKey) "InfName" NetRuleInfNameList set NetRuleInfName = *($(NetRuleInfNameList), 4) Split-String $(NetRuleInfName), "\", FilenameList QueryListSize ListSize $(FilenameList) set InfName = *($(FilenameList), $(ListSize)) CloseRegKey $(NetRuleKey) endif return $(InfName) ; ; Helper sections: service-specific installation and removal functions ; [CheckSystemDriveSpace] read-syms InstallOption$(!STF_LANGUAGE) detect DetectDiskSpace GetDriveInPath NtDrive $(!STF_WINDOWSSYSPATH) Debug-Output "NtDrive is "$(NtDrive) Debug-Output "VolumeList is "$(VolumeList) Debug-Output "VolumeFSList is "$(VolumeFSList) ; ; Set status failed by default until we find out otherwise ; Set SrcDir = $($0) set NwLangIdDll = "nwlangid.dll" ; set Status = STATUS_FAILED ; LoadLibrary $(LoadDisk3Text) $(SrcDir)$(NwLangIdDll) NwLibHandle ; ForListDo $(VolumeList) ; set CurrentVolume = *($(VolumeList), $(#)) ; Ifstr(i) $(CurrentVolume) == $(NtDrive) ; Ifstr(i) $(!NTN_InstallMode) == install ; LibraryProcedure GUIResult $(NwLibHandle) NWGetFreeDiskSpace 1 ; ifstr(i) $(GUIResult) != "TRUE" ; ; ; ; Let the user know that there is not enough disk space ; ; ; ; set DlgType = "MessageBox" ; set STF_MB_TITLE = $(NoDiskSpaceTitle) ; set STF_MB_TEXT = $(NoDiskSpaceText) ; set STF_MB_TYPE = 1 ; set STF_MB_ICON = 2 ; set STF_MB_DEF = 1 ; ui start "NoDiskSpace" ; set Status = STATUS_FAILED ; else set Status = STATUS_SUCCESSFUL ; endif ; else-Ifstr(i) $(!NTN_InstallMode) == update ; LibraryProcedure GUIResult $(NwLibHandle) NWGetFreeDiskSpace 0 ; ifstr(i) $(GUIResult) != "TRUE" ; ; ; ; Let the user know that there is not enough disk space ; ; ; ; set DlgType = "MessageBox" ; set STF_MB_TITLE = $(NoDiskSpaceTitle) ; set STF_MB_TEXT = $(NoDiskSpaceText) ; set STF_MB_TYPE = 1 ; set STF_MB_ICON = 2 ; set STF_MB_DEF = 1 ; ui start "NoDiskSpace" ; set Status = STATUS_FAILED ; else ; set Status = STATUS_SUCCESSFUL ; endif ; Endif ; EndIf ; EndForListDo ; FreeLibrary $(NwLibHandle) Return $(Status) [AgreeToLicense] set SourceDir = $($0) set Status = STATUS_SUCCESSFUL read-syms InstallOption$(!STF_LANGUAGE) read-syms FileConstants Debug-Output "OEMNPRNW.INF: Asking user to agree to license" ; ; Ask the user if they agree to license ; LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(SourceDir) Ifstr(i) $(STATUS) != "ERROR" set SourceDir = $(STATUS) Endif LoadLibrary $(LoadDisk1Text) $(SourceDir)$(NwLangIdDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWLicenseAgreement FreeLibrary $(NwLibHandle) ifstr(i) $(LibResult) == "CONTINUE" set Status = STATUS_SUCCESSFUL else set Status = STATUS_FAILED endif Return $(Status) [FinishInstalling-NWFS] read-syms GeneralConstants read-syms FileConstants Set KeyParameters = $($1) Set KeyLinkage = $($2) Set TransportSelected = $($5) ; ; Check for the pre-alpha nwfs key if it exists delete it we are now using ; the key NetWareWorkStation ; set NetWareFileSystem = "Nwfs" set PreAlphaWorkstation = $(!NTN_ServiceBase)"\"$(NetWareFileSystem) OpenRegKey $(!REG_H_LOCAL) "" $(PreAlphaWorkstation) $(MAXIMUM_ALLOWED) KeyWorkstation Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(KeyWorkstation) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) $(MAXIMUM_ALLOWED) KeyServices Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegTree $(KeyServices) $(NetWareFileSystem) CloseRegKey $(KeyServices) Else Debug-Output "OEMNPRNW.INF: Delete Nwfs, Can't open "$(!NTN_ServiceBase) Endif Endif ; SetRegValue $(KeyLinkage) {"OtherDependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"Mup", "NwlnkIpx", "+NetWare Services", "+TDI"}} SetRegValue $(KeyLinkage) {"OtherDependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"+NetWare Services", "+TDI"}} SetRegValue $(KeyParameters) {"Retry Count", $(NoTitle), $(!REG_VT_DWORD), 16} SetRegValue $(KeyParameters) {"Burst Mode", $(NoTitle), $(!REG_VT_DWORD), 1} SetRegValue $(KeyParameters) {"Signature Level", $(NoTitle), $(!REG_VT_DWORD), 1} SetRegValue $(KeyParameters) {"First Time Install", $(NoTitle), $(!REG_VT_DWORD), 1} ; SetRegValue $(KeyParameters) {"Opportunistic Locking", $(NoTitle), $(!REG_VT_DWORD), 0} ; Debug-Output "Set registry for NWLINK, KeyParameters = "$(KeyParameters) ; SetRegValue $(KeyParameters) {"IPX TDI Provider",$(NoTitle),$(!REG_VT_SZ),"\Device\NwlnkIpx"} FIN_NWFS_Return = + Return [FinishInstalling-RESMGR] Return [FinishInstalling-MUP] Return [FinishInstalling-TDI] Return [FinishInstalling-NWSIPX32] SetRegValue $(KeyLinkage) {"OtherDependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"NwlnkIpx", "NwlnkSpx", "+NetWare Services", "+TDI"}} Return [FinishInstalling-NICM] Return [FinishInstalling-NWSAP] Return [FinishInstalling-NWSNS] Return [FinishInstalling-NWDHCP] Return [FinishInstalling-NWHOST] Debug-Output "FinishInstalling-NWHOST" read-syms GeneralConstants read-syms FileConstants read-syms NWHostConstants set ParmKey = $($1) ; ; set Parameters ; SetRegValue $(ParmKey) {"HostFile",$(NoTitle),$(!REG_VT_SZ),$(HostFileName)} Return [FinishInstalling-SRVLOC] Return [FinishInstalling-NWSLP] Return [FinishInstalling-NWDNS] Return [DoAskSource] read-syms DoAskSource$(!STF_LANGUAGE) Set DAS_CWDDIR = $($0) Set DAS_SRCDIR = $($1) Set DAS_BUILTIN = $($2) Set DAS_Result = STATUS_FAILED Ifstr(i) $(!STF_SRCDIR_OVERRIDE) != "" Set DAS_SRCDIR = $(!STF_SRCDIR_OVERRIDE) Set DAS_Result = STATUS_SUCCESSFUL Goto DAS_exit Endif Ifstr(i) $(DAS_BUILTIN) == YES Ifstr(i) $(!NTN_InstallPhase) == primary Ifstr(i) $(!STF_SRCDIR_WINNT) != "" Set DAS_SRCDIR = $(!STF_SRCDIR_WINNT) Endif Set DAS_Result = STATUS_SUCCESSFUL Goto DAS_exit Endif Endif Debug-Output "OEMNPRNW.INF: [DoAskSource] STF_CWDDIR = "$(DAS_CWDDIR)" STF_SRCDIR = "$(DAS_SRCDIR) Ifstr(i) $(DAS_SRCDIR) == "" Set DAS_SRCDIR = "A:\" Endif Ifstr(i) $(DAS_SRCDIR) == $(!STF_SRCDIR_USED) Set DAS_SRCDIR = $(!STF_SRCDIR_KEYED) Endif Shell "subroutn.inf" DoAskSourceEx $(DAS_SRCDIR) $(NetWareDlgText) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "UTILITY.INF: shelling SUBROUTN.INF [DoAskSource] failed" goto DAS_exit endif Set DAS_Result = $($R0) Set DAS_SRCDIR = $($R1) Set !STF_SRCDIR_USED = $($R1) Set !STF_SRCDIR_KEYED = $($R3) DAS_exit =+ Read-syms ProgressCopy$(!STF_LANGUAGE) Return $(DAS_Result) $(DAS_SRCDIR) ;************************************************************************* ; ; SECTION: Install-NetWareIP ; ; PURPOSE: Called at install or update to install ; NetWare IP. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-NetWareIP] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL ; Error checking data in the Variables ifstr(i) $(!AskNetWareIP) != "" ifstr(i) $(!AskNetWareIP) == "yes" goto AskNetWareIPValid else-ifstr(i) $(!AskNetWareIP) == "no" goto AskNetWareIPValid else ; Error case the Variable AskNetWareIP does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "AskNetWareIP"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else ; set variable to blank set !AskNetWareIP = "" endif endif AskNetWareIPValid = + endif ; Error checking data in the Variables ifstr(i) $(!InstallNetWareIP) != "" ifstr(i) $(!InstallNetWareIP) == "yes" goto InstallNetWareIPValid else-ifstr(i) $(!InstallNetWareIP) == "no" goto InstallNetWareIPValid else ; Error case the Variable InstallNetWareIP does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "InstallNetWareIP"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else ; set variable to blank set !InstallNetWareIP = "" endif endif InstallNetWareIPValid = + endif ifstr(i) $(!AskNetWareIP) == "YES" ifstr(i) $(!InstallNetWareIP) == "YES" set STF_MB_DEF = 1 else set STF_MB_DEF = 2 endif set DlgType = "MessageBox" set STF_MB_TITLE = $(InstallNetWareIPMessageTitle) set STF_MB_TEXT = $(InstallNetWareIPMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 ui start "InstallNetWareIP" Ifstr(i) $(DLGEVENT) == "YES" set !InstallNetWareIP = "YES" else set !InstallNetWareIP = "NO" endif endif ifstr(i) $(!InstallNetWareIP) == "YES" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = install Shell "OEMNSVIP.INF" InstallOption $(!STF_LANGUAGE) "NetWareIP" "" NO NO NO Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set CommonStatus = STATUS_FAILED goto terminate Endif set CommonStatus = $($R0) Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Install of NetWareIP returned "$(CommonStatus) goto terminate Endif endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: Install-NWCMD ; ; PURPOSE: Called at install or update to install the ; IPX Compatibility Mode driver. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-NWCMD] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: InstallCompatMode = "$(!InstallCompatMode) ; Error checking data in the Variables ifstr(i) $(!InstallCompatMode) != "" ifstr(i) $(!InstallCompatMode) == "yes" goto InstallNWCMDValid else-ifstr(i) $(!InstallCompatMode) == "no" goto InstallNWCMDValid else ; Error case the Variable !InstallCompatMode does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "InstallCompatMode"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto end else ; set variable to blank set !InstallCompatMode = "" endif endif InstallNWCMDValid = + endif ifstr(i) $(!InstallCompatMode) == "YES" Debug-Output "OEMNPRNW.INF: Installing NWCMD" ; ; If running from an unattened file, just remove NetWareIP ; ; ifstr(i) $(!NWUnattendedFile) != "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NetWareIP" $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(TempKey) Debug-Output "OEMNPRNW.INF: Must remove NWIP before Installing NWCMD" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = deinstall Shell "oemnsvip.INF" InstallOption $(!STF_LANGUAGE) "NetWareIP" "" NO NO NO Set !NTN_InstallMode = $(OldInstallMode) endif ; endif Debug-Output "OEMNPRNW.INF: Installing NWCMD" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = install ; Shell "OEMNSVCM.INF" InstallOption $(!STF_LANGUAGE) "NWCMD" "" NO NO NO Shell "OEMNSVCM.INF" InstallOption $(!STF_LANGUAGE), "NWCMD", $(SrcDir), "YES", "YES", "NO" Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set CommonStatus = STATUS_FAILED goto terminate Endif set CommonStatus = $($R0) Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Install of NWCMD returned "$(CommonStatus) goto terminate Endif endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: InstallEx-AuthenticationPackage ; ; PURPOSE: Called at install time to install the ; NetWare Authentication Package. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [InstallEx-AuthenticationPackage] Read-syms GeneralConstants Read-syms FileConstants Read-syms ExtendedConstants read-syms InitBaseVars Set ValueName = "Authentication Packages" set Status = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\Lsa" $(MAXIMUM_ALLOWED) KeyLsa Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't open LSA key for authentication package" Set Status = STATUS_FAILED Goto IEX_Auth_Return Endif GetRegValue $(KeyLsa) $(ValueName) AuthValueList Set AuthList = *($(AuthValueList),4) Set DoIt = 1 ForListDo $(AuthList) Ifstr(i) $($) == $(PkgName) Set DoIt = 0 Endif EndForListDo Ifint $(DoIt) == 1 Set NewAuthList = >($(AuthList),$(PkgName)) SetRegValue $(KeyLsa) {$(ValueName),$(NoTitle),$(!REG_VT_MULTI_SZ),$(NewAuthList)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't update LSA value for authentication package" CloseRegKey $(KeyLsa) Set Status = STATUS_FAILED Goto IEX_Auth_Return Endif Endif CloseRegKey $(KeyLsa) IEX_Auth_Return = + Return $(Status) ;************************************************************************* ; ; SECTION: InstallEx-NetworkProvider ; ; PURPOSE: Called at install time to install the ; NetWare NetworkProvider. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [InstallEx-NetworkProvider] Read-syms GeneralConstants Read-syms FileConstants Read-syms ExtendedConstants read-syms InitBaseVars read-syms InstallOption$(!STF_LANGUAGE) Set ValueName = "ProviderOrder" Set Status = STATUS_SUCCESSFUL ; ; Set up the network provider order ; OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\NetworkProvider\order" $(MAXIMUM_ALLOWED) KeyPro Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(KeyPro) $(ValueName) ProValueList Set ProString = *($(ProValueList),4) ifstr(i) $(ProString) == "" ; ; We are the only one. Just set the value with our name ; SetRegValue $(KeyPro) {$(ValueName),$(NoTitle),$(!REG_VT_SZ),$(ProviderName)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't update ProviderOrder value" CloseRegKey $(KeyPro) Set Status = STATUS_FAILED goto IEX_Prov_Return Endif else ; ; Other providers are installed. Add us at the beginning. ; Split-string $(ProString) "," ProPieces Debug-Output "OEMNPRNW.INF: Provider list string is: "$(ProPieces) Set DoIt = 1 ForListDo $(ProPieces) Ifstr(i) $($) != "," Ifstr(i) $($) == $(ProviderName) Set DoIt = 0 Debug-Output "OEMNPRNW.INF: Provider already present" Endif Endif EndForListDo Ifint $(DoIt) == 1 Set NewPieces = "" Set NewPieces = >($(NewPieces),$(ProviderName)) Set NewPieces = >($(NewPieces),",") ForListDo $(ProPieces) Set NewPieces = >($(NewPieces),$($)) EndForListDo Set NewString = "" ForListDo $(NewPieces) Set NewString = $(NewString)$($) EndForListDo Debug-Output "OEMNPRNW.INF: New provider string is: "$(NewString) SetRegValue $(KeyPro) {$(ValueName),$(NoTitle),$(!REG_VT_SZ),$(NewString)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't update ProviderOrder value" CloseRegKey $(KeyPro) Set Status = STATUS_FAILED goto IEX_Prov_Return Endif Endif endif CloseRegKey $(KeyPro) else Debug-Output "OEMNPRNW.INF: Can't open NetworkProvder\order key" Set Status = STATUS_FAILED Goto IEX_Prov_Return Endif ; ; Set up the values under NetWareWorkstation ; Set WorkStation = $(!NTN_ServiceBase)"\"$(ProductNWFSName) Debug-Output "OEMNPRNW.INF: WorkStation is "$(WorkStation) OpenRegKey $(!REG_H_LOCAL) "" $(WorkStation) $(MAXIMUM_ALLOWED) WorkStationKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CreateRegKey $(WorkStationKey) {"NetworkProvider", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" ProviderKey Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) OpenRegKey $(WorkStationKey) "" "NetworkProvider" $(MAXIMUM_ALLOWED) ProviderKey Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't create or open NetworkProvider" CloseRegKey $(WorkstationKey) Set Status = STATUS_FAILED goto IEX_Prov_Return Endif Endif CloseRegKey $(WorkStationKey) else Debug-Output "OEMNPRNW.INF: Can't open "$(ProductNWFSName) Set Status = STATUS_FAILED goto IEX_Prov_Return Endif SetRegValue $(ProviderKey) {"Class", $(NoTitle), $(!REG_VT_DWORD), "3"} SetRegValue $(ProviderKey) {"DeviceName", $(NoTitle), $(!REG_VT_SZ), "\Device\NetWareRedirector"} SetRegValue $(ProviderKey) {"Name", $(NoTitle), $(!REG_VT_SZ), "NetWare Services"} ; ; ; ; The following items depend on which shell is running for NT. ; ; Find out which shell it is before continuing. ; ; ; ; set Winlogon = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\Winlogon" ; OpenRegKey $(!REG_H_LOCAL) "" $(Winlogon) $(MAXIMUM_ALLOWED) WinlogonKey ; Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; GetRegValue $(WinlogonKey) "Shell" ShellDataList ; Debug-Output "OEMNPRNW.INF: ShellDataList is "$(ShellDataList) ; Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; set ShellName = *($(ShellDataList), 4) ; Split-String $(ShellName) "." SplitList ; QueryListSize SplitListSize $(SplitList) ; Debug-Output "OEMNPRNW.INF: SplitList is "$(SplitList) ; Debug-Output "OEMNPRNW.INF: SplitList has "$(SplitListSize)" item(s)" ; set ShellName = *($(SplitList), 1) ; ifstr(i) $(ShellName) == "Explorer" ; ; ; ; ; Set up registry for new explorer. This is done with a call ; ; to the dll. The provider for NT 3.51 will also need to call ; ; this function if it detects an upgrade from NT 3.51 to 4.0 ; ; has occured. ; ; ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWSetup40Provider FreeLibrary $(NwLibHandle) ; ; else ; ; ; ; ; Set provider path for old provider ; ; ; ; SetRegValue $(ProviderKey) {"ProviderPath", $(NoTitle), $(!REG_VT_EXPAND_SZ), $(System32Root)"\netware.dll"} ; ; ; ; ; Set the value for the file manager add-ons ; ; ; ; OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion\File Manager\AddOns" $(MAXIMUM_ALLOWED) TempKey ; Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; SetRegValue $(TempKey) {"Novell NetWare Extension",$(NoTitle),$(!REG_VT_SZ),"nwfmext.dll"} ; CloseRegKey $(TempKey) ; else ; Debug-Output "OEMNPRNW.INF: Can't open File Manager\AddOns key" ; Set Status = STATUS_FAILED ; Goto IEX_Prov_Return ; Endif ; endif ; endif ; endif CloseRegKey $(ProviderKey) Set TempKeyName = $(!NTN_ServiceBase)"\NetWareWorkstation\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"ServerCacheTimeout", $(NoTitle), $(!REG_VT_DWORD), 21} CloseRegKey $(TempKey) endif IEX_Prov_Return = + Return $(Status) ;************************************************************************* ; ; SECTION: InstallEx-NetWarePrintServices ; ; PURPOSE: Called at install time to install the ; NetWare Print Services. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [InstallEx-NetWarePrintServices] Read-syms GeneralConstants Read-syms ExtendedConstants read-syms InitBaseVars Read-syms FileConstants Set ValueName = "Name" Set OrderName = "Order" Set Status = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(PrintProvider) $(MAXIMUM_ALLOWED) KeyPrint Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't open "$(PrintProvider)" key" Set Status = STATUS_FAILED Goto IEX_Nps_Return Endif CreateRegKey $(KeyPrint) {$(NetWarePrintProviderName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyProvider Ifint $(RegLastError) != !(!REG_ERROR_SUCCESS) OpenRegKey $(KeyPrint) "" $(NetWarePrintProviderName) $(MAXIMUM_ALLOWED) KeyProvider Ifint $(RegLastError) != !(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't open "$(NetWarePrintProviderName)" key" Set Status = STATUS_FAILED Goto IEX_Nps_Return endif Endif SetRegValue $(KeyProvider) {$(ValueName), $(NoTitle), $(!REG_VT_SZ), "nwspool.dll"} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't update NetWare Print Services value" Set Status = STATUS_FAILED Goto IEX_Nps_Return Endif CloseRegKey $(KeyProvider) CloseRegKey $(KeyPrint) ; ; Use NWInsertPrintProviderInOrder() to install ourselves in the print provider order. ; Note that removal from the order will happen by virtue of calling NWRemoveClient() ; or NWCleanUpNetWare() as we are in the uninstall section. ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWInsertPrintProviderInOrder $(NetWarePrintProviderName) FreeLibrary $(NwLibHandle) IEX_Nps_Return = + Return $(Status) ;************************************************************************* ; ; SECTION: Install-TCPIP ; ; PURPOSE: Called at install time and update time to install the ; TCPIP transport. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-TCPIP] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Tcpip" $(MAXIMUM_ALLOWED) KeyTCPIP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Installing TCPIP" ifstr(i) $(!NWUnattendedFile) == "" ifstr(i) $(!NWUnattendedSection) == "" ; ; Ask the user if they want to install TCPIP ; set DlgType = "MessageBox" set STF_MB_TITLE = $(InstallTcpipMessageTitle) set STF_MB_TEXT = $(InstallTcpipMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "InstallTCPIP" Ifstr(i) $(DLGEVENT) == "NO" Debug-Output "OEMNPRNW.INF: Don't install TCPIP" set CommonStatus = STATUS_USERCANCEL goto terminate Endif Endif Endif Debug-Output "OEMNPRNW.INF: Install TCPIP" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = install Set OldSTF_SRCDIR_OVERRIDE = $(!STF_SRCDIR_OVERRIDE) ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" ifstr(i) $(!TCPIP_SOURCE_PATH) == "" set !TCPIP_SOURCE_PATH = $(SrcDir) endif set STF_GUI_UNATTENDED_OLD = $(!STF_GUI_UNATTENDED) set STF_UNATTENDED_OLD = $(!STF_UNATTENDED) set STF_UNATTENDED_SECTION_OLD = $(!STF_UNATTENDED_SECTION) set !STF_GUI_UNATTENDED = YES set !STF_UNATTENDED = $(!NWUnattendedFile) set !STF_UNATTENDED_SECTION = $(!NWUnattendedSection) set !STF_SRCDIR_OVERRIDE = $(!TCPIP_SOURCE_PATH) Shell "oemnxptc.inf" InstallOption $(!STF_LANGUAGE) "TC" $(!TCPIP_SOURCE_PATH) YES YES YES set !STF_GUI_UNATTENDED = $(STF_GUI_UNATTENDED_OLD) set !STF_UNATTENDED = $(STF_UNATTENDED_OLD) set !STF_UNATTENDED_SECTION = $(STF_UNATTENDED_SECTION_OLD) goto InstallTCDone Endif Endif Set !STF_SRCDIR_OVERRIDE = "" Shell "oemnxptc.inf" InstallOption $(!STF_LANGUAGE) "TC" "" YES YES YES InstallTCDone = + Set !STF_SRCDIR_OVERRIDE = $(OldSTF_SRCDIR_OVERRIDE) Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set CommonStatus = STATUS_FAILED goto terminate Endif set CommonStatus = $($R0) Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNWInstall of TCPIP returned "$(CommonStatus) goto terminate Endif Else CloseRegKey $(KeyTCPIP) Endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: Install-NWLINK ; ; PURPOSE: Called at install time and update time to install the ; NWLINKIPX compatible transport. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-NWLINK] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NwLnkIpx" $(MAXIMUM_ALLOWED) KeyNWLINK ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Installing NWLINK" Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = install Set OldSTF_SRCDIR_OVERRIDE = $(!STF_SRCDIR_OVERRIDE) set !STF_SRCDIR_OVERRIDE = "" Shell "oemnxpip.inf" InstallOption $(!STF_LANGUAGE) "NWLNKIPX" "" YES YES YES Set !STF_SRCDIR_OVERRIDE = $(OldSTF_SRCDIR_OVERRIDE) Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set CommonStatus = STATUS_FAILED goto terminate Endif set CommonStatus = $($R0) Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: Install of NWLINK returned "$(CommonStatus) goto terminate Endif ifstr(i) $(!P:AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Tcpip" $(MAXIMUM_ALLOWED) KeyTCPIP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) set DlgType = "MessageBox" set STF_MB_TITLE = $(NoProtocolSAMTitle) set STF_MB_TEXT = $(NoProtocolSAMText) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NWLINKReboot" Ifstr(i) $(DLGEVENT) == "NO" Debug-Output "OEMNPRNW.INF: Don't reboot after NWLINK SAM condition" set CommonStatus = STATUS_USERCANCEL goto terminate else LibraryProcedure LibResult $(!LIBHANDLE) ShutdownSystem YES set CommonStatus = STATUS_USERCANCEL Endif else CloseRegKey $(KeyTCPIP) endif endif endif Else CloseRegKey $(KeyNWLINK) Endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: Remove-NWLINK ; ; PURPOSE: Called at install time and update time to remove the ; NWLINKIPX compatible transport. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Remove-NWLINK] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NwLnkIpx" $(MAXIMUM_ALLOWED) KeyNWLINK ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Removing NWLINK" CloseRegKey $(KeyNWLINK) Set OldInstallMode = $(!NTN_InstallMode) Set !NTN_InstallMode = deinstall Shell "oemnxpip.inf" InstallOption $(!STF_LANGUAGE) "NWLNKIPX" "" NO NO NO Set !NTN_InstallMode = $(OldInstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set CommonStatus = STATUS_FAILED goto terminate Endif set CommonStatus = $($R0) Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL Debug-Output "OEMNPRNW.INF: DeInstall of NWLINK returned "$(CommonStatus) goto terminate Endif Endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: Install-Gina ; ; PURPOSE: Called at install or update to install the ; NetWare GINA dll. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-Gina] read-syms GeneralConstants read-syms FileConstants read-syms InstallOption$(!STF_LANGUAGE) ; ; Assume all is well until we find out otherwise ; set CommonStatus = STATUS_SUCCESSFUL ; ; ; ; Find out if this is a CITRIX machine. We cannot replace the GINA ; ; if it is. Must special case for them. ; ; ; set TempKeyName = "SYSTEM\CurrentControlSet\Control\Citrix\License" ; OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; ; This section will add the NWGINA.DLL for graphical authentication ; at install time and at update time if the default MSGINA.DLL ; is being used. ; set WinLogon = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\Winlogon" OpenRegKey $(!REG_H_LOCAL) "" $(WinLogon) $(MAXIMUM_ALLOWED) WinLogonKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set InstallNWGina = "FALSE" set AWGinaInstalled = "FALSE" GetRegValue $(WinLogonKey) "GinaDLL" GinaDLLList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set GinaDLLListData = *($(GinaDLLList), 4) ; ; GinaDLL value exists, only change it if it contains ; the MSGINA.DLL string. ; ifstr(i) $(GinaDLLListData) == "MSGINA.DLL" set InstallNWGina = "TRUE" else-ifstr(i) $(GinaDLLListData) == "MSGINA" set InstallNWGina = "TRUE" else-ifstr(i) $(GinaDLLListData) == "NWGINA.DLL" set InstallNWGina = "TRUE" else-ifstr(i) $(GinaDLLListData) == "AWGINA.DLL" set AWGinaInstalled = "TRUE" else Debug-Output "OEMNPRNW.INF: Found 3rd party GINA: "$(GinaDLLListData) set UnattendedGINA = FALSE ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" set UnattendedGINA = TRUE Debug-Output "OEMNPRNW.INF: Check unattended file for use GINA settings" endif endif ifstr(i) $(UnattendedGINA) == FALSE Split-string $(GinaDLLListData) "\:." GinaPieces ifcontains(i) "SFGINA" in $(GinaPieces) Debug-Output "OEMNPRNW.INF: SFGINA found" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure Filedate, $(NwLibHandle), NWGetFileDate, $(GinaDLLListData) FreeLibrary $(NwLibHandle) ifint $(Filedate) <= 19980204 Debug-Output "OEMNPRNW.INF: old SFGINA found prompting user" ; ; Ask the user if they want to replace the ; installed GINA with our NWGINA ; set DlgType = "MessageBox" set STF_MB_TITLE = $(ReplaceGINAMessageTitle) set STF_MB_TEXT = $(NetoriaGINAMessageText) set STF_MB_TYPE = 1 set STF_MB_ICON = 2 set STF_MB_DEF = 1 ui start "NetoriaGINA" Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Graphical Login\NWLGE" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifstr(i) $(TempKey) != $(KeyNull) DeleteRegTree $(TempKey) "SFLOGIN" CloseRegKey $(TempKey) Endif set InstallNWGina = "TRUE" else Debug-Output "OEMNPRNW.INF: new SFGINA found just use it" set InstallNWGina = "FALSE" endif endif else ; Error checking data in the Variables ifstr(i) $(!AskUseNetWareGINA) != "" ifstr(i) $(!AskUseNetWareGINA) == "yes" goto AskUseNetWareGINAValid else-ifstr(i) $(!AskUseNetWareGINA) == "no" goto AskUseNetWareGINAValid else ; Error case the Variable AskUseNetWareGINA does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "AskUseNetWareGINA"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto terminate else ; set variable to blank set !AskUseNetWareGINA = "" endif endif AskUseNetWareGINAValid = + endif ; Error checking data in the Variables ifstr(i) $(!UseNetWareGINA) != "" ifstr(i) $(!UseNetWareGINA) == "yes" goto UseNetWareGINAValid else-ifstr(i) $(!UseNetWareGINA) == "no" goto UseNetWareGINAValid else ; Error case the Variable UseNetWareGINA does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "UseNetWareGINA"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto terminate else ; set variable to blank set !UseNetWareGINA = "" endif endif UseNetWareGINAValid = + endif endif Debug-Output "OEMNPRNW.INF: !AskUseNetWareGINA = "$(!AskUseNetWareGINA) Debug-Output "OEMNPRNW.INF: !UseNetWareGINA = "$(!UseNetWareGINA) ifstr(i) $(!AskUseNetWareGINA) != "NO" Debug-Output "OEMNPRNW.INF: asking if we should replace 3rd party GINA" ; ; Ask the user if they want to replace the ; installed GINA with our NWGINA ; set DlgType = "MessageBox" set STF_MB_TITLE = $(ReplaceGINAMessageTitle) set STF_MB_TEXT = $(ReplaceGINAMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 2 set STF_MB_DEF = 1 ifstr(i) $(!UseNetWareGINA) == "NO" set STF_MB_DEF = 2 endif ui start "ReplaceGINA" Ifstr(i) $(DLGEVENT) == "NO" set InstallNWGina = "FALSE" else set InstallNWGina = "TRUE" endif else ifstr(i) $(!UseNetWareGINA) != "NO" Debug-Output "OEMNPRNW.INF: install the Novell GINA" set InstallNWGina = "TRUE" endif endif endif else ; ; GinaDLL value did not exist. Use our GINA ; set InstallNWGina = "TRUE" endif ifstr(i) $(AWGinaInstalled) == "TRUE" Debug-Output "OEMNPRNW.INF: PC Anywhere GINA detected" set SystemText = $(!NTN_SoftwareBase)"\Symantec\PCAnywhere\CurrentVersion\System" OpenRegKey $(!REG_H_LOCAL) "" $(SystemText) $(MAXIMUM_ALLOWED) SystemKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(SystemKey) "GinaDLL" GinaDLLList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set GinaDLLListData = *($(GinaDLLList), 4) ; ; GinaDLL value exists, only change it if it contains ; the MSGINA.DLL string. ; ifstr(i) $(GinaDLLListData) == "MSGINA.DLL" set InstallNWGina = "TRUE" else-ifstr(i) $(GinaDLLListData) == "MSGINA" set InstallNWGina = "TRUE" else-ifstr(i) $(GinaDLLListData) == "NWGINA.DLL" set InstallNWGina = "TRUE" else Debug-Output "OEMNPRNW.INF: PC Anywhere other GINA is: " $(GinaDLLListData) set UnattendedGINA = FALSE ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" set UnattendedGINA = TRUE Debug-Output "OEMNPRNW.INF: use unattended settings for PC Anywhere GINA" endif endif ifstr(i) $(UnattendedGINA) == FALSE Split-string $(GinaDLLListData) "\:." GinaPieces ifcontains(i) "SFGINA" in $(GinaPieces) Debug-Output "OEMNPRNW.INF: PC Anywhere other GINA is SFLOGIN" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure Filedate, $(NwLibHandle), NWGetFileDate, $(GinaDLLListData) FreeLibrary $(NwLibHandle) ifint $(Filedate) <= 19980204 ; ; Ask the user if they want to replace the ; installed GINA with our NWGINA ; set DlgType = "MessageBox" set STF_MB_TITLE = $(ReplaceGINAMessageTitle) set STF_MB_TEXT = $(NetoriaGINAMessageText) set STF_MB_TYPE = 1 set STF_MB_ICON = 2 set STF_MB_DEF = 1 ui start "NetoriaGINA" Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Graphical Login\NWLGE" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifstr(i) $(TempKey) != $(KeyNull) DeleteRegTree $(TempKey) "SFLOGIN" CloseRegKey $(TempKey) Endif set InstallNWGina = "TRUE" else set InstallNWGina = "FALSE" endif endif else ; Error checking data in the Variables ifstr(i) $(!AskUseNetWareGINA) != "" ifstr(i) $(!AskUseNetWareGINA) == "yes" goto AskUseNetWareGINAValid2 else-ifstr(i) $(!AskUseNetWareGINA) == "no" goto AskUseNetWareGINAValid2 else ; Error case the Variable UseNetWareGINA does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "AskUseNetWareGINA"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto terminate else ; set variable to blank set !AskUseNetWareGINA = "" endif endif AskUseNetWareGINAValid2 = + endif ; Error checking data in the Variables ifstr(i) $(!UseNetWareGINA) != "" ifstr(i) $(!UseNetWareGINA) == "yes" goto UseNetWareGINAValid2 else-ifstr(i) $(!UseNetWareGINA) == "no" goto UseNetWareGINAValid2 else ; Error case the Variable UseNetWareGINA does not contains valid YES or NO but does contain something. set DlgType = "MessageBox" set STF_MB_TITLE = $(FunctionTitle) set STF_MB_TEXT = "UseNetWareGINA"$(ClientParamError) set STF_MB_TYPE = 3 set STF_MB_ICON = 4 set STF_MB_DEF = 1 ui start "NoAdapter" Ifstr(i) $(DLGEVENT) == "NO" set CommonStatus = STATUS_USERCANCEL goto terminate else ; set variable to blank set !UseNetWareGINA = "" endif endif UseNetWareGINAValid2 = + endif endif ifstr(i) $(!AskUseNetWareGINA) != "NO" ; ; Ask the user if they want to replace the ; installed GINA with our NWGINA ; set DlgType = "MessageBox" set STF_MB_TITLE = $(ReplaceGINAMessageTitle) set STF_MB_TEXT = $(ReplaceGINAMessageText) set STF_MB_TYPE = 3 set STF_MB_ICON = 2 set STF_MB_DEF = 1 ifstr(i) $(!UseNetWareGINA) == "NO" set STF_MB_DEF = 2 endif ui start "ReplaceGINA" Ifstr(i) $(DLGEVENT) == "NO" set InstallNWGina = "FALSE" else set InstallNWGina = "TRUE" endif else ifstr(i) $(!UseNetWareGINA) != "NO" Debug-Output "OEMNPRNW.INF: use Novell GINA for PC Anywhere other GINA" set InstallNWGina = "TRUE" endif endif endif else ; ; GinaDLL value did not exist. Use our GINA. ; set InstallNWGina = "TRUE" endif else ; ; Symantec\PCAnywhere\CurrentVersion\System did not exist. ; Use our GINA. ; set InstallNWGina = "TRUE" endif ifstr(i) $(InstallNWGina) == "TRUE" ; ; Set the GinaDLL value and other values in the System area ; Debug-Output "OEMNPRNW.INF: replacing PC Anywhere other GINA with NWGINA.DLL" SetRegValue $(SystemKey) {"GinaDLL", $(NoTitle), $(!REG_VT_SZ), "NWGINA.DLL"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add NWGINA.DLL to GinaDLL value in "$(SystemText) endif endif CloseRegKey $(SystemKey) endif ifstr(i) $(InstallNWGina) == "TRUE" Debug-OutPut "OEMNPRNW.INF: Setting up to use our NWGINA.DLL" ifstr(i) $(AWGinaInstalled) != "TRUE" ; ; Set the GinaDLL value and other values in the winlogin area ; Debug-Output "OEMNPRNW.INF: replacing 3rd party GINA with NWGINA.DLL" SetRegValue $(WinLogonKey) {"GinaDLL", $(NoTitle), $(!REG_VT_SZ), "NWGINA.DLL"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add NWGINA.DLL to GinaDLL value in "$(WinLogon) endif endif ; ; Create software\novell\nwgina to set other values ; Set GinaKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA" CreateRegKey $(!REG_H_LOCAL) {$(GinaKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" GinaKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) OpenRegKey $(!REG_H_LOCAL) "" $(GinaKeyName) $(MAXIMUM_ALLOWED) GinaKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to create or open "$(GinaKeyName) endif endif ; ; Create Policy Support key if NT version 4.00 or greater ; ; Set PolicyKeyName = "Policy Support" ; CreateRegKey $(GinaKey) {$(PolicyKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" PolicyKey ; ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; SetRegValue $(PolicyKey) {"Policy Path", $(NoTitle), $(!REG_VT_SZ), ""} ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to set the Policy Path for NWGINA.DLL" ; endif ; ; CloseRegKey $(PolicyKey) ; else ; Debug-Output "OEMNPRNW.INF: Failed to create "$(PolicyKeyName) ; endif ; ; Create Roaming Profiles key ; Set ProfileKeyName = "Roaming Profiles" CreateRegKey $(GinaKey) {$(ProfileKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" ProfileKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(ProfileKey) {"Storage Type", $(NoTitle), $(!REG_VT_SZ), "Home Directory"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set the Storage Type for NWGINA.DLL" endif SetRegValue $(ProfileKey) {"NetWare Storage", $(NoTitle), $(!REG_VT_DWORD), 0} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set the NetWare Storage for NWGINA.DLL" endif CloseRegKey $(ProfileKey) else ; ; This section will run at update time since the key already ; existed. Some things changed so update them now. ; Debug-Output "OEMNPRNW.INF: Failed to create "$(ProfileKeyName) OpenRegKey $(GinaKey) "" $(ProfileKeyName) $(MAXIMUM_ALLOWED) ProfileKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; There is no access rights of any kind any more. Delete all ; old values we may have used. ; DeleteRegValue $(ProfileKey) "Access Rights" DeleteRegValue $(ProfileKey) "Container Access" DeleteRegValue $(ProfileKey) "Container Access Rights" ; ; Value "NDS Storage Type" changed to "Storage Type". Also ; the value data of "User Home Directory" changed to "Home Directory". ; Read value data and save under new value name ; GetRegValue $(ProfileKey) "NDS Storage Type" StorageList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set StorageListData = *($(StorageList), 4) ifstr(i) $(StorageListData) == "User Home Directory" SetRegValue $(ProfileKey) {"Storage Type", $(NoTitle), $(!REG_VT_SZ), "Home Directory"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set the Storage Type for NWGINA.DLL" endif else SetRegValue $(ProfileKey) {"Storage Type", $(NoTitle), $(!REG_VT_SZ), $(StorageListData)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set the Storage Type for NWGINA.DLL" endif endif DeleteRegValue $(ProfileKey) "NDS Storage Type" ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to delete the NDS Storage Type for NWGINA.DLL" endif endif CloseRegKey $(ProfileKey) else Debug-Output "OEMNPRNW.INF: Failed to open "$(ProfileKeyName) endif endif ; ; Create Welcome Screen key ; Set WelcomeKeyName = "Welcome Screen" CreateRegKey $(GinaKey) {$(WelcomeKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" WelcomeKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; SetRegValue $(WelcomeKey) {"Bitmap", $(NoTitle), $(!REG_VT_SZ), "NWELCOME.BMP"} ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to set the Bitmap for NWGINA.DLL" ; endif ; ; SetRegValue $(WelcomeKey) {"Header Message", $(NoTitle), $(!REG_VT_SZ), $(DefaultLoginCaption)} ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to set the Header Message for NWGINA.DLL" ; endif CloseRegKey $(WelcomeKey) else Debug-Output "OEMNPRNW.INF: Failed to create "$(WelcomeKeyName) ifstr(i) $(!P:OldNLSDirName) != $(!P:NLSDirName) Debug-Output "OEMNPRNW.INF: Language changed it was - "$(!P:OldNLSDirName)" it is now - "$(!P:NLSDirName) Set GinaWelcome = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\"$(WelcomeKeyName) OpenRegKey $(!REG_H_LOCAL) "" $(GinaWelcome) $(MAXIMUM_ALLOWED) WelcomeKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(WelcomeKey) {"Header Message", $(NoTitle), $(!REG_VT_SZ), $(DefaultLoginCaption)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set the Header Message for NWGINA.DLL" else Debug-Output "OEMNPRNW.INF: Reset the Header Message for NWGINA.DLL" endif CloseRegKey $(WelcomeKey) endif endif endif CloseRegKey $(GinaKey) ; ; Now that the NWGINA key has been created or updated, ; set the ACL for it. ; ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; LibraryProcedure GUIResult $(NwLibHandle) NWSetKeySecurity "Software\Novell\NWGina" "ON" ; FreeLibrary $(NwLibHandle) else Debug-Output "OEMNPRNW.INF: GINA will not be installed" endif CloseRegKey $(WinLogonKey) else Debug-Output "OEMNPRNW.INF: Error opening "$(WinLogon) endif ; else ; CloseRegKey $(TempKey) ; Debug-Output "OEMNPRNW.INF: This is a CITRIX Server machine" ; Debug-Output "OEMNPRNW.INF: We are NOT replacing MSGINA" ; ; ; ; ; Check to see if our NWGINA needs to be removed because this is a CITRIX ; ; machine and an old client that did not check for it was installed. ; ; ; ; set WinLogon = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\Winlogon" ; OpenRegKey $(!REG_H_LOCAL) "" $(WinLogon) $(MAXIMUM_ALLOWED) WinLogonKey ; ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; set RemoveNWGina = "FALSE" ; GetRegValue $(WinLogonKey) "GinaDLL" GinaDLLList ; ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; set GinaDLLListData = *($(GinaDLLList), 4) ; ; ; ; ; GinaDLL value exists, only remove our NWGINA. ; ; ; ; ifstr(i) $(GinaDLLListData) == "NWGINA.DLL" ; set RemoveNWGina = "TRUE" ; else-ifstr(i) $(GinaDLLListData) == "NWGINA" ; set RemoveNWGina = "TRUE" ; endif ; endif ; ; ifstr(i) $(RemoveNWGina) == "TRUE" ; Debug-OutPut "OEMNPRNW.INF: Removing our NWGINA.DLL" ; ; ; ; ; Remove our GINA ; ; ; ; DeleteRegValue $(WinLogonKey) "GinaDLL" ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to delete GinaDLL value in "$(WinLogon) ; endif ; else ; Debug-Output "OEMNPRNW.INF: GinaDLL value will not be removed" ; endif ; ; CloseRegKey $(WinLogonKey) ; else ; Debug-Output "OEMNPRNW.INF: Error opening "$(WinLogon) ; endif ; endif terminate = + Return $(CommonStatus) ;************************************************************************* ; ; SECTION: AddServiceDependency ; ; PURPOSE: Adds a dependency on a service to another service ; ; ARGUMENTS: 0 - Service to add the dependency on ; 1 - Service that it depends on ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [AddServiceDependency] Debug-Output "AddServiceDependency: entry" set MAXIMUM_ALLOWED = 33554432 set SERVICE_NO_CHANGE = 4294967295 set Status = STATUS_FAILED Set KeyNull = "" set DependentService = $(!NTN_ServiceBase)\$($0) set DependentName = $($0) set DependOn = $($1) set ServiceKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService)"\Linkage" $(MAXIMUM_ALLOWED) ServiceKey ifstr(i) $(ServiceKey) != $(KeyNull) GetRegValue $(ServiceKey) "OtherDependencies" ServicesList ifint $(RegLastError) != 0 set ServiceValues = {} else set ServiceValues = *($(ServicesList),4) endif debug-output "AddServiceDependency: Old OtherDependencies: "$(ServiceValues) ifstr(i) $(ServiceValues) == {} Set ServiceValues = {$(DependOn)} else-ifstr(i) $(ServiceValues) == "" Set ServiceValues = {$(DependOn)} else-ifcontains(i) $(DependOn) in $(ServiceValues) return STATUS_SUCCESSFUL else Set ServiceValues = >($(ServiceValues), $(DependOn)) endif debug-output "AddServiceDependency: New OtherDependencies: "$(ServiceValues) SetRegValue $(ServiceKey) {OtherDependencies, 0,+ $(!REG_VT_MULTI_SZ), $(ServiceValues)} CloseRegKey $(ServiceKey) set Status = STATUS_SUCCESSFUL else Debug-Output "AddServiceDependency: error opening service "$(DependentService)"\Linkage" Debug-Output "AddServiceDependency: error was: "$(RegLastError) endif set KeyService = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService) $(MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set newDependList = {$(DependOn)} GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "AddServiceDependency: old DependOnService List "*($(ServiceList), 4) ForListDo *($(ServiceList),4) ifstr(i) $($) != $(DependOn) set newDependList = >($(newDependList), $($)) endif EndForListDo endif GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 Debug-Output "AddServiceDependency: old DependOnGroup List "*($(GrpList), 4) ForListDo *($(GrpList),4) set grp = "+"$($) set newDependList = >($(newDependList), $(grp)) EndForListDo endif Debug-Output "OEMNSVRA.INF: AddServiceDependency: new Dependency List "$(newDependList) LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $(DependentName) $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), "", "", $(newDependList), "", "", "" CloseRegKey $(KeyService) else Debug-Output "AddServiceDependency: failed to open service linkage key"$(DependentService) Debug-Output "AddServiceDependency: error was: "$(RegLastError) endif Debug-Output "AddServiceDependency: exit" return $(Status) ;************************************************************************* ; ; SECTION: RemoveServiceDependency ; ; PURPOSE: Removes a dependency on a service from another service ; ; ARGUMENTS: 0 - Service to remove the dependency from ; 1 - Service to remove ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [RemoveServiceDependency] Debug-Output "RemoveServiceDependency: entry" set MAXIMUM_ALLOWED = 33554432 set SERVICE_NO_CHANGE = 4294967295 set Status = STATUS_FAILED Set KeyNull = "" set DependentService = $(!NTN_ServiceBase)\$($0) set DependentName = $($0) set DependOn = $($1) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService)"\Linkage" $(MAXIMUM_ALLOWED) ServiceKey ifstr(i) $(ServiceKey) != $(KeyNull) GetRegValue $(ServiceKey) "OtherDependencies" ServicesList ifint $(RegLastError) != 0 set ServiceValues = {} else set ServiceValues = *($(ServicesList),4) endif debug-output "RemoveServiceDependency: old OtherDependencies list:"$(ServicesList) set ServiceValues = *($(ServicesList),4) debug-output "ServiceValues: "$(ServiceValues) ifcontains(i) $(DependOn) in $(ServiceValues) set NewServiceValues = {} ForListDo $(ServiceValues) ifstr(i) $($) != $(DependOn) set NewServiceValues = >($(NewServiceValues), $($)) endif EndForListDo debug-output "RemoveServiceDependency: new OtherDependencies list: "$(NewServiceValues) SetRegValue $(ServiceKey) {OtherDependencies, 0,+ $(!REG_VT_MULTI_SZ), $(NewServiceValues)} else endif CloseRegKey $(ServiceKey) set Status = STATUS_SUCCESSFUL else Debug-Output "RemoveServiceDependency: error opening service "$(DependentService)"\Linkage" endif set KeyService = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService) $(MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set newDependList = {} GetRegValue $(KeyService) "DeleteFlag" DeleteFlagValue ifint $(RegLastError) != 0 GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "RemoveServiceDependency: old DependOnService List "*($(ServiceList), 4) ifcontains(i) $(DependOn) in *($(ServiceList),4) ForListDo *($(ServiceList),4) ifstr(i) $($) != $(DependOn) set newDependList = >($(newDependList), $($)) endif EndForListDo GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 ForListDo *($(GrpList),4) set grp = "+"$($) set newDependList = >($(newDependList), $(grp)) EndForListDo endif Debug-Output "OEMNSVRA.INF:RemoveServiceDependency: new DependOnService List "$(newDependList) LibraryProcedure Result, $(!LIBHANDLE), + SetupChangeServiceConfig, $(DependentName) + $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), + $(SERVICE_NO_CHANGE), "", "", + $(newDependList), "", "", "" endif endif endif CloseRegKey $(KeyService) else Debug-Output "RemoveServiceDependency: failed to open service linkage key"$(DependentService) endif Debug-Output "RemoveServiceDependency: exit" return $(Status) ;*************************************************************** ; INSTALL SECTIONS ;*************************************************************** ;************************************************************************* ; ; SECTION: Install-Parameters ; ; PURPOSE: Called at install or update to add ; software\novell\parameters and a few values ; to HKEY_LOCAL_MACHINE ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-Parameters] ; ; Add the NwcsInstalled value ; OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion\NWCS" $(MAXIMUM_ALLOWED) KeyProduct Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion" $(MAXIMUM_ALLOWED) CurrentVersion Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CreateRegKey $(CurrentVersion) {"NWCS", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyProduct ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Creating Key 'NWCS'" Endif CloseRegKey $(CurrentVersion) else Debug-Output "OEMNPRNW.INF: Can't open Software\Microsoft\Windows NT\CurrentVersion" Endif Endif SetRegValue $(KeyProduct) {"NwcsInstalled", $(NoTitle), $(!REG_VT_SZ), "1"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Setting value 'NwcsInstalled'" endif CloseRegKey $(KeyProduct) ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" ; ; Add HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\NDS4NT ; OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows\CurrentVersion\Uninstall\NDS4NT" $(MAXIMUM_ALLOWED) KeyNDS4NT Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows\CurrentVersion\Uninstall" $(MAXIMUM_ALLOWED) KeyUninstall Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyUninstall) {"NDS4NT", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNDS4NT ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Creating Key 'NDS4NT'" Endif CloseRegKey $(KeyUninstall) else Debug-Output "OEMNPRNW.INF: Can't open Software\Microsoft\Windows\CurrentVersion\Uninstall" Endif Endif Endif Endif SetRegValue $(KeyNDS4NT) {"DisplayName", $(NoTitle), $(!REG_VT_SZ), "NDS for NT v2.1"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Setting value 'DisplayName'" endif SetRegValue $(KeyNDS4NT) {"UninstallString", $(NoTitle), $(!REG_VT_SZ), "SAMMIG.EXE"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "FATAL Registry Error: Error Setting value 'SAMMIG.EXE'" endif CloseRegKey $(KeyNDS4NT) ; ; Set Version number ; set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"CurrentVersion", $(NoTitle), $(!REG_VT_SZ), $(ProductVersion)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update CurrentVersion value in "$(TempKeyName) endif CloseRegKey $(TempKey) Endif ; ; HKEY_LOCAL_MACHINE\Software\Novell\NetWareWorkstation\CurrentVersion ; set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NetWareWorkstation\CurrentVersion" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"SourcePath", $(NoTitle), $(!REG_VT_SZ), $(SrcDir)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update SourcePath value in "$(TempKeyName) endif SetRegValue $(TempKey) {"BuildNumber", $(NoTitle), $(!REG_VT_SZ), $(BuildNumber)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update BuildNumber value in "$(TempKeyName) endif ; ; Set internal versions ; set HaveInternalVersion = YES ifint $(!MajorInternalVersion) == 0 ifint $(!MinorInternalVersion) == 0 set HaveInternalVersion = NO endif endif ifstr(i) $(HaveInternalVersion) == NO DeleteRegValue $(TempKey) "MajorInternalVersion" DeleteRegValue $(TempKey) "MinorInternalVersion" else SetRegValue $(TempKey) {"MajorInternalVersion", $(NoTitle), $(!REG_VT_DWORD), $(!MajorInternalVersion)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update MajorInternalVersion value in "$(TempKeyName) endif SetRegValue $(TempKey) {"MinorInternalVersion", $(NoTitle), $(!REG_VT_DWORD), $(!MinorInternalVersion)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update MinorInternalVersion value in "$(TempKeyName) endif endif CloseRegKey $(TempKey) endif ; ; HKEY_LOCAL_MACHINE\Software\Novell\Parameters ; set SoftwareNovell = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareNovell) $(MAXIMUM_ALLOWED) KeySoftwareNovell ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovell) Else set NovellParameters = "Parameters" OpenRegKey $(KeySoftwareNovell) "" $(NovellParameters) $(MAXIMUM_ALLOWED) KeyNovellParameters ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeySoftwareNovell) {$(NovellParameters), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNovellParameters ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\Parameters" Endif Endif Endif Ifstr(i) $(KeyNovellParameters) != "" GetRegValue $(KeyNovellParameters) "First Network Drive" DriveList ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNovellParameters) {"First Network Drive", $(NoTitle), $(!REG_VT_DWORD), 6} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add first network drive value to "$(SoftwareNovell)"\Parameters" endif endif SetRegValue $(KeyNovellParameters) {"NWLanguage", $(NoTitle), $(!REG_VT_SZ), $(NLSDirName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add NWLanguage value to "$(SoftwareNovell)"\Parameters" endif ; SetRegValue $(KeyNovellParameters) {"VDMFastConn", $(NoTitle), $(!REG_VT_DWORD), 1} ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Failed to add VDMFastConn value to "$(SoftwareNovell)"\Parameters" ; endif ifstr(i) $(!InstallCompatMode) == "YES" SetRegValue $(KeyNovellParameters) {"Protocols", $(NoTitle), $(!REG_VT_SZ), "IP"} else-ifstr(i) $(!DO_TCPIP) == "NO" SetRegValue $(KeyNovellParameters) {"Protocols", $(NoTitle), $(!REG_VT_SZ), "IPX"} else-ifstr(i) $(!DO_TCPIP) == "YES" ifstr(i) $(!DO_NWLINK) == "YES" SetRegValue $(KeyNovellParameters) {"Protocols", $(NoTitle), $(!REG_VT_SZ), "IPIPX"} else SetRegValue $(KeyNovellParameters) {"Protocols", $(NoTitle), $(!REG_VT_SZ), "IPNOCM"} endif endif Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update Protocols value in "$(KeyNovellParameters) endif CloseRegKey $(KeyNovellParameters) Endif Ifstr(i) $(KeySoftwareNovell) != "" CloseRegKey $(KeySoftwareNovell) Endif ; ; HKEY_LOCAL_MACHINE\Software\Novell\Print ; set SoftwareNovell = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareNovell) $(MAXIMUM_ALLOWED) KeySoftwareNovell ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovell) Else set NovellPrint = "Print" OpenRegKey $(KeySoftwareNovell) "" $(NovellPrint) $(MAXIMUM_ALLOWED) KeyNovellPrint ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeySoftwareNovell) {$(NovellPrint), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNovellPrint ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\Print" Endif Endif Endif Ifstr(i) $(KeyNovellPrint) != "" CreateRegKey $(KeyNovellPrint) {"Connection Check Interval", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyCCInterval ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyCCInterval) {"CheckTime", $(NoTitle), $(!REG_VT_DWORD), 15} CloseRegKey $(KeyCCInterval) Endif CreateRegKey $(KeyNovellPrint) {"Status Check Interval", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeySCInterval ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeySCInterval) {"CheckTime", $(NoTitle), $(!REG_VT_DWORD), 15} CloseRegKey $(KeySCInterval) Endif CreateRegKey $(KeyNovellPrint) {"Refresh Rate", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyRefresh ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyRefresh) {"Refresh Rate", $(NoTitle), $(!REG_VT_DWORD), 15} CloseRegKey $(KeyRefresh) Endif CloseRegKey $(KeyNovellPrint) Endif Ifstr(i) $(KeySoftwareNovell) != "" CloseRegKey $(KeySoftwareNovell) Endif ; ; Add netware.drv to the known dlls list here ; OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\WOW" $(MAXIMUM_ALLOWED) WowKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(WowKey),"KnownDLLS", KnownDLLsInfo ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Split-String *($(KnownDLLsInfo),4), " ", KnownDLLsList Ifcontains(i) "netware.drv" not-in $(KnownDLLsList) ifstr(i) *($(KnownDLLsInfo),4) == "" set KnownDLLs = "netware.drv" else set KnownDLLs = *($(KnownDLLsInfo),4)" netware.drv" endif SetRegValue $(WowKey) {"KnownDLLS",$(NoTitle),$(!REG_VT_SZ),$(KnownDLLs)} endif CloseRegKey $(WowKey) endif endif ; ; Migrate the policy settings into the GINA area ; set UpdateKeyName = "System\CurrentControlSet\Control\Update" OpenRegKey $(!REG_H_LOCAL) "" $(UpdateKeyName) $(MAXIMUM_ALLOWED) UpdateKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(!REG_H_LOCAL) {$(UpdateKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" UpdateKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating "$(UpdateKeyName) Endif endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set UpdateMode = "" set Path = "" GetRegValue $(UpdateKey),"UpdateMode", UpdateModeInfo ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set UpdateMode = *($(UpdateModeInfo),4) endif GetRegValue $(UpdateKey),"Path", PathInfo ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set Path = *($(PathInfo),4) endif CloseRegKey $(UpdateKey) ifstr(i) $(UpdateMode) == "" set CheckDefault = 1 SetRegValue $(UpdateKey) {"UpdateMode", $(NoTitle), $(!REG_VT_DWORD), $(CheckDefault)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update UpdateMode value in "$(UpdateKeyName) endif else-ifstr(i) $(UpdateMode) == 1 set CheckDefault = 1 else-ifstr(i) $(UpdateMode) == 0 set CheckDefault = 0 else-ifstr(i) $(UpdateMode) == 2 set CheckDefault = 0 endif set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Policy Support" ; OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ; ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Creating "$(TempKeyName) CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating "$(TempKeyName) Endif ; endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ifstr(i) $(CheckDefault) == 1 DeleteRegValue $(TempKey) "Check Default" ; delete because 1 is the default value else GetRegValue $(TempKey) "Check Default" TempCheckDefaultList ; get new value Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"Check Default", $(NoTitle), $(!REG_VT_DWORD), $(CheckDefault)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Unable to update Check Default value in "$(TempKeyName) endif endif endif ; GetRegValue $(TempKey) "Policy Path" TempPolicyPathList ; get new value ; Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; SetRegValue $(TempKey) {"Policy Path", $(NoTitle), $(!REG_VT_SZ), $(Path)} ; Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; Debug-Output "OEMNPRNW.INF: Unable to update Path value in "$(TempKeyName) ; endif ; endif CloseRegKey $(TempKey) endif endif ; ; HKEY_LOCAL_MACHINE\Software\Novell\CLSID ; set SoftwareNovell = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareNovell) $(MAXIMUM_ALLOWED) KeySoftwareNovell ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovell) Else set NovellCLSID = "CLSID" OpenRegKey $(KeySoftwareNovell) "" $(NovellCLSID) $(MAXIMUM_ALLOWED) KeyNovellCLSID ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeySoftwareNovell) {$(NovellCLSID), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNovellCLSID ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\CLSID" Endif Endif Endif Ifstr(i) $(KeyNovellCLSID) != "" CreateRegKey $(KeyNovellCLSID) {"{2399601D-BCBA-11d0-8FD7-00A0C925D248}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSAPDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSAPName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{D2755F43-FEE0-11d0-8FF9-00A0C925D248}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWGLTDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSAPName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{2B7C3643-99C9-11d0-BB00-00C04FC28D48}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSNSDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSNSName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{AD518629-02B4-11d1-8FF9-00A0C925D248}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWHOSTDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWHOSTName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{65DDB6A7-C2A6-11d1-857E-00A0C9249033}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDHCPDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDHCPName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{FA85E061-FFBB-11d1-85E0-00A0C9249033}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDHCPNDSDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDHCPName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{D8982029-0834-11d1-84C8-00A0C9249033}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductSRVLOCDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductSRVLOCName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{A18C57F8-17DA-11d1-8FFF-00A0C925D248}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSLPDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWSLPName)} Endif CloseRegKey $(KeyNewCLSID) Endif CreateRegKey $(KeyNovellCLSID) {"{CCBB7F70-2087-11d1-9004-00A0C925D248}", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDNSDisplayName)} CreateRegKey $(KeyNewCLSID) {"LocalServer32", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNewSubCLSID ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyNewSubCLSID) {"",$(NoTitle),$(!REG_VT_SZ),$(ProductNWDNSName)} Endif CloseRegKey $(KeyNewCLSID) Endif CloseRegKey $(KeyNovellCLSID) Endif Ifstr(i) $(KeySoftwareNovell) != "" CloseRegKey $(KeySoftwareNovell) Endif ; ; HKEY_LOCAL_MACHINE\Software\Novell\NetWareWorkstation\Policies\Network ; set SoftwareNovell = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareNovell) $(MAXIMUM_ALLOWED) KeySoftwareNovell ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovell) Else set SoftwareNovellNW = "NetWareWorkstation" OpenRegKey $(KeySoftwareNovell) "" $(SoftwareNovellNW) $(MAXIMUM_ALLOWED) KeySoftwareNovellNW ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovellNW) Else set NovellNWPolicies = "Policies" OpenRegKey $(KeySoftwareNovellNW) "" $(NovellNWPolicies) $(MAXIMUM_ALLOWED) KeyNovellNWPolicies ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeySoftwareNovellNW) {$(NovellNWPolicies), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNovellNWPolicies ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\NetWareWorkstation\Policies" Endif Endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set NetworkPolicies = "Network" OpenRegKey $(KeyNovellNWPolicies) "" $(NetworkPolicies) $(MAXIMUM_ALLOWED) KeyNetworkPolicies ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNovellNWPolicies) {$(NetworkPolicies), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNetworkPolicies ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\NetWareWorkstation\Policies\Network" Endif Endif Endif Endif Endif Ifstr(i) $(KeyNetworkPolicies) != "" ifstr(i) $(!DO_TCPIP) == "YES" ifstr(i) $(!DO_NWLINK) == "NO" SetRegValue $(KeyNetworkPolicies) {"Preferred",$(NoTitle),$(!REG_VT_DWORD),"0"} else SetRegValue $(KeyNetworkPolicies) {"Preferred",$(NoTitle),$(!REG_VT_DWORD),"2"} endif else SetRegValue $(KeyNetworkPolicies) {"Preferred",$(NoTitle),$(!REG_VT_DWORD),"0"} endif OpenRegKey $(KeyNetworkPolicies) "" "Available" $(MAXIMUM_ALLOWED) KeyAvailable ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNetworkPolicies) {"Available", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyAvailable endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyAvailable) {"2",$(NoTitle),$(!REG_VT_SZ),"IP"} SetRegValue $(KeyAvailable) {"6",$(NoTitle),$(!REG_VT_SZ),"IPX"} CloseRegKey $(KeyAvailable) Endif OpenRegKey $(KeyNetworkPolicies) "" "Configured" $(MAXIMUM_ALLOWED) KeyConfigured ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNetworkPolicies) {"Configured", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyConfigured endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Configured !DO_TCPIP = "$(!DO_TCPIP) ifstr(i) $(!DO_TCPIP) == "YES" SetRegValue $(KeyConfigured) {"2",$(NoTitle),$(!REG_VT_SZ),"IP"} else DeleteRegValue $(KeyConfigured) "2" Endif Debug-Output "OEMNPRNW.INF: Configured !DO_NWLINK = "$(!DO_NWLINK) ifstr(i) $(!DO_NWLINK) == "YES" SetRegValue $(KeyConfigured) {"6",$(NoTitle),$(!REG_VT_SZ),"IPX"} else DeleteRegValue $(KeyConfigured) "6" Endif CloseRegKey $(KeyConfigured) Endif OpenRegKey $(KeyNetworkPolicies) "" "IP" $(MAXIMUM_ALLOWED) KeyIP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNetworkPolicies) {"IP", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIP endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyIP) "" "Address Resolution Providers" $(MAXIMUM_ALLOWED) KeyIPARP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIP) {"Address Resolution Providers", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPARP endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyIPARP) "" "Available" $(MAXIMUM_ALLOWED) KeyIPARPAvail ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPARP) {"Available", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPARPAvail endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIPARPAvail) {"2",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F6F-2087-11d1-9004-00A0C925D248}"} SetRegValue $(KeyIPARPAvail) {"11",$(NoTitle),$(!REG_VT_SZ),"{AD518629-02B4-11d1-8FF9-00A0C925D248}"} SetRegValue $(KeyIPARPAvail) {"5",$(NoTitle),$(!REG_VT_SZ),"{A18C57F8-17DA-11d1-8FFF-00A0C925D248}"} SetRegValue $(KeyIPARPAvail) {"12",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F70-2087-11d1-9004-00A0C925D248}"} SetRegValue $(KeyIPARPAvail) {"6",$(NoTitle),$(!REG_VT_SZ),"{FA85E061-FFBB-11d1-85E0-00A0C9249033}"} CloseRegKey $(KeyIPARPAvail) Endif OpenRegKey $(KeyIPARP) "" "Configured" $(MAXIMUM_ALLOWED) KeyIPARPConfig ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPARP) {"Configured", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPARPConfig endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: IP Configured !DO_TCPIP = "$(!DO_TCPIP) ifstr(i) $(!DO_TCPIP) == "YES" SetRegValue $(KeyIPARPConfig) {"2",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F6F-2087-11d1-9004-00A0C925D248}"} SetRegValue $(KeyIPARPConfig) {"11",$(NoTitle),$(!REG_VT_SZ),"{AD518629-02B4-11d1-8FF9-00A0C925D248}"} SetRegValue $(KeyIPARPConfig) {"5",$(NoTitle),$(!REG_VT_SZ),"{A18C57F8-17DA-11d1-8FFF-00A0C925D248}"} SetRegValue $(KeyIPARPConfig) {"12",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F70-2087-11d1-9004-00A0C925D248}"} ; SetRegValue $(KeyIPARPConfig) {"6",$(NoTitle),$(!REG_VT_SZ),"{FA85E061-FFBB-11d1-85E0-00A0C9249033}"} DeleteRegValue $(KeyIPARPConfig) "6" else DeleteRegValue $(KeyIPARPConfig) "2" DeleteRegValue $(KeyIPARPConfig) "11" DeleteRegValue $(KeyIPARPConfig) "5" DeleteRegValue $(KeyIPARPConfig) "12" DeleteRegValue $(KeyIPARPConfig) "6" Endif CloseRegKey $(KeyIPARPConfig) Endif CloseRegKey $(KeyIPARP) Endif CloseRegKey $(KeyIP) Endif OpenRegKey $(KeyNetworkPolicies) "" "IPX" $(MAXIMUM_ALLOWED) KeyIPX ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNetworkPolicies) {"IPX", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPX endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyIPX) "" "Address Resolution Providers" $(MAXIMUM_ALLOWED) KeyIPXARP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPX) {"Address Resolution Providers", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPXARP endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyIPXARP) "" "Available" $(MAXIMUM_ALLOWED) KeyIPXARPAvail ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPXARP) {"Available", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPXARPAvail endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIPXARPAvail) {"2",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F6F-2087-11d1-9004-00A0C925D248}"} SetRegValue $(KeyIPXARPAvail) {"4",$(NoTitle),$(!REG_VT_SZ),"{A18C57F7-17DA-11d1-8FFF-00A0C925D248}"} SetRegValue $(KeyIPXARPAvail) {"1",$(NoTitle),$(!REG_VT_SZ),"{2399601D-BCBA-11d0-8FD7-00A0C925D248}"} CloseRegKey $(KeyIPXARPAvail) Endif OpenRegKey $(KeyIPXARP) "" "Configured" $(MAXIMUM_ALLOWED) KeyIPXARPConfig ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPXARP) {"Configured", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyIPXARPConfig endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: IPX Configured !DO_NWLINK = "$(!DO_NWLINK) ifstr(i) $(!DO_NWLINK) == "YES" SetRegValue $(KeyIPXARPConfig) {"2",$(NoTitle),$(!REG_VT_SZ),"{CCBB7F6F-2087-11d1-9004-00A0C925D248}"} SetRegValue $(KeyIPXARPConfig) {"4",$(NoTitle),$(!REG_VT_SZ),"{A18C57F7-17DA-11d1-8FFF-00A0C925D248}"} SetRegValue $(KeyIPXARPConfig) {"1",$(NoTitle),$(!REG_VT_SZ),"{2399601D-BCBA-11d0-8FD7-00A0C925D248}"} else DeleteRegValue $(KeyIPXARPConfig) "2" DeleteRegValue $(KeyIPXARPConfig) "4" DeleteRegValue $(KeyIPXARPConfig) "1" Endif CloseRegKey $(KeyIPXARPConfig) Endif OpenRegKey $(KeyIPXARP) "" "LimitSAP" $(MAXIMUM_ALLOWED) KeyLimitSAP ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyIPXARP) {"LimitSAP", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyLimitSAP endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) DeleteRegValue $(KeyLimitSAP) "Level" ; ifstr(i) $(!DO_NWLINK) == "YES" ; ifstr(i) $(!DO_TCPIP) == "YES" ; ifstr(i) $(!InstallCompatMode) != "YES" ; SetRegValue $(KeyLimitSAP) {"Level",$(NoTitle),$(!REG_VT_DWORD),0} ; Endif ; Endif ; Endif CloseRegKey $(KeyLimitSAP) Endif CloseRegKey $(KeyIPXARP) Endif CloseRegKey $(KeyIPX) Endif CloseRegKey $(KeyNetworkPolicies) Endif Ifstr(i) $(KeyNovellNWPolicies) != "" CloseRegKey $(KeyNovellNWPolicies) Endif Ifstr(i) $(KeySoftwareNovellNW) != "" CloseRegKey $(KeySoftwareNovellNW) Endif Ifstr(i) $(KeySoftwareNovell) != "" CloseRegKey $(KeySoftwareNovell) Endif ifstr(i) $(NLSDirName) == "NIHONGO" ; ; Additional information for Japanese by Novell,Japan Ltd. ; ; ------------------------ start--------------------------------------- ; ; Check hardware identifier ; set LongMachineType = "IBM_PC" set ShortMachineType = "DOSV" ; set ShortMachineType = "IBM" set HardSystem = "HARDWARE\DESCRIPTION\System" OpenRegKey $(!REG_H_LOCAL) "" $(HardSystem) $(MAXIMUM_ALLOWED) KeyHardSystem ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(KeyHardSystem), "Identifier", IdentifierList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ValueData = *( $(IdentifierList), 4) ifstr(i) $(ValueData) == "NEC PC-98" set LongMachineType = "NEC_PC" set ShortMachineType = "PC98" Endif Endif CloseRegKey $( KeyHardSystem ) Endif set Tmp_NovellWorkstation = "SYSTEM\CurrentControlSet\Services\NetWareWorkstation" OpenRegKey $(!REG_H_LOCAL) "" $(Tmp_NovellWorkstation) $(MAXIMUM_ALLOWED) KeyTmp_NovellWorkstation ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening NetWareWorkstation" Else set Tmp_Parameters = "Parameters" OpenRegKey $(KeyTmp_NovellWorkstation) "" $(Tmp_Parameters) $(MAXIMUM_ALLOWED) KeyTmp_Parameters ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(Tmp_Parameters) {"Long Machine Type", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTmp_Parameters ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Parameters\Long Machine Type" Endif CreateRegKey $(Tmp_Parameters) {"Short Machine Type", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTmp_Parameters ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Parameters\Short Machine Type" Endif Endif Endif Ifstr(i) $(KeyTmp_Parameters) != "" SetRegValue $(KeyTmp_Parameters) {"Long Machine Type", $(NoTitle), $(!REG_VT_SZ), $(LongMachineType)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Long Machine Type value to NetWareWorkstation\Parameters" endif SetRegValue $(KeyTmp_Parameters) {"Short Machine Type", $(NoTitle), $(!REG_VT_SZ), $(ShortMachineType)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Short Machine Type value to NetWareWorkstation\Parameters" endif CloseRegKey $(KeyTmp_Parameters) Endif Ifstr(i) $(KeyTmp_NovellWorkstation) != "" CloseRegKey $(KeyTmp_NovellWorkstation) Endif ; ; Add Environment Variable ; OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" $(MAXIMUM_ALLOWED) KeyTmp_Env ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey "Environment" {"NWLanguage", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTmp_Env ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating CurrentControlSet\Control\Session Manager\Environment\NWLanguage" Endif CreateRegKey "Environment" {"TZ", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTmp_Env ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating CurrentControlSet\Control\Session Manager\Environment\TZ" Endif Endif Ifstr(i) $(KeyTmp_Env) != "" SetRegValue $(KeyTmp_Env) {"NWLanguage", $(NoTitle), $(!REG_VT_SZ), "NIHONGO"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Environment Variable NWLanguage" endif SetRegValue $(KeyTmp_Env) {"TZ", $(NoTitle), $(!REG_VT_SZ), "JST-9"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Environment Variable TZ" endif CloseRegKey $(KeyTmp_Env) Endif ; ; Add Language information for NTAdmin ; OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Novell\Parameters" $(MAXIMUM_ALLOWED) KeyTmp_Param ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyTmp_Param) "" "NWLanguage" $(MAXIMUM_ALLOWED) KeyTmp_Lang ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyTmp_Param) {"NWLanguage", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTmp_Lang ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating SOFTWARE\Novell\Parameters\NWLanguage" Else Ifstr(i) $(KeyTmp_Lang) != "" SetRegValue $(KeyTmp_Lang) {"", $(NoTitle), $(!REG_VT_MULTI_SZ), {"NIHONGO"} } Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Environment Variable NWLanguage" Endif CloseRegKey $(KeyTmp_Lang) Endif Endif Else Ifstr(i) $(KeyTmp_Lang) != "" SetRegValue $(KeyTmp_Lang) {"", $(NoTitle), $(!REG_VT_MULTI_SZ), {"NIHONGO"} } Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to add Environment Variable NWLanguage" Endif CloseRegKey $(KeyTmp_Lang) Endif Endif CloseRegKey $(KeyTmp_Param) Endif ; ------------------------ end --------------------------------------- Endif ; ; Change any persistent network mappings for the MS NetWare client to the Novell NetWare client ; Debug-Output "OEMNPRNW.INF: Migrate persistent network mappings from MS client to Novell client" EnumRegKey $(!REG_H_USERS) UsersList ForListDo $(UsersList) set User = *($($),1) Debug-Output "OEMNPRNW.INF: User is "$(User) OpenRegKey $(!REG_H_USERS) "" $(User)"\Network" $(MAXIMUM_ALLOWED) UserNetworkKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) EnumRegKey $(UserNetworkKey) MapList ForListDo $(MapList) set Map = *($($),1) Debug-Output "OEMNPRNW.INF: Persistent Map is "$(Map) OpenRegKey $(UserNetworkKey) "" $(Map) $(MAXIMUM_ALLOWED) MapKey Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(MapKey) "ProviderName" ProviderList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set ProviderData = *($(ProviderList), 4) ifstr(i) $(ProviderData) == "NetWare or Compatible Network" SetRegValue $(MapKey) {"ProviderName", $(NoTitle), $(!REG_VT_SZ), "NetWare Services"} ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Set the provider name to NetWare Services for "$(User)"\"$(Map) ; ; Novell client uses a dot in front of full DN ; GetRegValue $(MapKey) "UserName" NameList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set NameData = *($(NameList), 4) Split-string $(NameData) "=" NamePieces ifstr(i) *($(NamePieces), 1) == "CN" SetRegValue $(MapKey) {"UserName", $(NoTitle), $(!REG_VT_SZ), "."$(NameData)} ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: User name set to ."$(NameData) endif endif endif ; ; Novell client uses slash separated NDS object name (not dot separated like MS) ; GetRegValue $(MapKey) "RemotePath" PathList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set PathData = *($(PathList), 4) Debug-Output "OEMNPRNW.INF: original RemotePath = "$(PathData) set NewPath = "" Split-string $(PathData) "\" PathPieces ifstr(i) *($(PathPieces), 1) == "\" ifstr(i) *($(PathPieces), 2) == "\" ifstr(i) *($(PathPieces), 4) == "\" Split-string *($(PathPieces), 5) "." VolumePieces ifcontains(i) "." in $(VolumePieces) Debug-Output "OEMNPRNW.INF: Dot separated object name found: "*($(PathPieces), 5) set NewVolumeName = "" ForListDo $(VolumePieces) ifstr(i) $($) != "." ifstr(i) $(NewVolumeName) == "" set NewVolumeName = $($) else set NewVolumeName = $($)"\"$(NewVolumeName) endif endif EndForListDo Debug-Output "OEMNPRNW.INF: new object name = "$(NewVolumeName) ForListDo $(PathPieces) ifint $(#) != 5 set NewPath = $(NewPath)$($) else set NewPath = $(NewPath)$(NewVolumeName) endif EndForListDo Debug-Output "OEMNPRNW.INF: new path = "$(NewPath) endif endif endif endif ifstr(i) $(NewPath) != "" SetRegValue $(MapKey) {"RemotePath", $(NoTitle), $(!REG_VT_SZ), $(NewPath)} ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Remote path set to "$(NewPath) else Debug-Output "OEMNPRNW.INF: Error setting the remote path to "$(NewPath) endif endif endif else Debug-Output "OEMNPRNW.INF: Failed to set the provider name to NetWare Services for "$(User)"\"$(Map) endif endif endif CloseRegKey $(MapKey) Endif EndForListDo CloseRegKey $(UserNetworkKey) Endif EndForListDo ; Set Classinfo values for SLP use. SPD 229319. set ServiceWinsock2 = $(!NTN_ServiceBase)"\Winsock2" OpenRegKey $(!REG_H_LOCAL) "" $(ServiceWinsock2) $(MAXIMUM_ALLOWED) KeyServiceWinsock2 ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CloseRegKey $(KeyServiceWinsock2) set NovellWinsock2 = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Winsock 2" OpenRegKey $(!REG_H_LOCAL) "" $(NovellWinsock2) $(MAXIMUM_ALLOWED) KeyNovellWinsock2 ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(!REG_H_LOCAL) {$(NovellWinsock2), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNovellWinsock2 endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) OpenRegKey $(KeyNovellWinsock2) "" "ClassInfo" $(MAXIMUM_ALLOWED) KeyClassInfo ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyNovellWinsock2) {"ClassInfo", $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyClassInfo endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set value1 = {78,00,111,00,118,00,101,00,108,00,108,00,+ 32,00,84,00,114,00,101,00,101,00,115,00,32,00,105,00,110,00,32,00,78,00,101,00,116,+ 00,119,00,111,00,114,00,107,00,00,00,01,00,00,00,00,00,00,00,83,00,76,00,80,00,+ 83,00,118,00,99,00,84,00,121,00,112,00,101,00,00,00,05,00,00,00,01,00,00,00,24,+ 00,00,00,00,00,00,00,78,00,68,00,65,00,80,00,46,00,78,00,79,00,86,00,69,00,+ 76,00,76,00,00,00} set value2 = {78,00,111,00,118,00,101,00,108,00,108,00,+ 32,00,83,00,101,00,114,00,118,00,101,00,114,00,115,00,32,00,105,00,110,00,32,00,78,+ 00,101,00,116,00,119,00,111,00,114,00,107,00,00,00,01,00,00,00,00,00,00,00,83,00,+ 76,00,80,00,83,00,118,00,99,00,84,00,121,00,112,00,101,00,00,00,05,00,00,00,01,+ 00,00,00,30,00,00,00,00,00,00,00,66,00,73,00,78,00,68,00,69,00,82,00,89,00,+ 46,00,78,00,79,00,86,00,69,00,76,00,76,00,00,00} SetRegValue $(KeyClassInfo) {"{000B0278-0000-0000-C000-000000000046}", $(NoTitle), $(!REG_VT_BIN), $(value1)} SetRegValue $(KeyClassInfo) {"{000B0004-0000-0000-C000-000000000046}", $(NoTitle), $(!REG_VT_BIN), $(value2)} CloseRegKey $(KeyClassInfo) endif CloseRegKey $(KeyNovellWinsock2) endif endif Exit ;************************************************************************* ; ; SECTION: Install-Winsock ; ; PURPOSE: Called at install and update time to install the ; Winsock Name Space providers. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-Winsock] LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWInstallNDSNameSpace Debug-Output "OEMNPRNW.INF: NWInstallNDSNameSpace: "$(LibResult) ifstr(i) $(!DO_NWLINK) != "NO" LibraryProcedure LibResult $(NwLibHandle) NWInstallSAPNameSpace Debug-Output "OEMNPRNW.INF: NWInstallSAPNameSpace: "$(LibResult) endif ifstr(i) $(!DO_TCPIP) != "NO" LibraryProcedure LibResult $(NwLibHandle) NWInstallSLPNameSpace Debug-Output "OEMNPRNW.INF: NWInstallSLPNameSpace: "$(LibResult) endif FreeLibrary $(NwLibHandle) Exit ;************************************************************************* ; ; SECTION: Remove-Winsock ; ; PURPOSE: Called at update and remove time to remove the ; Winsock Name Space providers. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Remove-Winsock] LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWReinstallSAPNameSpace Debug-Output "OEMNPRNW.INF: NWReinstallSAPNameSpace: "$(LibResult) LibraryProcedure LibResult $(NwLibHandle) NWUninstallNDSNameSpace Debug-Output "OEMNPRNW.INF: NWUninstallNDSNameSpace: "$(LibResult) LibraryProcedure LibResult $(NwLibHandle) NWUninstallSLPNameSpace Debug-Output "OEMNPRNW.INF: NWUninstallSLPNameSpace: "$(LibResult) FreeLibrary $(NwLibHandle) Exit ;************************************************************************* ; ; SECTION: Install-Help ; ; PURPOSE: Called at install and update time to install the ; NetWare Client help files in the NT help bar. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-Help] LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle ; ; Delete any of the help files from the oem.cnt regardless of NT version ; LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":index Novell Client=nt4using.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":index Novell Client=nt3using.hlp" ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":index NDS for NT=outline.hlp" endif endif LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include nt4using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include nt3using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include nt4setup.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include nt3setup.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include ntadmin.cnt" ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include outline.cnt" endif endif LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4setup.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3setup.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\ntadmin.cnt" ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWRemoveLineFromFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include "$(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\outline.cnt" endif endif ; ; Delete all gid, fts, ftg files in the language directory ; LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4using.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4setup.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3using.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3setup.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\ntadmin.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4using.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4setup.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3using.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3setup.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\ntadmin.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4using.ftg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt4setup.ftg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3using.ftg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\nt3setup.ftg" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\ntadmin.ftg" ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\outline.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\outline.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\outline.ftg" endif endif ; ; Add back the correct language of help files ; ; LibraryProcedure GUIResult $(NwLibHandle) NWAddLineToFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":index Novell Client=nt4using.hlp" ; LibraryProcedure GUIResult $(NwLibHandle) NWAddLineToFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include nt4using.cnt" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\windows.gid" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\windows.fts" LibraryProcedure GUIResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\windows.ftg" ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure GUIResult $(NwLibHandle) NWAddLineToFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":index NDS for NT=outline.hlp" LibraryProcedure GUIResult $(NwLibHandle) NWAddLineToFile $(!STF_WINDOWSSYSPATH)"\oem.cnt" ":include outline.cnt" endif endif ; ; Fix the system path to include the NLS language directory ; LibraryProcedure GUIResult $(NwLibHandle) NWRemoveNLSDirFromSystemPath LibraryProcedure GUIResult $(NwLibHandle) NWAddNLSDirToSystemPath $(NLSDirName) FreeLibrary $(NwLibHandle) Exit ;************************************************************************* ; ; SECTION: Install-PerformanceCounters ; ; PURPOSE: Called at install time to install the ; NetWare PerformanceCounters. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-PerformanceCounters] set ValueName1 = "Close" set ValueName2 = "Collect" set ValueName3 = "Open" set ValueName4 = "Library" set ValueData1 = "NwPfCloseRedirPerformanceData" set ValueData2 = "NwPfCollectRedirPerformanceData" set ValueData3 = "NwPfOpenRedirPerformanceData" set ValueData4 = "Nwpfctrs.dll" set NwGroup = "Performance" set NwProductBase1 = $(!NTN_ServiceBase)"\NetWareWorkstation" set NwParameters1 = $(NwProductBase1)"\"$(NwGroup) ; ; HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetWareWorkstation ; OpenRegKey $(!REG_H_LOCAL) "" $(NwProductBase1) $(!REG_KEY_ALL_ACCESS) NWBaseKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) CreateRegKey $(!REG_H_LOCAL) {$(NwParameters1), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" ParmBaseKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(ParmBaseKey) {$(ValueName1), $(NoTitle), $(!REG_VT_SZ), $(ValueData1)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error writing "$(NwParameters1)": "$(ValueName1)" = "$(ValueData1) endif SetRegValue $(ParmBaseKey) {$(ValueName2), $(NoTitle), $(!REG_VT_SZ), $(ValueData2)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error writing "$(NwParameters1)": "$(ValueName2)" = "$(ValueData2) endif SetRegValue $(ParmBaseKey) {$(ValueName3), $(NoTitle), $(!REG_VT_SZ), $(ValueData3)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error writing "$(NwParameters1)": "$(ValueName3)" = "$(ValueData3) endif SetRegValue $(ParmBaseKey) {$(ValueName4), $(NoTitle), $(!REG_VT_SZ), $(ValueData4)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error writing "$(NwParameters1)": "$(ValueName4)" = "$(ValueData4) endif CloseRegKey $(ParmBaseKey) else Debug-Output "OEMNPRNW.INF: Error creating key "$(NwParameters1) endif CloseRegKey $(NWBaseKey) else Debug-Output "OEMNPRNW.INF: Error opening key "$(NwProductBase1) endif ; ; Call the DLL to load the counters now that registry is set up ; LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure GUIResult $(NwLibHandle) NWLoadPerformanceCounters FreeLibrary $(NwLibHandle) Exit ;************************************************************************* ; ; SECTION: Install-Login ; ; PURPOSE: Called at install or update to add ; the default or migrate the old login information ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-Login] ; ; Setup the login history information in the registry ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Login\History" CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set SubKeyName = "Trees" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Trees\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Trees\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Contexts" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Contexts\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Contexts\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Servers" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Servers\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Servers\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Preferred Servers" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Servers\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Servers\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Scripts" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Scripts\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Scripts\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Profiles" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\History\Profiles\Size" SetRegValue $(SubKey) {"Size", $(NoTitle), $(!REG_VT_DWORD), 5} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\History\Profiles\Size" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName) endif ; ; Setup the login tab information in the registry ; Set CreateDefaultProfile = 0 Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Login\TabInfo" CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set CreateDefaultProfile = 1 ; On first time setup a default profile Set SubKeyName = "Credentials" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Credentials\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{7C7670A7-0DAE-11D1-A73B-00A0C900EB5A}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Credentials\CLSID" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "NDS" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\NDS\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{75A32854-D2A2-11D0-A71C-00A0C900EB5A}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\NDS\CLSID" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\NDS\Load Priority" SetRegValue $(SubKey) {"Load Priority", $(NoTitle), $(!REG_VT_DWORD), 16} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\NDS\Load Priority" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\NDS\Dependencies" SetRegValue $(SubKey) {"Dependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"{74E99E36-2492-11D1-9151-00A024656AC5}"}} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\NDS\Dependencies" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Bindery" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Bindery\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{8817F729-E1D5-11D0-A6DE-00A024656AC5}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Bindery\CLSID" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Bindery\Load Priority" SetRegValue $(SubKey) {"Load Priority", $(NoTitle), $(!REG_VT_DWORD), 17} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Bindery\Load Priority" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Bindery\Dependencies" SetRegValue $(SubKey) {"Dependencies", $(NoTitle), $(!REG_VT_MULTI_SZ), {"{74E99E36-2492-11D1-9151-00A024656AC5}"}} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Bindery\Dependencies" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Script" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Script\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{74E99E36-2492-11D1-9151-00A024656AC5}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Script\CLSID" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Script\Load Priority" SetRegValue $(SubKey) {"Load Priority", $(NoTitle), $(!REG_VT_DWORD), 48} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Script\Load Priority" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "NT Credentials" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\NT Credentials\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{1A4C1507-2526-11D1-9153-00A024656AC5}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\NT Credentials\CLSID" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\NT Credentials\Load Priority" SetRegValue $(SubKey) {"Load Priority", $(NoTitle), $(!REG_VT_DWORD), 80} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\NT Credentials\Load Priority" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Dialup" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Dialup\CLSID" SetRegValue $(SubKey) {"CLSID", $(NoTitle), $(!REG_VT_SZ), "{50B63306-2587-11D1-9155-00A024656AC5}"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Dialup\CLSID" endif Debug-Output "OEMNPRNW.INF: Setting Login\TabInfo\Dialup\Load Priority" SetRegValue $(SubKey) {"Load Priority", $(NoTitle), $(!REG_VT_DWORD), 128} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login\TabInfo\Dialup\Load Priority" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName) endif ifint $(CreateDefaultProfile) != 0 ; ; Setup the default profile name ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Location Profiles\Profile List" CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"0", $(NoTitle), $(!REG_VT_SZ), $(DefaultProfileName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set default profile name in Profile List" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName) endif ; ; Setup the default login service instance name ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Location Profiles\Profiles\"$(DefaultProfileName)"\Instances" CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"{1E6CEEA1-FB73-11CF-BD76-00001B27DA23}", $(NoTitle), $(!REG_VT_SZ), $(DefaultLoginSvcInstName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set default profile login service instance name" endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName) endif ; ; Setup the 'Last Used' Location Profile ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Location Profiles\Profiles" OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"Last Used", $(NoTitle), $(!REG_VT_SZ), $(DefaultProfileName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Profiles\Last Used." endif CloseRegKey $(TempKey) else Debug-Output "OEMNPRNW.INF: Failed to Open key "$(TempKeyName) endif ; ; Get override info from unattended if specified ; set UnattendPreferredTree = "" set UnattendContext = "" set UnattendPreferredServer = "" ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" set UnattendPreferredTree = $(!Preferred_Tree) set UnattendPreferredServer = $(!Preferred_Server) ; ; loop through trees to find associated context ; ifstr(i) $(UnattendPreferredTree) != "" set count = 1 nexttreecontext = + ifstr(i) $(!Tree_List$(count)) != "" ifstr(i) $(!Tree_List$(count)) == $(UnattendPreferredTree) set UnattendContext = $(!Default_Context_List$(count)) endif set-add count = $(count), 1 goto nexttreecontext endif endif endif endif ; ; Setup the default login service instance ; Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Location Profiles\Services\{1E6CEEA1-FB73-11CF-BD76-00001B27DA23}\"$(DefaultLoginSvcInstName) CreateRegKey $(!REG_H_LOCAL) {$(TempKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to Open key "$(TempKeyName) endif endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Set LoginKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Login" OpenRegKey $(!REG_H_LOCAL) "" $(LoginKeyName) $(MAXIMUM_ALLOWED) LoginKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) SetRegValue $(LoginKey) {"Location", $(NoTitle), $(!REG_VT_DWORD), 0} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Login value 'Location'" endif endif Set OldKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Graphical Login" OpenRegKey $(!REG_H_LOCAL) "" $(OldKeyName) $(MAXIMUM_ALLOWED) OldKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) ; ; No keys to migrate, do the fresh install option ; Set SubKeyName = "Tab1" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) OpenRegKey $(TempKey) "" $(SubKeyName) $(MAXIMUM_ALLOWED) SubKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName)"\"$(SubKeyName) endif endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set TabToUse = NDS GetRegValue $(SubKey) "Tab" TabList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set TabToUse = *($(TabList), 4) endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), $(TabToUse)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Tab" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Server" SetRegValue $(SubKey) {"Server", $(NoTitle), $(!REG_VT_SZ), $(UnattendPreferredServer)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Server" endif ifstr(i) $(TabToUse) == NDS Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Tree" SetRegValue $(SubKey) {"Tree", $(NoTitle), $(!REG_VT_SZ), $(UnattendPreferredTree)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Tree" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Context" SetRegValue $(SubKey) {"Context", $(NoTitle), $(!REG_VT_SZ), $(UnattendContext)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Context" endif endif CloseRegKey $(SubKey) endif Set SubKeyName = "Tab2" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "Script"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Tab" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\DefaultLoginScript" SetRegValue $(SubKey) {"DefaultLoginScript", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\DefaultLoginScript" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\DefaultProfileScript" SetRegValue $(SubKey) {"DefaultProfileScript", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\DefaultProfileScript" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Login Script" SetRegValue $(SubKey) {"Login Script", $(NoTitle), $(!REG_VT_DWORD), 1} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Login Script" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Display Results" SetRegValue $(SubKey) {"Display Results", $(NoTitle), $(!REG_VT_DWORD), 1} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Display Results" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Close Results" SetRegValue $(SubKey) {"Close Results", $(NoTitle), $(!REG_VT_DWORD), 1} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Close Results" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable2" SetRegValue $(SubKey) {"Variable2", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable2" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable3" SetRegValue $(SubKey) {"Variable3", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable3" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable4" SetRegValue $(SubKey) {"Variable4", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable4" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable5" SetRegValue $(SubKey) {"Variable5", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable5" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Tab3" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "NT Credentials"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\Tab" endif set WinLogon = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\Winlogon" OpenRegKey $(!REG_H_LOCAL) "" $(WinLogon) $(MAXIMUM_ALLOWED) WinLogonKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(WinLogonKey) "DefaultUserName" DefUserNameList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set DefUserNameListData = *($(DefUserNameList), 4) endif CloseRegKey $(WinLogonKey) endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\DefaultUserName to "$(DefUserNameListData) ifstr(i) $(DefUserNameListData) == "" SetRegValue $(SubKey) {"DefaultUserName", $(NoTitle), $(!REG_VT_SZ), ""} else SetRegValue $(SubKey) {"DefaultUserName", $(NoTitle), $(!REG_VT_SZ), $(DefUserNameListData)} endif ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\DefaultUserName" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\DefaultDomainName" SetRegValue $(SubKey) {"DefaultDomainName", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\DefaultDomainName" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Tab4" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Dialup Entry" SetRegValue $(SubKey) {"Dialup Entry", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Dialup Entry" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Enable RAS" SetRegValue $(SubKey) {"Enable RAS", $(NoTitle), $(!REG_VT_DWORD), 0} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Enable RAS" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "Dialup"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Dialup" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif else ; ; There are old keys to migrate, bring them over and delete the old ones ; Set OldGinaName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\NWGINA\Login Screen" OpenRegKey $(!REG_H_LOCAL) "" $(OldGinaName) $(MAXIMUM_ALLOWED) OldGinaKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ; ; Since GINA is installed, use its settings ; GetRegValue $(OldGinaKey) "DefaultNWLoginFlags" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldLoginFlags = *($(KeyValueList), 4) endif LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWTestBit $(OldLoginFlags) 2 set OldBinderyConnections = $(LibResult) LibraryProcedure LibResult $(NwLibHandle) NWTestBit $(OldLoginFlags) 256 set OldLoginScript = $(LibResult) LibraryProcedure LibResult $(NwLibHandle) NWTestBit $(OldLoginFlags) 512 set OldDisplayResults = $(LibResult) LibraryProcedure LibResult $(NwLibHandle) NWTestBit $(OldLoginFlags) 1024 set OldCloseResults = $(LibResult) FreeLibrary $(NwLibHandle) GetRegValue $(OldGinaKey) "DefaultLoginScript" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldLogin = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultProfileScript" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldProfiles = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultBinderyServer" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldBinderyServer = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultNetWareUserName" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNetWareUserName = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultNDSTree" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNDSTree = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultNDSServer" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNDSServer = *($(KeyValueList), 4) endif GetRegValue $(OldGinaKey) "DefaultNDSContext" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNDSContext = *($(KeyValueList), 4) endif CloseRegKey $(OldGinaKey) else ; ; Since GINA is not installed, use the GUI Logins settings ; GetRegValue $(OldKey) "Bindery Connections" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldBinderyConnections = *($(KeyValueList), 4) endif GetRegValue $(OldKey) "Login Script" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldLoginScript = *($(KeyValueList), 4) endif GetRegValue $(OldKey) "Display Results" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldDisplayResults = *($(KeyValueList), 4) endif GetRegValue $(OldKey) "Close Results" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldCloseResults = *($(KeyValueList), 4) endif Set OldSubKeyName = "Scripts\1" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldLogin = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Profiles\1" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldProfiles = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Servers\1" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldBinderyServer = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Trees\1" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNDSTree = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Context\1" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set OldNDSContext = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) endif ; ; Settings common to GINA and GUI Login ; ifstr(i) $(OldLogin) == "<Default>" set OldLogin = "" endif ifstr(i) $(OldProfiles) == "<Default>" set OldProfiles = "" endif Set OldSubKeyName = "Variables\2" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Old2 = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Variables\3" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Old3 = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Variables\4" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Old4 = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) Set OldSubKeyName = "Variables\5" OpenRegKey $(OldKey) "" $(OldSubKeyName) $(MAXIMUM_ALLOWED) OldSubKey GetRegValue $(OldSubKey) "" KeyValueList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Old5 = *($(KeyValueList), 4) endif CloseRegKey $(OldSubKey) set WinLogon = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\Winlogon" OpenRegKey $(!REG_H_LOCAL) "" $(WinLogon) $(MAXIMUM_ALLOWED) WinLogonKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(WinLogonKey) "DefaultUserName" DefUserNameList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set DefUserNameListData = *($(DefUserNameList), 4) endif GetRegValue $(WinLogonKey) "DefaultDomainName" DefDomainNameList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set DefDomainNameListData = *($(DefDomainNameList), 4) endif CloseRegKey $(WinLogonKey) endif ; ; Use overrides from the unattended file if specified ; ifstr(i) $(UnattendPreferredTree) != "" set OldNDSTree = $(UnattendPreferredTree) endif ifstr(i) $(UnattendContext) != "" set OldNDSContext = $(UnattendContext) endif ifstr(i) $(UnattendPreferredServer) != "" set OldBinderyServer = $(UnattendPreferredServer) set OldNDSServer = $(UnattendPreferredServer) endif ; ; Have old information for migration, create profile ; SetRegValue $(TempKey) {"UserName", $(NoTitle), $(!REG_VT_SZ), $(OldNetWareUserName)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set UserName" endif Set SubKeyName = "Tab1" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) OpenRegKey $(TempKey) "" $(SubKeyName) $(MAXIMUM_ALLOWED) SubKey ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to open key "$(TempKeyName)"\"$(SubKeyName) endif endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set TabToUse = NDS ifint $(OldBinderyConnections) == 1 set TabToUse = Bindery endif GetRegValue $(SubKey) "Tab" TabList ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set TabToUse = *($(TabList), 4) endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), $(TabToUse)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Tab" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Server" SetRegValue $(SubKey) {"Server", $(NoTitle), $(!REG_VT_SZ), $(OldBinderyServer)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Server" endif ifstr(i) $(TabToUse) == NDS Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Server" SetRegValue $(SubKey) {"Server", $(NoTitle), $(!REG_VT_SZ), $(OldNDSServer)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Server" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Tree" SetRegValue $(SubKey) {"Tree", $(NoTitle), $(!REG_VT_SZ), $(OldNDSTree)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Tree" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab1\Context" SetRegValue $(SubKey) {"Context", $(NoTitle), $(!REG_VT_SZ), $(OldNDSContext)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab1\Context" endif endif CloseRegKey $(SubKey) endif Set SubKeyName = "Tab2" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "Script"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Tab" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\DefaultLoginScript" SetRegValue $(SubKey) {"DefaultLoginScript", $(NoTitle), $(!REG_VT_SZ), $(OldLogin)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\DefaultLoginScript" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\DefaultProfileScript" SetRegValue $(SubKey) {"DefaultProfileScript", $(NoTitle), $(!REG_VT_SZ), $(OldProfiles)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\DefaultProfileScript" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Login Script" SetRegValue $(SubKey) {"Login Script", $(NoTitle), $(!REG_VT_DWORD), $(OldLoginScript)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Login Script" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Display Results" SetRegValue $(SubKey) {"Display Results", $(NoTitle), $(!REG_VT_DWORD), $(OldDisplayResults)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Display Results" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Close Results" SetRegValue $(SubKey) {"Close Results", $(NoTitle), $(!REG_VT_DWORD), $(OldCloseResults)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Close Results" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable2" SetRegValue $(SubKey) {"Variable2", $(NoTitle), $(!REG_VT_SZ), $(Old2)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable2" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable3" SetRegValue $(SubKey) {"Variable3", $(NoTitle), $(!REG_VT_SZ), $(Old3)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable3" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable4" SetRegValue $(SubKey) {"Variable4", $(NoTitle), $(!REG_VT_SZ), $(Old4)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable4" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab2\Variable5" SetRegValue $(SubKey) {"Variable5", $(NoTitle), $(!REG_VT_SZ), $(Old5)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab2\Variable5" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Tab3" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "NT Credentials"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\Tab" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\DefaultUserName to "$(DefUserNameListData) SetRegValue $(SubKey) {"DefaultUserName", $(NoTitle), $(!REG_VT_SZ), $(DefUserNameListData)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\DefaultUserName" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab3\DefaultDomainName" SetRegValue $(SubKey) {"DefaultDomainName", $(NoTitle), $(!REG_VT_SZ), $(DefDomainNameListData)} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab3\DefaultDomainName" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif Set SubKeyName = "Tab4" CreateRegKey $(TempKey) {$(SubKeyName), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" SubKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Dialup Entry" SetRegValue $(SubKey) {"Dialup Entry", $(NoTitle), $(!REG_VT_SZ), ""} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Dialup Entry" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Enable RAS" SetRegValue $(SubKey) {"Enable RAS", $(NoTitle), $(!REG_VT_DWORD), 0} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Enable RAS" endif Debug-Output "OEMNPRNW.INF: Setting Default\Tab4\Tab" SetRegValue $(SubKey) {"Tab", $(NoTitle), $(!REG_VT_SZ), "Dialup"} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default\Tab4\Dialup" endif CloseRegKey $(SubKey) else Debug-Output "OEMNPRNW.INF: Failed to create key "$(TempKeyName)"\"$(SubKeyName) endif ; ; Remove old settings that were migrated ; DeleteRegValue $(OldKey) "Bindery Connections" DeleteRegValue $(OldKey) "Login Script" DeleteRegValue $(OldKey) "Display Results" DeleteRegValue $(OldKey) "Close Results" DeleteRegTree $(OldKey) "Scripts" DeleteRegTree $(OldKey) "Profiles" DeleteRegTree $(OldKey) "Variables" CloseRegKey $(OldKey) endif CloseRegKey $(TempKey) endif endif Set TempKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Location Profiles\Services\{1E6CEEA1-FB73-11CF-BD76-00001B27DA23}\"$(DefaultLoginSvcInstName) OpenRegKey $(!REG_H_LOCAL) "" $(TempKeyName) $(MAXIMUM_ALLOWED) TempKey ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) GetRegValue $(TempKey) "Save On Exit" TempVal ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(TempKey) {"Save On Exit", $(NoTitle), $(!REG_VT_DWORD), 1} ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Failed to set Default value 'Save On Exit'." endif endif CloseRegKey $(TempKey) endif ; ;set up contextless login registry entries ; set SoftwareNovell = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareNovell) $(MAXIMUM_ALLOWED) KeySoftwareNovell ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error opening "$(SoftwareNovell) Else set GraphicalLoginValue = "Graphical Login" OpenRegKey $(KeySoftwareNovell) "" $(GraphicalLoginValue) $(MAXIMUM_ALLOWED) KeyGraphicalLogin ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeySoftwareNovell) {$(GraphicalLoginValue), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyGraphicalLogin ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\Graphical Login" Endif Endif ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set NWLGEvalue = "NWLGE" OpenRegKey $(KeyGraphicalLogin) "" $(NWLGEvalue) $(MAXIMUM_ALLOWED) KeyNWLGE ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CreateRegKey $(KeyGraphicalLogin) {$(NWLGEvalue), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyNWLGE ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\Graphical Login\NWLGE" Endif Endif Ifstr(i) $(KeyNWLGE) != "" set ZXContextValue = "Z XContext" CreateRegKey $(KeyNWLGE) {$(ZXContextValue), $(NoTitle), GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyZXContext ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Error creating Software\Novell\Graphical Login\NWLGE\Z XContext" Else SetRegValue $(KeyZXContext) {"LoginExtType", $(NoTitle), $(!REG_VT_DWORD), 32769} SetRegValue $(KeyZXContext) {"LoginExtName", $(NoTitle), $(!REG_VT_SZ), "LGNCON32.DLL"} SetRegValue $(KeyZXContext) {"LoginExtDesc", $(NoTitle), $(!REG_VT_SZ), "Login Extension Contextless Login"} ; SetRegValue $(KeyZXContext) {"RunContext", $(NoTitle), $(!REG_VT_DWORD), 0} Endif Endif Endif Endif Ifstr(i) $(KeySoftwareNovell) != "" CloseRegKey $(KeySoftwareNovell) Endif Ifstr(i) $(KeyGraphicalLogin) != "" CloseRegKey $(KeyGraphicalLogin) Endif Ifstr(i) $(KeyNWLGE) != "" CloseRegKey $(KeyNWLGE) Endif Ifstr(i) $(KeyZXContext) != "" CloseRegKey $(KeyZXContext) Endif Exit ;************************************************************************* ; ; SECTION: Install-NetWare-Group ; ; PURPOSE: Called at install or update to add ; icons to the program manager or start menu ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-NetWare-Group] LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSPATH)"\Profiles\All Users\Start Menu\Programs\IntranetWare (Common)" $(!STF_WINDOWSPATH)"\Profiles\All Users\Start Menu\Programs\Novell (Common)" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSPATH)"\Profiles\All Users\Start Menu\Programs\NetWare (Common)" $(!STF_WINDOWSPATH)"\Profiles\All Users\Start Menu\Programs\Novell (Common)" FreeLibrary $(NwLibHandle) CreateCommonProgManGroup $(NetWareGroup) "" ; ; Delete any and all icons we may have created in the past. Some do ; not exist anymore so in update cases we want them gone. ; RemoveCommonProgManItem $(NetWareGroup) "Administrating NetWare Client for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "Administrating NetWare Client for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "DOS Support" RemoveCommonProgManItem $(NetWareGroup) "Getting Started" RemoveCommonProgManItem $(NetWareGroup) "NetWare Admin Help for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "NetWare Admin Help for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "NetWare Change Password" RemoveCommonProgManItem $(NetWareGroup) "NetWare Client for Windows NT help" RemoveCommonProgManItem $(NetWareGroup) "Novell NetWare Client for Windows NT hel" RemoveCommonProgManItem $(NetWareGroup) "Novell NetWare Client for Windows NT help" RemoveCommonProgManItem $(NetWareGroup) "NetWare GUI Login" RemoveCommonProgManItem $(NetWareGroup) "NetWare Help for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "NetWare Help for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "NetWare Login Help for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "NetWare Login Help for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "NetWare Send Message" RemoveCommonProgManItem $(NetWareGroup) "NetWare Setup Help for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "NetWare Setup Help for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "NetWare Using Help for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "NetWare Using Help for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "ReadMe" RemoveCommonProgManItem $(NetWareGroup) "Setup NetWare Client for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "Setup NetWare Client for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "Using NetWare Client for Windows NT 3.51" RemoveCommonProgManItem $(NetWareGroup) "Using NetWare Client for Windows NT 4.00" RemoveCommonProgManItem $(NetWareGroup) "IntranetWare Login" RemoveCommonProgManItem $(NetWareGroup) "IntranetWare Change Password" RemoveCommonProgManItem $(NetWareGroup) "IntranetWare Send Message" RemoveCommonProgManItem $(NetWareGroup) "IntranetWare Client for Windows NT help" RemoveCommonProgManItem $(NetWareGroup) $(OldLoginIconText1) RemoveCommonProgManItem $(NetWareGroup) $(OldChangePasswordIconText1) RemoveCommonProgManItem $(NetWareGroup) $(OldSendMessageIconText1) RemoveCommonProgManItem $(NetWareGroup) $(OldHelpIconText1) RemoveCommonProgManItem $(NetWareGroup) $(OldSchedIconText1) RemoveCommonProgManItem $(NetWareGroup) $(OldLoginIconText2) RemoveCommonProgManItem $(NetWareGroup) $(OldChangePasswordIconText2) RemoveCommonProgManItem $(NetWareGroup) $(OldSendMessageIconText2) RemoveCommonProgManItem $(NetWareGroup) $(OldHelpIconText2) RemoveCommonProgManItem $(NetWareGroup) $(OldSchedIconText2) RemoveCommonProgManItem $(NetWareGroup) $(LoginIconText) RemoveCommonProgManItem $(NetWareGroup) $(ChangePasswordIconText) RemoveCommonProgManItem $(NetWareGroup) $(SendMessageIconText) RemoveCommonProgManItem $(NetWareGroup) $(ReadMeIconText) RemoveCommonProgManItem $(NetWareGroup) $(HelpIconText) RemoveCommonProgManItem $(NetWareGroup) $(MigIconText) RemoveCommonProgManItem $(NetWareGroup) $(SchedIconText) ; ; Create the icons ; CreateCommonProgManItem $(NetWareGroup), $(LoginIconText) "%SystemRoot%\system32\loginw32.exe" "" 0 CreateCommonProgManItem $(NetWareGroup), $(SendMessageIconText) "%SystemRoot%\system32\nwsndmsg.exe" "" 0 CreateCommonProgManItem $(NetWareGroup), $(ReadMeIconText) "notepad %SystemRoot%\system32\nls\"$(NLSDirName)"\Readme.txt" "" 0 ; CreateCommonProgManItem $(NetWareGroup), $(HelpIconText) "winhlp32 %SystemRoot%\system32\nls\"$(NLSDirName)"\nt4using.hlp" "" 0 ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" CreateCommonProgManItem $(NetWareGroup), $(MigIconText) "%SystemRoot%\system32\sammig.exe" "" 0 endif endif ; ; Minimize the group ; ShowCommonProgManGroup $(NetWareGroup), 6 Exit [Remove-NetWare-Group] CreateCommonProgManGroup $(NetWareGroup) "" RemoveCommonProgManGroup $(NetWareGroup) CreateCommonProgManGroup $(OldNetWareGroup1) "" RemoveCommonProgManGroup $(OldNetWareGroup1) CreateCommonProgManGroup $(OldNetWareGroup2) "" RemoveCommonProgManGroup $(OldNetWareGroup2) Exit ;************************************************************************* ; ; SECTION: Install-NetWar-Files ; ; PURPOSE: Called at install or update to copy ; files to the system ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-NetWare-Dir] CreateDir $(!STF_WINDOWSSYSPATH)"\NetWare" CreateDir $(!STF_WINDOWSSYSPATH)"\NetWare\nwmigw2k" CreateDir $(!STF_WINDOWSSYSPATH)"\NLS" CreateDir $(!STF_WINDOWSSYSPATH)"\NLS\"$(NLSDirName) CreateDir $(!STF_WINDOWSPATH)"\System\NLS" CreateDir $(!STF_WINDOWSPATH)"\System\NLS\"$(NLSDirName) CreateDir $(!STF_WINDOWSSYSPATH)"\NLS\"$(NLSDirName)"\NWGUIDE" CreateDir $(!STF_WINDOWSSYSPATH)"\NLS\"$(NLSDirName)"\WEBLINKS" CreateDir $(!STF_WINDOWSSYSPATH)"\NLS\"$(NLSDirName)"\NWUSE" Exit ;************************************************************************* ; ; SECTION: Install-TcpipBindings ; ; PURPOSE: Called at install time and update time to install the ; Tcpip bindings. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Install-TcpipBindings] StartWait Read-syms GeneralConstants Set status = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\Tcpip\CurrentVersion\NetRules" $(MAXIMUM_ALLOWED) RulesKey Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't open Tcpip NetRules key" set status = STATUS_FAILED Goto IB_Return Endif ; ; Set up bindings for Tcpip ; Set ValueName = "Bindable" GetRegValue $(RulesKey) $(ValueName) ValueList Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CloseRegKey $(RulesKey) Debug-Output "OEMNPRNW.INF: Can't get bindable value for Tcpip" set status = STATUS_FAILED Goto IB_Return endif Set OldList = *($(ValueList), 4) Set NewList = {} Debug-Output "OEMNPRNW.INF: OldList for Tcpip bind is "$(OldList) ForListDo $(OldList) Set Item = $($) Ifstr(i) $(Item) != "tcpipService tcpipTransport non exclusive 100" Set NewList = >($(NewList), $(Item)) else Set NewList = >($(NewList), "tcpipService tcpipTransport non non 100") endif EndForListDo Debug-Output "OEMNPRNW.INF: NewList for Tcpip bind is "$(NewList) SetRegValue $(RulesKey) {$(ValueName), $(NoTitle), $(!REG_VT_MULTI_SZ), $(NewList)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Ouput "OEMNPRNW.INF: Can't update Bindable value for Tcpip" set status = STATUS_FAILED goto IB_Return Endif ; ; Close keys ; CloseRegKey $(RulesKey) IB_Return = + Return $(status) ;************************************************************************* ; ; SECTION: Remove-TcpipBindings ; ; PURPOSE: Called at remove time to install the ; Tcpip bindings. ; ; ARGUMENTS: None ; ; RETURNS: None ; ; REFERENCES: None ; ; MODIFIES: None ; ;************************************************************************* [Remove-TcpipBindings] StartWait Read-syms GeneralConstants Set status = STATUS_SUCCESSFUL OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\Tcpip\CurrentVersion\NetRules" $(MAXIMUM_ALLOWED) RulesKey Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "OEMNPRNW.INF: Can't open Tcpip NetRules key" ; set status = STATUS_FAILED Goto IB_Return Endif ; ; Set up bindings for Tcpip ; Set ValueName = "Bindable" GetRegValue $(RulesKey) $(ValueName) ValueList Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) CloseRegKey $(RulesKey) Debug-Output "OEMNPRNW.INF: Can't get bindable value for Tcpip" set status = STATUS_FAILED Goto IB_Return endif Set OldList = *($(ValueList), 4) Set NewList = {} Debug-Output "OEMNPRNW.INF: OldList for Tcpip bind is "$(OldList) ForListDo $(OldList) Set Item = $($) Ifstr(i) $(Item) != "tcpipService tcpipTransport non non 100" Set NewList = >($(NewList), $(Item)) else Set NewList = >($(NewList), "tcpipService tcpipTransport non exclusive 100") endif EndForListDo Debug-Output "OEMNPRNW.INF: NewList for Tcpip bind is "$(NewList) SetRegValue $(RulesKey) {$(ValueName), $(NoTitle), $(!REG_VT_MULTI_SZ), $(NewList)} Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Ouput "OEMNPRNW.INF: Can't update Bindable value for Tcpip" set status = STATUS_FAILED goto IB_Return Endif ; ; Close keys ; CloseRegKey $(RulesKey) IB_Return = + Return $(status) [Install-Files] set STF_VITAL = "" Ifstr(i) $(AddCopy) == "YES" ; ; Add the files to the copy list ; AddSectionFilesToCopyList Files-First-$(NLSDirName) $(SrcDir) $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Inf-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Inf-nwmig-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\netware\nwmigw2k AddSectionFilesToCopyList Files-nwmig-nwmig $(SrcDir)redir $(!STF_WINDOWSSYSPATH)\netware\nwmigw2k AddSectionFilesToCopyList Files-setupw2k-nwmig $(SrcDir) $(!STF_WINDOWSSYSPATH)\netware\nwmigw2k ifstr(i) $(ActiveDirectoryInstalled) == YES AddSectionFilesToCopyList Files-Inf-ADSI-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSPATH)\Inf endif AddSectionFilesToCopyList Files-Hlp-Sys32-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName) AddSectionFilesToCopyList Files-Hlp-Sys32-NwGuide-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName)\nwguide AddSectionFilesToCopyList Files-Hlp-Sys32-WebLinks-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName)\weblinks AddSectionFilesToCopyList Files-Hlp-Sys32-NwUse-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName)\nwuse AddSectionFilesToCopyList Files-Msg-Sys32-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName) AddSectionFilesToCopyList Files-Resource-Sys32-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName) ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" AddSectionFilesToCopyList Files-Resource-Sys32-$(NLSDirName)-SAM $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\nls\$(NLSDirName) endif endif AddSectionFilesToCopyList Files-Ini-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Msg-Sys-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSPATH)\system\nls\$(NLSDirName) AddSectionFilesToCopyList Files-Resource-Sys-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSPATH)\system\nls\$(NLSDirName) AddSectionFilesToCopyList Files-Unicode-$(NLSDirName) $(SrcDir)nls $(!STF_WINDOWSSYSPATH)\nls AddSectionFilesToCopyList Files-NtRoot-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSPATH) AddSectionFilesToCopyList Files-NtRoot-$(NLSDirName) $(SrcDir)nls\$(NLSDirName) $(!STF_WINDOWSSYSPATH)\netware ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" AddSectionFilesToCopyList Files-NtRoot-$(NLSDirName)-SAM $(SrcDir)nls\$(NLSDirName)\sam $(!STF_WINDOWSPATH) endif endif AddSectionFilesToCopyList Files-NtRoot $(SrcDir)redir $(!STF_WINDOWSPATH) AddSectionFilesToCopyList Files-System32 $(SrcDir)redir $(!STF_WINDOWSSYSPATH) ifstr(i) $(ActiveDirectoryInstalled) == YES AddSectionFilesToCopyList Files-System32-ADSI $(SrcDir)redir $(!STF_WINDOWSSYSPATH) endif ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" AddSectionFilesToCopyList Files-System32-SAM $(SrcDir)redir $(!STF_WINDOWSSYSPATH) endif endif AddSectionFilesToCopyList Files-System $(SrcDir)redir $(!STF_WINDOWSPATH)\system AddSectionFilesToCopyList Files-32bitLibs $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-16bitXplatLibs $(SrcDir)libs16 $(!STF_WINDOWSPATH)\system AddSectionFilesToCopyList Files-16bitOldLibs $(SrcDir)libs16 $(!STF_WINDOWSPATH)\system AddSectionFilesToCopyList Files-16bitThunkLibs $(SrcDir)libs16 $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-NetWare $(SrcDir)redir $(!STF_WINDOWSSYSPATH)\netware ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" AddSectionFilesToCopyList Files-NetWare-SAM $(SrcDir)redir $(!STF_WINDOWSSYSPATH)\netware endif endif AddSectionFilesToCopyList Files-Drivers $(SrcDir)redir $(!STF_WINDOWSSYSPATH)\drivers AddSectionFilesToCopyList Files-NDPS $(SrcDir)redir $(!STF_WINDOWSSYSPATH) ; ; For 3rd party files that we install, only install if they are newer ; Same for psapi.dll. ;; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ;; AddSectionFilesToCopyList Files-Psapi $(SrcDir)redir $(!STF_WINDOWSSYSPATH) ; ifint $(!InstallDebugFiles) == 1 ; AddSectionFilesToCopyList Files-3party-32bitLibs-Debug $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; endif Endif Ifstr(i) $(DoCopy) == "YES" ; ; Copy files in the copy list ; set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList ; ;Do (copy) file psapi.dll separately ; LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\PSAPI.DLL" ifstr(i) $(Status1) != "YES" AddSectionFilesToCopyList Files-Psapi $(SrcDir)redir $(!STF_WINDOWSSYSPATH) else set CopyPSAPIfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"redir\PSAPI.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionRedir, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\PSAPI.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (redir) is "$(FileVersionRedir) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionRedir) "." SplitVersionList Set FileMajorVersionRedir = *($(SplitVersionList), 1) Set FileMinorVersionRedir = *($(SplitVersionList), 3) Set FileSubminorVersionRedir = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionRedir is "$(FileMajorVersionRedir) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionRedir is "$(FileMinorVersionRedir) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionRedir is "$(FileSubminorVersionRedir) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionRedir) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionRedir) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionRedir) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionRedir is greater!" set CopyPSAPIfile = 1 endif else-ifint $(FileMinorVersionRedir) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionRedir is greater!" set CopyPSAPIfile = 1 endif else-ifint $(FileMajorVersionRedir) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionRedir is greater!" set CopyPSAPIfile = 1 endif ifint $(CopyPSAPIfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-Psapi $(SrcDir)redir $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionRedir) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-Psapi $(SrcDir)redir $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif endif ; ;Do (copy) file mfc42.dll separately ; set CopyMFC42file = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MFC42.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MFC42.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMFC42file = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMFC42file = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMFC42file = 1 endif ifint $(CopyMFC42file) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MFC42DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MFC42DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file msvcrt40.dll separately ; set CopyMSVCRT40file = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MSVCRT40.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MSVCRT40.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMSVCRT40file = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMSVCRT40file = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMSVCRT40file = 1 endif ifint $(CopyMSVCRT40file) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRT40DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRT40DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file msvcrt.dll separately ; set CopyMSVCRTfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MSVCRT.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MSVCRT.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMSVCRTfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMSVCRTfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMSVCRTfile = 1 endif ifint $(CopyMSVCRTfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRTDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" set STF_OVERWRITE = "VERIFYSOURCEOLDER" AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRTDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList endif endif endif ; ;Do (copy) file ctl3d32.dll separately ; set CopyCTL3D32file = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\CTL3D32.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\CTL3D32.DLL" Debug-Output "OEMNPRNW.INF: ****File is "$(FileName) LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyCTL3D32file = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyCTL3D32file = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyCTL3D32file = 1 endif ifint $(CopyCTL3D32file) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-CTL3D32DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" set STF_OVERWRITE = "VERIFYSOURCEOLDER" AddSectionFilesToCopyList Files-3party-32bitLibs-CTL3D32DLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList endif endif endif ifint $(!InstallDebugFiles) == 1 ; ;Do (copy) file mfco42d.dll separately ; set CopyMFCO42Dfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MFCO42D.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MFCO42D.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMFCO42Dfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMFCO42Dfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMFCO42Dfile = 1 endif ifint $(CopyMFCO42Dfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MFCO42DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MFCO42DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file mfc42d.dll separately ; set CopyMFC42Dfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MFC42D.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MFC42D.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMFC42Dfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMFC42Dfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMFC42Dfile = 1 endif ifint $(CopyMFC42Dfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MFC42DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MFC42DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file msvcr40d.dll separately ; set CopyMSVCR40Dfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MSVCR40D.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MSVCR40D.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMSVCR40Dfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMSVCR40Dfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMSVCR40Dfile = 1 endif ifint $(CopyMSVCR40Dfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCR40DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCR40DDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file msvcrtd.dll separately ; set CopyMSVCRTDfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\MSVCRTD.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\MSVCRTD.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyMSVCRTDfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyMSVCRTDfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyMSVCRTDfile = 1 endif ifint $(CopyMSVCRTDfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRTDDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-MSVCRTDDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file urlmon.dll separately ; set CopyURLMONfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\URLMON.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\URLMON.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyURLMONfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyURLMONfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyURLMONfile = 1 endif ifint $(CopyURLMONfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-URLMONDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-URLMONDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif ; ;Do (copy) file wininet.dll separately ; set CopyWININETfile = 0 set FileVersionLibs32 = "" set FileVersionSystem32 = "" LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle set FileName = $(SrcDir)"libs32\WININET.DLL" LibraryProcedure FileVersionLibs32, $(NwLibHandle), NWGetFileVersion, $(FileName) set FileName = $(!STF_WINDOWSSYSPATH)"\WININET.DLL" LibraryProcedure FileVersionSystem32, $(NwLibHandle), NWGetFileVersion, $(FileName) FreeLibrary $(NwLibHandle) Debug-Output "OEMNPRNW.INF: ****FileVersion (libs32) is "$(FileVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileVersion (System32) is "$(FileVersionSystem32) Split-string $(FileVersionLibs32) "." SplitVersionList Set FileMajorVersionLibs32 = *($(SplitVersionList), 1) Set FileMinorVersionLibs32 = *($(SplitVersionList), 3) Set FileSubminorVersionLibs32 = *($(SplitVersionList), 5) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is "$(FileMajorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is "$(FileMinorVersionLibs32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is "$(FileSubminorVersionLibs32) Split-string $(FileVersionSystem32) "." SplitVersionList Set FileMajorVersionSystem32 = *($(SplitVersionList), 1) Set FileMinorVersionSystem32 = *($(SplitVersionList), 3) Set FileSubminorVersionSystem32 = *($(SplitVersionList), 5) ifint $(FileMajorVersionLibs32) == $(FileMajorVersionSystem32) ifint $(FileMinorVersionLibs32) == $(FileMinorVersionSystem32) ifint $(FileSubminorVersionLibs32) > $(FileSubminorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileSubminorVersionLibs32 is greater!" set CopyWININETfile = 1 endif else-ifint $(FileMinorVersionLibs32) > $(FileMinorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMinorVersionLibs32 is greater!" set CopyWININETfile = 1 endif else-ifint $(FileMajorVersionLibs32) > $(FileMajorVersionSystem32) Debug-Output "OEMNPRNW.INF: ****FileMajorVersionLibs32 is greater!" set CopyWININETfile = 1 endif ifint $(CopyWININETfile) == 1 set STF_OVERWRITE = "ALWAYS" AddSectionFilesToCopyList Files-3party-32bitLibs-WININETDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) set !STF_NCPA_FLUSH_COPYLIST = TRUE set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button CopyFilesInCopyList else ifstr(i) $(FileVersionLibs32) == "" ifstr(i) $(FileVersionSystem32) == "" Debug-Output "OEMNPRNW.INF: ****FileVersions are blank!" ; set STF_OVERWRITE = "VERIFYSOURCEOLDER" ; AddSectionFilesToCopyList Files-3party-32bitLibs-WININETDLL $(SrcDir)libs32 $(!STF_WINDOWSSYSPATH) ; set !STF_NCPA_FLUSH_COPYLIST = TRUE ; set !STF_NETCANCELOVERIDE = "YES" ; this line removes the cancel button ; CopyFilesInCopyList endif endif endif endif LoadLibrary $(LoadDisk3Text) $(!STF_WINDOWSSYSPATH)"\"$(NwSetupDll) NwLibHandle LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\netware.dr~" $(!STF_WINDOWSSYSPATH)"\netware.drv" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\login.da~" $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\login.dat" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSPATH)"\system\nls\"$(NLSDirName)"\login.da~" $(!STF_WINDOWSPATH)"\system\nls\"$(NLSDirName)"\login.dat" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\login.ms~" $(!STF_WINDOWSSYSPATH)"\nls\"$(NLSDirName)"\login.msg" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSPATH)"\system\nls\"$(NLSDirName)"\login.ms~" $(!STF_WINDOWSPATH)"\system\nls\"$(NLSDirName)"\login.msg" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nwslog32.dl~" $(!STF_WINDOWSSYSPATH)"\nwslog32.dll" DELAY ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" ifstr(i) $(!NWSetup) == YES LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\novnpnt.dl~" $(!STF_WINDOWSSYSPATH)"\novnpnt.dll" DELAY else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\novnpnt.dl~" $(!STF_WINDOWSSYSPATH)"\novnpnt.dll" endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\novnpnt.dl~" $(!STF_WINDOWSSYSPATH)"\novnpnt.dll" DELAY endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\novnpnt.dl~" $(!STF_WINDOWSSYSPATH)"\novnpnt.dll" DELAY endif ifstr(i) $(!NWUnattendedFile) != "" ifstr(i) $(!NWUnattendedSection) != "" ifstr(i) $(!NWSetup) == YES LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nwspool.dl~" $(!STF_WINDOWSSYSPATH)"\nwspool.dll" DELAY else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nwspool.dl~" $(!STF_WINDOWSSYSPATH)"\nwspool.dll" endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nwspool.dl~" $(!STF_WINDOWSSYSPATH)"\nwspool.dll" DELAY endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\nwspool.dl~" $(!STF_WINDOWSSYSPATH)"\nwspool.dll" DELAY endif ifstr(i) $(AdvancedServer) == "YES" ifstr(i) $(!InstallSAMRedir) == "YES" LibraryProcedure LibResult $(NwLibHandle) NWCheckSAMMigrated ifstr(i) $(LibResult) == "TRUE" ; ; If already migrated, update the nwsamsrv dll ; LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" ifstr(i) $(Status1) == "YES" LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" ifstr(i) $(Status1) != "YES" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" LibraryProcedure LibResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" endif LibraryProcedure LibResult $(!LIBHANDLE) CopySingleFile $(!STF_WINDOWSSYSPATH)"\netware\nwsamsrv.dll" $(!STF_WINDOWSSYSPATH)"\samsrv.dll" else LibraryProcedure LibResult $(NwLibHandle) NWServerGetInfo ifstr(i) $(LibResult) == "PDC" ; ; If not migrated & this is a PDC, update the migfiltr dll ; LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" ifstr(i) $(Status1) == "YES" LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" ifstr(i) $(Status1) != "YES" LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" LibraryProcedure LibResult $(NwLibHandle) NWDeleteFile $(!STF_WINDOWSSYSPATH)"\xxsamsrv.dll" endif else LibraryProcedure LibResult $(NwLibHandle) NWRenameFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" endif LibraryProcedure LibResult $(!LIBHANDLE) CopySingleFile $(!STF_WINDOWSSYSPATH)"\netware\migfiltr.dll" $(!STF_WINDOWSSYSPATH)"\samsrv.dll" else ; ; If not migrated & this is a BDC, backup the samsrv dll ; LibraryProcedure Status1, $(!LIBHANDLE), CheckFileExistance, $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" ifstr(i) $(Status1) != "YES" LibraryProcedure LibResult $(!LIBHANDLE) CopySingleFile $(!STF_WINDOWSSYSPATH)"\samsrv.dll" $(!STF_WINDOWSSYSPATH)"\mssamsrv.dll" endif endif endif endif endif FreeLibrary $(NwLibHandle) Endif Exit [Files-First-English] 1, locwin32.dll, SIZE=50000, DECOMPRESS 1, nwsetup.dll SIZE=50000, DECOMPRESS 1, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Chineses] 3, locwin32.dll, SIZE=50000, DECOMPRESS 3, nwsetup.dll SIZE=50000, DECOMPRESS 3, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Chineset] 5, locwin32.dll, SIZE=50000, DECOMPRESS 5, nwsetup.dll SIZE=50000, DECOMPRESS 5, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Deutsch] 7, locwin32.dll, SIZE=50000, DECOMPRESS 7, nwsetup.dll SIZE=50000, DECOMPRESS 7, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Espanol] 9, locwin32.dll, SIZE=50000, DECOMPRESS 9, nwsetup.dll SIZE=50000, DECOMPRESS 9, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Francais] 11, locwin32.dll, SIZE=50000, DECOMPRESS 11, nwsetup.dll SIZE=50000, DECOMPRESS 11, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Italiano] 13, locwin32.dll, SIZE=50000, DECOMPRESS 13, nwsetup.dll SIZE=50000, DECOMPRESS 13, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Korean] 15, locwin32.dll, SIZE=50000, DECOMPRESS 15, nwsetup.dll SIZE=50000, DECOMPRESS 15, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Nihongo] 17, locwin32.dll, SIZE=50000, DECOMPRESS 17, nwsetup.dll SIZE=50000, DECOMPRESS 17, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Portugue] 19, locwin32.dll, SIZE=50000, DECOMPRESS 19, nwsetup.dll SIZE=50000, DECOMPRESS 19, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Russki] 25, locwin32.dll, SIZE=50000, DECOMPRESS 25, nwsetup.dll SIZE=50000, DECOMPRESS 25, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-First-Polski] 27, locwin32.dll, SIZE=50000, DECOMPRESS 27, nwsetup.dll SIZE=50000, DECOMPRESS 27, nwslog32.dll SIZE=50000, DECOMPRESS, RENAME=nwslog32.dl~ [Files-Inf-English] 1, oemnprnw.inf, SIZE=50000 1, nwsubs.inf, SIZE=50000, DECOMPRESS 1, oemnsvip.inf, SIZE=50000, DECOMPRESS 1, oemnxpgw.inf, SIZE=50000, DECOMPRESS 1, oemnsvcm.inf, SIZE=50000, DECOMPRESS 1, oemnsvts.inf, SIZE=50000, DECOMPRESS 1, oemnsvnp.inf, SIZE=50000, DECOMPRESS 1, oemnsvwm.inf, SIZE=50000, DECOMPRESS 1, oemnsvns.inf, SIZE=50000, DECOMPRESS 1, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-English] 1, adsnnds.inf, SIZE=50000 [Files-Inf-Chineses] 3, oemnprnw.inf, SIZE=50000 3, nwsubs.inf, SIZE=50000, DECOMPRESS 3, oemnsvip.inf, SIZE=50000, DECOMPRESS 3, oemnxpgw.inf, SIZE=50000, DECOMPRESS 3, oemnsvcm.inf, SIZE=50000, DECOMPRESS 3, oemnsvts.inf, SIZE=50000, DECOMPRESS 3, oemnsvnp.inf, SIZE=50000, DECOMPRESS 3, oemnsvwm.inf, SIZE=50000, DECOMPRESS 3, oemnsvns.inf, SIZE=50000, DECOMPRESS 3, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Chineses] 3, adsnnds.inf, SIZE=50000 [Files-Inf-Chineset] 5, oemnprnw.inf, SIZE=50000 5, nwsubs.inf, SIZE=50000, DECOMPRESS 5, oemnsvip.inf, SIZE=50000, DECOMPRESS 5, oemnxpgw.inf, SIZE=50000, DECOMPRESS 5, oemnsvcm.inf, SIZE=50000, DECOMPRESS 5, oemnsvts.inf, SIZE=50000, DECOMPRESS 5, oemnsvnp.inf, SIZE=50000, DECOMPRESS 5, oemnsvwm.inf, SIZE=50000, DECOMPRESS 5, oemnsvns.inf, SIZE=50000, DECOMPRESS 5, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Chineset] 5, adsnnds.inf, SIZE=50000 [Files-Inf-Deutsch] 7, oemnprnw.inf, SIZE=50000 7, nwsubs.inf, SIZE=50000, DECOMPRESS 7, oemnsvip.inf, SIZE=50000, DECOMPRESS 7, oemnxpgw.inf, SIZE=50000, DECOMPRESS 7, oemnsvcm.inf, SIZE=50000, DECOMPRESS 7, oemnsvts.inf, SIZE=50000, DECOMPRESS 7, oemnsvnp.inf, SIZE=50000, DECOMPRESS 7, oemnsvwm.inf, SIZE=50000, DECOMPRESS 7, oemnsvns.inf, SIZE=50000, DECOMPRESS 7, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Deutsch] 7, adsnnds.inf, SIZE=50000 [Files-Inf-Espanol] 9, oemnprnw.inf, SIZE=50000 9, nwsubs.inf, SIZE=50000, DECOMPRESS 9, oemnsvip.inf, SIZE=50000, DECOMPRESS 9, oemnxpgw.inf, SIZE=50000, DECOMPRESS 9, oemnsvcm.inf, SIZE=50000, DECOMPRESS 9, oemnsvts.inf, SIZE=50000, DECOMPRESS 9, oemnsvnp.inf, SIZE=50000, DECOMPRESS 9, oemnsvwm.inf, SIZE=50000, DECOMPRESS 9, oemnsvns.inf, SIZE=50000, DECOMPRESS 9, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Deutsch] 9, adsnnds.inf, SIZE=50000 [Files-Inf-Francais] 11, oemnprnw.inf, SIZE=50000 11, nwsubs.inf, SIZE=50000, DECOMPRESS 11, oemnsvip.inf, SIZE=50000, DECOMPRESS 11, oemnxpgw.inf, SIZE=50000, DECOMPRESS 11, oemnsvcm.inf, SIZE=50000, DECOMPRESS 11, oemnsvts.inf, SIZE=50000, DECOMPRESS 11, oemnsvnp.inf, SIZE=50000, DECOMPRESS 11, oemnsvwm.inf, SIZE=50000, DECOMPRESS 11, oemnsvns.inf, SIZE=50000, DECOMPRESS 11, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Francais] 11, adsnnds.inf, SIZE=50000 [Files-Inf-Italiano] 13, oemnprnw.inf, SIZE=50000 13, nwsubs.inf, SIZE=50000, DECOMPRESS 13, oemnsvip.inf, SIZE=50000, DECOMPRESS 13, oemnxpgw.inf, SIZE=50000, DECOMPRESS 13, oemnsvcm.inf, SIZE=50000, DECOMPRESS 13, oemnsvts.inf, SIZE=50000, DECOMPRESS 13, oemnsvnp.inf, SIZE=50000, DECOMPRESS 13, oemnsvwm.inf, SIZE=50000, DECOMPRESS 13, oemnsvns.inf, SIZE=50000, DECOMPRESS 13, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Italiano] 13, adsnnds.inf, SIZE=50000 [Files-Inf-Korean] 15, oemnprnw.inf, SIZE=50000 15, nwsubs.inf, SIZE=50000, DECOMPRESS 15, oemnsvip.inf, SIZE=50000, DECOMPRESS 15, oemnxpgw.inf, SIZE=50000, DECOMPRESS 15, oemnsvcm.inf, SIZE=50000, DECOMPRESS 15, oemnsvts.inf, SIZE=50000, DECOMPRESS 15, oemnsvnp.inf, SIZE=50000, DECOMPRESS 15, oemnsvwm.inf, SIZE=50000, DECOMPRESS 15, oemnsvns.inf, SIZE=50000, DECOMPRESS 15, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Korean] 15, adsnnds.inf, SIZE=50000 [Files-Inf-Nihongo] 17, oemnprnw.inf, SIZE=50000 17, nwsubs.inf, SIZE=50000, DECOMPRESS 17, oemnsvip.inf, SIZE=50000, DECOMPRESS 17, oemnxpgw.inf, SIZE=50000, DECOMPRESS 17, oemnsvcm.inf, SIZE=50000, DECOMPRESS 17, oemnsvts.inf, SIZE=50000, DECOMPRESS 17, oemnsvnp.inf, SIZE=50000, DECOMPRESS 17, oemnsvwm.inf, SIZE=50000, DECOMPRESS 17, oemnsvns.inf, SIZE=50000, DECOMPRESS 17, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Nihongo] 17, adsnnds.inf, SIZE=50000 [Files-Inf-Portugue] 19, oemnprnw.inf, SIZE=50000 19, nwsubs.inf, SIZE=50000, DECOMPRESS 19, oemnsvip.inf, SIZE=50000, DECOMPRESS 19, oemnxpgw.inf, SIZE=50000, DECOMPRESS 19, oemnsvcm.inf, SIZE=50000, DECOMPRESS 19, oemnsvts.inf, SIZE=50000, DECOMPRESS 19, oemnsvnp.inf, SIZE=50000, DECOMPRESS 19, oemnsvwm.inf, SIZE=50000, DECOMPRESS 19, oemnsvns.inf, SIZE=50000, DECOMPRESS 19, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Portugue] 19, adsnnds.inf, SIZE=50000 [Files-Inf-Russki] 25, oemnprnw.inf, SIZE=50000 25, nwsubs.inf, SIZE=50000, DECOMPRESS 25, oemnsvip.inf, SIZE=50000, DECOMPRESS 25, oemnxpgw.inf, SIZE=50000, DECOMPRESS 25, oemnsvcm.inf, SIZE=50000, DECOMPRESS 25, oemnsvts.inf, SIZE=50000, DECOMPRESS 25, oemnsvnp.inf, SIZE=50000, DECOMPRESS 25, oemnsvwm.inf, SIZE=50000, DECOMPRESS 25, oemnsvns.inf, SIZE=50000, DECOMPRESS 25, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Russki] 25, adsnnds.inf, SIZE=50000 [Files-Inf-Polski] 27, oemnprnw.inf, SIZE=50000 27, nwsubs.inf, SIZE=50000, DECOMPRESS 27, oemnsvip.inf, SIZE=50000, DECOMPRESS 27, oemnxpgw.inf, SIZE=50000, DECOMPRESS 27, oemnsvcm.inf, SIZE=50000, DECOMPRESS 27, oemnsvts.inf, SIZE=50000, DECOMPRESS 27, oemnsvnp.inf, SIZE=50000, DECOMPRESS 27, oemnsvwm.inf, SIZE=50000, DECOMPRESS 27, oemnsvns.inf, SIZE=50000, DECOMPRESS 27, oemnsvwa.inf, SIZE=50000, DECOMPRESS [Files-Inf-ADSI-Polski] 27, adsnnds.inf, SIZE=50000 [Files-nwmig-nwmig] 1, Nwmig.dll, SIZE=50000 1, Nwmig.exe, SIZE=50000 1, Setupw2k.exe, SIZE=50000 1, Setupw2k.dll, SIZE=50000 [Files-setupw2k-nwmig] 1, Nww2k.inf, SIZE=50000 [Files-Inf-nwmig-English] 1, iwclient.inf, SIZE=50000 1, ndps.inf, SIZE=50000 1, ns.inf, SIZE=50000 1, tsa.inf, SIZE=50000 1, wm.inf, SIZE=50000 1, gw.inf, SIZE=50000 1, nwcmd.inf, SIZE=50000 1, nwip.inf, SIZE=50000 [Files-Inf-nwmig-Chineses] 3, iwclient.inf, SIZE=50000 3, ndps.inf, SIZE=50000 3, ns.inf, SIZE=50000 3, tsa.inf, SIZE=50000 3, wm.inf, SIZE=50000 3, gw.inf, SIZE=50000 [Files-Inf-nwmig-Chineset] 5, iwclient.inf, SIZE=50000 5, ndps.inf, SIZE=50000 5, ns.inf, SIZE=50000 5, tsa.inf, SIZE=50000 5, wm.inf, SIZE=50000 5, gw.inf, SIZE=50000 [Files-Inf-nwmig-Deutsch] 7, iwclient.inf, SIZE=50000 7, ndps.inf, SIZE=50000 7, ns.inf, SIZE=50000 7, tsa.inf, SIZE=50000 7, wm.inf, SIZE=50000 7, gw.inf, SIZE=50000 [Files-Inf-nwmig-Espanol] 9, iwclient.inf, SIZE=50000 9, ndps.inf, SIZE=50000 9, ns.inf, SIZE=50000 9, tsa.inf, SIZE=50000 9, wm.inf, SIZE=50000 9, gw.inf, SIZE=50000 [Files-Inf-nwmig-Francais] 11, iwclient.inf, SIZE=50000 11, ndps.inf, SIZE=50000 11, ns.inf, SIZE=50000 11, tsa.inf, SIZE=50000 11, wm.inf, SIZE=50000 11, gw.inf, SIZE=50000 [Files-Inf-nwmig-Italiano] 13, iwclient.inf, SIZE=50000 13, ndps.inf, SIZE=50000 13, ns.inf, SIZE=50000 13, tsa.inf, SIZE=50000 13, wm.inf, SIZE=50000 13, gw.inf, SIZE=50000 [Files-Inf-nwmig-Korean] 15, iwclient.inf, SIZE=50000 15, ndps.inf, SIZE=50000 15, ns.inf, SIZE=50000 15, tsa.inf, SIZE=50000 15, wm.inf, SIZE=50000 15, gw.inf, SIZE=50000 [Files-Inf-nwmig-Nihongo] 17, iwclient.inf, SIZE=50000 17, ndps.inf, SIZE=50000 17, ns.inf, SIZE=50000 17, tsa.inf, SIZE=50000 17, wm.inf, SIZE=50000 17, gw.inf, SIZE=50000 [Files-Inf-nwmig-Portugue] 19, iwclient.inf, SIZE=50000 19, ndps.inf, SIZE=50000 19, ns.inf, SIZE=50000 19, tsa.inf, SIZE=50000 19, wm.inf, SIZE=50000 19, gw.inf, SIZE=50000 [Files-Inf-nwmig-Russki] 25, iwclient.inf, SIZE=50000 25, ndps.inf, SIZE=50000 25, ns.inf, SIZE=50000 25, tsa.inf, SIZE=50000 25, wm.inf, SIZE=50000 25, gw.inf, SIZE=50000 [Files-Inf-nwmig-Polski] 27, iwclient.inf, SIZE=50000 27, ndps.inf, SIZE=50000 27, ns.inf, SIZE=50000 27, tsa.inf, SIZE=50000 27, wm.inf, SIZE=50000 27, gw.inf, SIZE=50000 [Files-Unicode-English] 2, 1250_uni.001, SIZE=5000, DECOMPRESS 2, uni_1250.001, SIZE=5000, DECOMPRESS 2, 1251_uni.001, SIZE=5000, DECOMPRESS 2, uni_1251.001, SIZE=5000, DECOMPRESS 2, 1252_uni.001, SIZE=5000, DECOMPRESS 2, uni_1252.001, SIZE=5000, DECOMPRESS 2, 1253_uni.001, SIZE=5000, DECOMPRESS 2, uni_1253.001, SIZE=5000, DECOMPRESS 2, 1254_uni.001, SIZE=5000, DECOMPRESS 2, uni_1254.001, SIZE=5000, DECOMPRESS 2, 1255_uni.001, SIZE=5000, DECOMPRESS 2, uni_1255.001, SIZE=5000, DECOMPRESS 2, 1256_uni.001, SIZE=5000, DECOMPRESS 2, uni_1256.001, SIZE=5000, DECOMPRESS 2, 1257_uni.001, SIZE=5000, DECOMPRESS 2, uni_1257.001, SIZE=5000, DECOMPRESS 2, 874_uni.001, SIZE=5000, DECOMPRESS 2, uni_874.001, SIZE=5000, DECOMPRESS 2, 932_uni.001, SIZE=5000, DECOMPRESS 2, uni_932.001, SIZE=5000, DECOMPRESS 2, 936_uni.001, SIZE=5000, DECOMPRESS 2, uni_936.001, SIZE=5000, DECOMPRESS 2, 949_uni.001, SIZE=5000, DECOMPRESS 2, uni_949.001, SIZE=5000, DECOMPRESS 2, 950_uni.001, SIZE=5000, DECOMPRESS 2, uni_950.001, SIZE=5000, DECOMPRESS 2, uni_col.001, SIZE=5000, DECOMPRESS 2, uni_mon.001, SIZE=5000, DECOMPRESS 2, uni_932.w32, SIZE=5000, DECOMPRESS 2, uni_1250.w32, SIZE=5000, DECOMPRESS 2, uni_1253.w32, SIZE=5000, DECOMPRESS 2, uni_1254.w32, SIZE=5000, DECOMPRESS 2, uni_1255.w32, SIZE=5000, DECOMPRESS 2, uni_437.w32, SIZE=5000, DECOMPRESS 2, uni_852.w32, SIZE=5000, DECOMPRESS 2, uni_737.w32, SIZE=5000, DECOMPRESS 2, uni_775.w32, SIZE=5000, DECOMPRESS 2, uni_1256.w32, SIZE=5000, DECOMPRESS 2, uni_1257.w32, SIZE=5000, DECOMPRESS 2, uni_863.w32, SIZE=5000, DECOMPRESS 2, uni_864.w32, SIZE=5000, DECOMPRESS 2, uni_865.w32, SIZE=5000, DECOMPRESS 2, uni_866.w32, SIZE=5000, DECOMPRESS 2, uni_874.w32, SIZE=5000, DECOMPRESS 2, uni_upr.w32, SIZE=5000, DECOMPRESS 2, uni_850.w32, SIZE=5000, DECOMPRESS 2, uni_855.w32, SIZE=5000, DECOMPRESS 2, uni_857.w32, SIZE=5000, DECOMPRESS 2, uni_860.w32, SIZE=5000, DECOMPRESS 2, uni_mon.w32, SIZE=5000, DECOMPRESS 2, uni_1258.w32, SIZE=5000, DECOMPRESS 2, uni_861.w32, SIZE=5000, DECOMPRESS 2, uni_862.w32, SIZE=5000, DECOMPRESS 2, uni_1251.w32, SIZE=5000, DECOMPRESS 2, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Chineses] 4, 1250_uni.001, SIZE=5000, DECOMPRESS 4, uni_1250.001, SIZE=5000, DECOMPRESS 4, 1251_uni.001, SIZE=5000, DECOMPRESS 4, uni_1251.001, SIZE=5000, DECOMPRESS 4, 1252_uni.001, SIZE=5000, DECOMPRESS 4, uni_1252.001, SIZE=5000, DECOMPRESS 4, 1253_uni.001, SIZE=5000, DECOMPRESS 4, uni_1253.001, SIZE=5000, DECOMPRESS 4, 1254_uni.001, SIZE=5000, DECOMPRESS 4, uni_1254.001, SIZE=5000, DECOMPRESS 4, 1255_uni.001, SIZE=5000, DECOMPRESS 4, uni_1255.001, SIZE=5000, DECOMPRESS 4, 1256_uni.001, SIZE=5000, DECOMPRESS 4, uni_1256.001, SIZE=5000, DECOMPRESS 4, 1257_uni.001, SIZE=5000, DECOMPRESS 4, uni_1257.001, SIZE=5000, DECOMPRESS 4, 874_uni.001, SIZE=5000, DECOMPRESS 4, uni_874.001, SIZE=5000, DECOMPRESS 4, 932_uni.001, SIZE=5000, DECOMPRESS 4, uni_932.001, SIZE=5000, DECOMPRESS 4, 936_uni.001, SIZE=5000, DECOMPRESS 4, uni_936.001, SIZE=5000, DECOMPRESS 4, 949_uni.001, SIZE=5000, DECOMPRESS 4, uni_949.001, SIZE=5000, DECOMPRESS 4, 950_uni.001, SIZE=5000, DECOMPRESS 4, uni_950.001, SIZE=5000, DECOMPRESS 4, uni_col.001, SIZE=5000, DECOMPRESS 4, uni_mon.001, SIZE=5000, DECOMPRESS 4, uni_932.w32, SIZE=5000, DECOMPRESS 4, uni_1250.w32, SIZE=5000, DECOMPRESS 4, uni_1253.w32, SIZE=5000, DECOMPRESS 4, uni_1254.w32, SIZE=5000, DECOMPRESS 4, uni_1255.w32, SIZE=5000, DECOMPRESS 4, uni_437.w32, SIZE=5000, DECOMPRESS 4, uni_852.w32, SIZE=5000, DECOMPRESS 4, uni_737.w32, SIZE=5000, DECOMPRESS 4, uni_775.w32, SIZE=5000, DECOMPRESS 4, uni_1256.w32, SIZE=5000, DECOMPRESS 4, uni_1257.w32, SIZE=5000, DECOMPRESS 4, uni_863.w32, SIZE=5000, DECOMPRESS 4, uni_864.w32, SIZE=5000, DECOMPRESS 4, uni_865.w32, SIZE=5000, DECOMPRESS 4, uni_866.w32, SIZE=5000, DECOMPRESS 4, uni_874.w32, SIZE=5000, DECOMPRESS 4, uni_upr.w32, SIZE=5000, DECOMPRESS 4, uni_850.w32, SIZE=5000, DECOMPRESS 4, uni_855.w32, SIZE=5000, DECOMPRESS 4, uni_857.w32, SIZE=5000, DECOMPRESS 4, uni_860.w32, SIZE=5000, DECOMPRESS 4, uni_mon.w32, SIZE=5000, DECOMPRESS 4, uni_1258.w32, SIZE=5000, DECOMPRESS 4, uni_861.w32, SIZE=5000, DECOMPRESS 4, uni_862.w32, SIZE=5000, DECOMPRESS 4, uni_1251.w32, SIZE=5000, DECOMPRESS 4, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Chineset] 6, 1250_uni.001, SIZE=5000, DECOMPRESS 6, uni_1250.001, SIZE=5000, DECOMPRESS 6, 1251_uni.001, SIZE=5000, DECOMPRESS 6, uni_1251.001, SIZE=5000, DECOMPRESS 6, 1252_uni.001, SIZE=5000, DECOMPRESS 6, uni_1252.001, SIZE=5000, DECOMPRESS 6, 1253_uni.001, SIZE=5000, DECOMPRESS 6, uni_1253.001, SIZE=5000, DECOMPRESS 6, 1254_uni.001, SIZE=5000, DECOMPRESS 6, uni_1254.001, SIZE=5000, DECOMPRESS 6, 1255_uni.001, SIZE=5000, DECOMPRESS 6, uni_1255.001, SIZE=5000, DECOMPRESS 6, 1256_uni.001, SIZE=5000, DECOMPRESS 6, uni_1256.001, SIZE=5000, DECOMPRESS 6, 1257_uni.001, SIZE=5000, DECOMPRESS 6, uni_1257.001, SIZE=5000, DECOMPRESS 6, 874_uni.001, SIZE=5000, DECOMPRESS 6, uni_874.001, SIZE=5000, DECOMPRESS 6, 932_uni.001, SIZE=5000, DECOMPRESS 6, uni_932.001, SIZE=5000, DECOMPRESS 6, 936_uni.001, SIZE=5000, DECOMPRESS 6, uni_936.001, SIZE=5000, DECOMPRESS 6, 949_uni.001, SIZE=5000, DECOMPRESS 6, uni_949.001, SIZE=5000, DECOMPRESS 6, 950_uni.001, SIZE=5000, DECOMPRESS 6, uni_950.001, SIZE=5000, DECOMPRESS 6, uni_col.001, SIZE=5000, DECOMPRESS 6, uni_mon.001, SIZE=5000, DECOMPRESS 6, uni_932.w32, SIZE=5000, DECOMPRESS 6, uni_1250.w32, SIZE=5000, DECOMPRESS 6, uni_1253.w32, SIZE=5000, DECOMPRESS 6, uni_1254.w32, SIZE=5000, DECOMPRESS 6, uni_1255.w32, SIZE=5000, DECOMPRESS 6, uni_437.w32, SIZE=5000, DECOMPRESS 6, uni_852.w32, SIZE=5000, DECOMPRESS 6, uni_737.w32, SIZE=5000, DECOMPRESS 6, uni_775.w32, SIZE=5000, DECOMPRESS 6, uni_1256.w32, SIZE=5000, DECOMPRESS 6, uni_1257.w32, SIZE=5000, DECOMPRESS 6, uni_863.w32, SIZE=5000, DECOMPRESS 6, uni_864.w32, SIZE=5000, DECOMPRESS 6, uni_865.w32, SIZE=5000, DECOMPRESS 6, uni_866.w32, SIZE=5000, DECOMPRESS 6, uni_874.w32, SIZE=5000, DECOMPRESS 6, uni_upr.w32, SIZE=5000, DECOMPRESS 6, uni_850.w32, SIZE=5000, DECOMPRESS 6, uni_855.w32, SIZE=5000, DECOMPRESS 6, uni_857.w32, SIZE=5000, DECOMPRESS 6, uni_860.w32, SIZE=5000, DECOMPRESS 6, uni_mon.w32, SIZE=5000, DECOMPRESS 6, uni_1258.w32, SIZE=5000, DECOMPRESS 6, uni_861.w32, SIZE=5000, DECOMPRESS 6, uni_862.w32, SIZE=5000, DECOMPRESS 6, uni_1251.w32, SIZE=5000, DECOMPRESS 6, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Deutsch] 8, 1250_uni.001, SIZE=5000, DECOMPRESS 8, uni_1250.001, SIZE=5000, DECOMPRESS 8, 1251_uni.001, SIZE=5000, DECOMPRESS 8, uni_1251.001, SIZE=5000, DECOMPRESS 8, 1252_uni.001, SIZE=5000, DECOMPRESS 8, uni_1252.001, SIZE=5000, DECOMPRESS 8, 1253_uni.001, SIZE=5000, DECOMPRESS 8, uni_1253.001, SIZE=5000, DECOMPRESS 8, 1254_uni.001, SIZE=5000, DECOMPRESS 8, uni_1254.001, SIZE=5000, DECOMPRESS 8, 1255_uni.001, SIZE=5000, DECOMPRESS 8, uni_1255.001, SIZE=5000, DECOMPRESS 8, 1256_uni.001, SIZE=5000, DECOMPRESS 8, uni_1256.001, SIZE=5000, DECOMPRESS 8, 1257_uni.001, SIZE=5000, DECOMPRESS 8, uni_1257.001, SIZE=5000, DECOMPRESS 8, 874_uni.001, SIZE=5000, DECOMPRESS 8, uni_874.001, SIZE=5000, DECOMPRESS 8, 932_uni.001, SIZE=5000, DECOMPRESS 8, uni_932.001, SIZE=5000, DECOMPRESS 8, 936_uni.001, SIZE=5000, DECOMPRESS 8, uni_936.001, SIZE=5000, DECOMPRESS 8, 949_uni.001, SIZE=5000, DECOMPRESS 8, uni_949.001, SIZE=5000, DECOMPRESS 8, 950_uni.001, SIZE=5000, DECOMPRESS 8, uni_950.001, SIZE=5000, DECOMPRESS 8, uni_col.001, SIZE=5000, DECOMPRESS 8, uni_mon.001, SIZE=5000, DECOMPRESS 8, uni_932.w32, SIZE=5000, DECOMPRESS 8, uni_1250.w32, SIZE=5000, DECOMPRESS 8, uni_1253.w32, SIZE=5000, DECOMPRESS 8, uni_1254.w32, SIZE=5000, DECOMPRESS 8, uni_1255.w32, SIZE=5000, DECOMPRESS 8, uni_437.w32, SIZE=5000, DECOMPRESS 8, uni_852.w32, SIZE=5000, DECOMPRESS 8, uni_737.w32, SIZE=5000, DECOMPRESS 8, uni_775.w32, SIZE=5000, DECOMPRESS 8, uni_1256.w32, SIZE=5000, DECOMPRESS 8, uni_1257.w32, SIZE=5000, DECOMPRESS 8, uni_863.w32, SIZE=5000, DECOMPRESS 8, uni_864.w32, SIZE=5000, DECOMPRESS 8, uni_865.w32, SIZE=5000, DECOMPRESS 8, uni_866.w32, SIZE=5000, DECOMPRESS 8, uni_874.w32, SIZE=5000, DECOMPRESS 8, uni_upr.w32, SIZE=5000, DECOMPRESS 8, uni_850.w32, SIZE=5000, DECOMPRESS 8, uni_855.w32, SIZE=5000, DECOMPRESS 8, uni_857.w32, SIZE=5000, DECOMPRESS 8, uni_860.w32, SIZE=5000, DECOMPRESS 8, uni_mon.w32, SIZE=5000, DECOMPRESS 8, uni_1258.w32, SIZE=5000, DECOMPRESS 8, uni_861.w32, SIZE=5000, DECOMPRESS 8, uni_862.w32, SIZE=5000, DECOMPRESS 8, uni_1251.w32, SIZE=5000, DECOMPRESS 8, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Espanol] 10, 1250_uni.001, SIZE=5000, DECOMPRESS 10, uni_1250.001, SIZE=5000, DECOMPRESS 10, 1251_uni.001, SIZE=5000, DECOMPRESS 10, uni_1251.001, SIZE=5000, DECOMPRESS 10, 1252_uni.001, SIZE=5000, DECOMPRESS 10, uni_1252.001, SIZE=5000, DECOMPRESS 10, 1253_uni.001, SIZE=5000, DECOMPRESS 10, uni_1253.001, SIZE=5000, DECOMPRESS 10, 1254_uni.001, SIZE=5000, DECOMPRESS 10, uni_1254.001, SIZE=5000, DECOMPRESS 10, 1255_uni.001, SIZE=5000, DECOMPRESS 10, uni_1255.001, SIZE=5000, DECOMPRESS 10, 1256_uni.001, SIZE=5000, DECOMPRESS 10, uni_1256.001, SIZE=5000, DECOMPRESS 10, 1257_uni.001, SIZE=5000, DECOMPRESS 10, uni_1257.001, SIZE=5000, DECOMPRESS 10, 874_uni.001, SIZE=5000, DECOMPRESS 10, uni_874.001, SIZE=5000, DECOMPRESS 10, 932_uni.001, SIZE=5000, DECOMPRESS 10, uni_932.001, SIZE=5000, DECOMPRESS 10, 936_uni.001, SIZE=5000, DECOMPRESS 10, uni_936.001, SIZE=5000, DECOMPRESS 10, 949_uni.001, SIZE=5000, DECOMPRESS 10, uni_949.001, SIZE=5000, DECOMPRESS 10, 950_uni.001, SIZE=5000, DECOMPRESS 10, uni_950.001, SIZE=5000, DECOMPRESS 10, uni_col.001, SIZE=5000, DECOMPRESS 10, uni_mon.001, SIZE=5000, DECOMPRESS 10, uni_932.w32, SIZE=5000, DECOMPRESS 10, uni_1250.w32, SIZE=5000, DECOMPRESS 10, uni_1253.w32, SIZE=5000, DECOMPRESS 10, uni_1254.w32, SIZE=5000, DECOMPRESS 10, uni_1255.w32, SIZE=5000, DECOMPRESS 10, uni_437.w32, SIZE=5000, DECOMPRESS 10, uni_852.w32, SIZE=5000, DECOMPRESS 10, uni_737.w32, SIZE=5000, DECOMPRESS 10, uni_775.w32, SIZE=5000, DECOMPRESS 10, uni_1256.w32, SIZE=5000, DECOMPRESS 10, uni_1257.w32, SIZE=5000, DECOMPRESS 10, uni_863.w32, SIZE=5000, DECOMPRESS 10, uni_864.w32, SIZE=5000, DECOMPRESS 10, uni_865.w32, SIZE=5000, DECOMPRESS 10, uni_866.w32, SIZE=5000, DECOMPRESS 10, uni_874.w32, SIZE=5000, DECOMPRESS 10, uni_upr.w32, SIZE=5000, DECOMPRESS 10, uni_850.w32, SIZE=5000, DECOMPRESS 10, uni_855.w32, SIZE=5000, DECOMPRESS 10, uni_857.w32, SIZE=5000, DECOMPRESS 10, uni_860.w32, SIZE=5000, DECOMPRESS 10, uni_mon.w32, SIZE=5000, DECOMPRESS 10, uni_1258.w32, SIZE=5000, DECOMPRESS 10, uni_861.w32, SIZE=5000, DECOMPRESS 10, uni_862.w32, SIZE=5000, DECOMPRESS 10, uni_1251.w32, SIZE=5000, DECOMPRESS 10, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Francais] 12, 1250_uni.001, SIZE=5000, DECOMPRESS 12, uni_1250.001, SIZE=5000, DECOMPRESS 12, 1251_uni.001, SIZE=5000, DECOMPRESS 12, uni_1251.001, SIZE=5000, DECOMPRESS 12, 1252_uni.001, SIZE=5000, DECOMPRESS 12, uni_1252.001, SIZE=5000, DECOMPRESS 12, 1253_uni.001, SIZE=5000, DECOMPRESS 12, uni_1253.001, SIZE=5000, DECOMPRESS 12, 1254_uni.001, SIZE=5000, DECOMPRESS 12, uni_1254.001, SIZE=5000, DECOMPRESS 12, 1255_uni.001, SIZE=5000, DECOMPRESS 12, uni_1255.001, SIZE=5000, DECOMPRESS 12, 1256_uni.001, SIZE=5000, DECOMPRESS 12, uni_1256.001, SIZE=5000, DECOMPRESS 12, 1257_uni.001, SIZE=5000, DECOMPRESS 12, uni_1257.001, SIZE=5000, DECOMPRESS 12, 874_uni.001, SIZE=5000, DECOMPRESS 12, uni_874.001, SIZE=5000, DECOMPRESS 12, 932_uni.001, SIZE=5000, DECOMPRESS 12, uni_932.001, SIZE=5000, DECOMPRESS 12, 936_uni.001, SIZE=5000, DECOMPRESS 12, uni_936.001, SIZE=5000, DECOMPRESS 12, 949_uni.001, SIZE=5000, DECOMPRESS 12, uni_949.001, SIZE=5000, DECOMPRESS 12, 950_uni.001, SIZE=5000, DECOMPRESS 12, uni_950.001, SIZE=5000, DECOMPRESS 12, uni_col.001, SIZE=5000, DECOMPRESS 12, uni_mon.001, SIZE=5000, DECOMPRESS 12, uni_932.w32, SIZE=5000, DECOMPRESS 12, uni_1250.w32, SIZE=5000, DECOMPRESS 12, uni_1253.w32, SIZE=5000, DECOMPRESS 12, uni_1254.w32, SIZE=5000, DECOMPRESS 12, uni_1255.w32, SIZE=5000, DECOMPRESS 12, uni_437.w32, SIZE=5000, DECOMPRESS 12, uni_852.w32, SIZE=5000, DECOMPRESS 12, uni_737.w32, SIZE=5000, DECOMPRESS 12, uni_775.w32, SIZE=5000, DECOMPRESS 12, uni_1256.w32, SIZE=5000, DECOMPRESS 12, uni_1257.w32, SIZE=5000, DECOMPRESS 12, uni_863.w32, SIZE=5000, DECOMPRESS 12, uni_864.w32, SIZE=5000, DECOMPRESS 12, uni_865.w32, SIZE=5000, DECOMPRESS 12, uni_866.w32, SIZE=5000, DECOMPRESS 12, uni_874.w32, SIZE=5000, DECOMPRESS 12, uni_upr.w32, SIZE=5000, DECOMPRESS 12, uni_850.w32, SIZE=5000, DECOMPRESS 12, uni_855.w32, SIZE=5000, DECOMPRESS 12, uni_857.w32, SIZE=5000, DECOMPRESS 12, uni_860.w32, SIZE=5000, DECOMPRESS 12, uni_mon.w32, SIZE=5000, DECOMPRESS 12, uni_1258.w32, SIZE=5000, DECOMPRESS 12, uni_861.w32, SIZE=5000, DECOMPRESS 12, uni_862.w32, SIZE=5000, DECOMPRESS 12, uni_1251.w32, SIZE=5000, DECOMPRESS 12, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Italiano] 14, 1250_uni.001, SIZE=5000, DECOMPRESS 14, uni_1250.001, SIZE=5000, DECOMPRESS 14, 1251_uni.001, SIZE=5000, DECOMPRESS 14, uni_1251.001, SIZE=5000, DECOMPRESS 14, 1252_uni.001, SIZE=5000, DECOMPRESS 14, uni_1252.001, SIZE=5000, DECOMPRESS 14, 1253_uni.001, SIZE=5000, DECOMPRESS 14, uni_1253.001, SIZE=5000, DECOMPRESS 14, 1254_uni.001, SIZE=5000, DECOMPRESS 14, uni_1254.001, SIZE=5000, DECOMPRESS 14, 1255_uni.001, SIZE=5000, DECOMPRESS 14, uni_1255.001, SIZE=5000, DECOMPRESS 14, 1256_uni.001, SIZE=5000, DECOMPRESS 14, uni_1256.001, SIZE=5000, DECOMPRESS 14, 1257_uni.001, SIZE=5000, DECOMPRESS 14, uni_1257.001, SIZE=5000, DECOMPRESS 14, 874_uni.001, SIZE=5000, DECOMPRESS 14, uni_874.001, SIZE=5000, DECOMPRESS 14, 932_uni.001, SIZE=5000, DECOMPRESS 14, uni_932.001, SIZE=5000, DECOMPRESS 14, 936_uni.001, SIZE=5000, DECOMPRESS 14, uni_936.001, SIZE=5000, DECOMPRESS 14, 949_uni.001, SIZE=5000, DECOMPRESS 14, uni_949.001, SIZE=5000, DECOMPRESS 14, 950_uni.001, SIZE=5000, DECOMPRESS 14, uni_950.001, SIZE=5000, DECOMPRESS 14, uni_col.001, SIZE=5000, DECOMPRESS 14, uni_mon.001, SIZE=5000, DECOMPRESS 14, uni_932.w32, SIZE=5000, DECOMPRESS 14, uni_1250.w32, SIZE=5000, DECOMPRESS 14, uni_1253.w32, SIZE=5000, DECOMPRESS 14, uni_1254.w32, SIZE=5000, DECOMPRESS 14, uni_1255.w32, SIZE=5000, DECOMPRESS 14, uni_437.w32, SIZE=5000, DECOMPRESS 14, uni_852.w32, SIZE=5000, DECOMPRESS 14, uni_737.w32, SIZE=5000, DECOMPRESS 14, uni_775.w32, SIZE=5000, DECOMPRESS 14, uni_1256.w32, SIZE=5000, DECOMPRESS 14, uni_1257.w32, SIZE=5000, DECOMPRESS 14, uni_863.w32, SIZE=5000, DECOMPRESS 14, uni_864.w32, SIZE=5000, DECOMPRESS 14, uni_865.w32, SIZE=5000, DECOMPRESS 14, uni_866.w32, SIZE=5000, DECOMPRESS 14, uni_874.w32, SIZE=5000, DECOMPRESS 14, uni_upr.w32, SIZE=5000, DECOMPRESS 14, uni_850.w32, SIZE=5000, DECOMPRESS 14, uni_855.w32, SIZE=5000, DECOMPRESS 14, uni_857.w32, SIZE=5000, DECOMPRESS 14, uni_860.w32, SIZE=5000, DECOMPRESS 14, uni_mon.w32, SIZE=5000, DECOMPRESS 14, uni_1258.w32, SIZE=5000, DECOMPRESS 14, uni_861.w32, SIZE=5000, DECOMPRESS 14, uni_862.w32, SIZE=5000, DECOMPRESS 14, uni_1251.w32, SIZE=5000, DECOMPRESS 14, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Korean] 16, 1250_uni.001, SIZE=5000, DECOMPRESS 16, uni_1250.001, SIZE=5000, DECOMPRESS 16, 1251_uni.001, SIZE=5000, DECOMPRESS 16, uni_1251.001, SIZE=5000, DECOMPRESS 16, 1252_uni.001, SIZE=5000, DECOMPRESS 16, uni_1252.001, SIZE=5000, DECOMPRESS 16, 1253_uni.001, SIZE=5000, DECOMPRESS 16, uni_1253.001, SIZE=5000, DECOMPRESS 16, 1254_uni.001, SIZE=5000, DECOMPRESS 16, uni_1254.001, SIZE=5000, DECOMPRESS 16, 1255_uni.001, SIZE=5000, DECOMPRESS 16, uni_1255.001, SIZE=5000, DECOMPRESS 16, 1256_uni.001, SIZE=5000, DECOMPRESS 16, uni_1256.001, SIZE=5000, DECOMPRESS 16, 1257_uni.001, SIZE=5000, DECOMPRESS 16, uni_1257.001, SIZE=5000, DECOMPRESS 16, 874_uni.001, SIZE=5000, DECOMPRESS 16, uni_874.001, SIZE=5000, DECOMPRESS 16, 932_uni.001, SIZE=5000, DECOMPRESS 16, uni_932.001, SIZE=5000, DECOMPRESS 16, 936_uni.001, SIZE=5000, DECOMPRESS 16, uni_936.001, SIZE=5000, DECOMPRESS 16, 949_uni.001, SIZE=5000, DECOMPRESS 16, uni_949.001, SIZE=5000, DECOMPRESS 16, 950_uni.001, SIZE=5000, DECOMPRESS 16, uni_950.001, SIZE=5000, DECOMPRESS 16, uni_col.001, SIZE=5000, DECOMPRESS 16, uni_mon.001, SIZE=5000, DECOMPRESS 16, uni_932.w32, SIZE=5000, DECOMPRESS 16, uni_1250.w32, SIZE=5000, DECOMPRESS 16, uni_1253.w32, SIZE=5000, DECOMPRESS 16, uni_1254.w32, SIZE=5000, DECOMPRESS 16, uni_1255.w32, SIZE=5000, DECOMPRESS 16, uni_437.w32, SIZE=5000, DECOMPRESS 16, uni_852.w32, SIZE=5000, DECOMPRESS 16, uni_737.w32, SIZE=5000, DECOMPRESS 16, uni_775.w32, SIZE=5000, DECOMPRESS 16, uni_1256.w32, SIZE=5000, DECOMPRESS 16, uni_1257.w32, SIZE=5000, DECOMPRESS 16, uni_863.w32, SIZE=5000, DECOMPRESS 16, uni_864.w32, SIZE=5000, DECOMPRESS 16, uni_865.w32, SIZE=5000, DECOMPRESS 16, uni_866.w32, SIZE=5000, DECOMPRESS 16, uni_874.w32, SIZE=5000, DECOMPRESS 16, uni_upr.w32, SIZE=5000, DECOMPRESS 16, uni_850.w32, SIZE=5000, DECOMPRESS 16, uni_855.w32, SIZE=5000, DECOMPRESS 16, uni_857.w32, SIZE=5000, DECOMPRESS 16, uni_860.w32, SIZE=5000, DECOMPRESS 16, uni_mon.w32, SIZE=5000, DECOMPRESS 16, uni_1258.w32, SIZE=5000, DECOMPRESS 16, uni_861.w32, SIZE=5000, DECOMPRESS 16, uni_862.w32, SIZE=5000, DECOMPRESS 16, uni_1251.w32, SIZE=5000, DECOMPRESS 16, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Nihongo] 18, 1250_uni.001, SIZE=5000, DECOMPRESS 18, uni_1250.001, SIZE=5000, DECOMPRESS 18, 1251_uni.001, SIZE=5000, DECOMPRESS 18, uni_1251.001, SIZE=5000, DECOMPRESS 18, 1252_uni.001, SIZE=5000, DECOMPRESS 18, uni_1252.001, SIZE=5000, DECOMPRESS 18, 1253_uni.001, SIZE=5000, DECOMPRESS 18, uni_1253.001, SIZE=5000, DECOMPRESS 18, 1254_uni.001, SIZE=5000, DECOMPRESS 18, uni_1254.001, SIZE=5000, DECOMPRESS 18, 1255_uni.001, SIZE=5000, DECOMPRESS 18, uni_1255.001, SIZE=5000, DECOMPRESS 18, 1256_uni.001, SIZE=5000, DECOMPRESS 18, uni_1256.001, SIZE=5000, DECOMPRESS 18, 1257_uni.001, SIZE=5000, DECOMPRESS 18, uni_1257.001, SIZE=5000, DECOMPRESS 18, 874_uni.001, SIZE=5000, DECOMPRESS 18, uni_874.001, SIZE=5000, DECOMPRESS 18, 932_uni.001, SIZE=5000, DECOMPRESS 18, uni_932.001, SIZE=5000, DECOMPRESS 18, 936_uni.001, SIZE=5000, DECOMPRESS 18, uni_936.001, SIZE=5000, DECOMPRESS 18, 949_uni.001, SIZE=5000, DECOMPRESS 18, uni_949.001, SIZE=5000, DECOMPRESS 18, 950_uni.001, SIZE=5000, DECOMPRESS 18, uni_950.001, SIZE=5000, DECOMPRESS 18, uni_col.001, SIZE=5000, DECOMPRESS 18, uni_mon.001, SIZE=5000, DECOMPRESS 18, uni_932.w32, SIZE=5000, DECOMPRESS 18, uni_1250.w32, SIZE=5000, DECOMPRESS 18, uni_1253.w32, SIZE=5000, DECOMPRESS 18, uni_1254.w32, SIZE=5000, DECOMPRESS 18, uni_1255.w32, SIZE=5000, DECOMPRESS 18, uni_437.w32, SIZE=5000, DECOMPRESS 18, uni_852.w32, SIZE=5000, DECOMPRESS 18, uni_737.w32, SIZE=5000, DECOMPRESS 18, uni_775.w32, SIZE=5000, DECOMPRESS 18, uni_1256.w32, SIZE=5000, DECOMPRESS 18, uni_1257.w32, SIZE=5000, DECOMPRESS 18, uni_863.w32, SIZE=5000, DECOMPRESS 18, uni_864.w32, SIZE=5000, DECOMPRESS 18, uni_865.w32, SIZE=5000, DECOMPRESS 18, uni_866.w32, SIZE=5000, DECOMPRESS 18, uni_874.w32, SIZE=5000, DECOMPRESS 18, uni_upr.w32, SIZE=5000, DECOMPRESS 18, uni_850.w32, SIZE=5000, DECOMPRESS 18, uni_855.w32, SIZE=5000, DECOMPRESS 18, uni_857.w32, SIZE=5000, DECOMPRESS 18, uni_860.w32, SIZE=5000, DECOMPRESS 18, uni_mon.w32, SIZE=5000, DECOMPRESS 18, uni_1258.w32, SIZE=5000, DECOMPRESS 18, uni_861.w32, SIZE=5000, DECOMPRESS 18, uni_862.w32, SIZE=5000, DECOMPRESS 18, uni_1251.w32, SIZE=5000, DECOMPRESS 18, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Portugue] 20, 1250_uni.001, SIZE=5000, DECOMPRESS 20, uni_1250.001, SIZE=5000, DECOMPRESS 20, 1251_uni.001, SIZE=5000, DECOMPRESS 20, uni_1251.001, SIZE=5000, DECOMPRESS 20, 1252_uni.001, SIZE=5000, DECOMPRESS 20, uni_1252.001, SIZE=5000, DECOMPRESS 20, 1253_uni.001, SIZE=5000, DECOMPRESS 20, uni_1253.001, SIZE=5000, DECOMPRESS 20, 1254_uni.001, SIZE=5000, DECOMPRESS 20, uni_1254.001, SIZE=5000, DECOMPRESS 20, 1255_uni.001, SIZE=5000, DECOMPRESS 20, uni_1255.001, SIZE=5000, DECOMPRESS 20, 1256_uni.001, SIZE=5000, DECOMPRESS 20, uni_1256.001, SIZE=5000, DECOMPRESS 20, 1257_uni.001, SIZE=5000, DECOMPRESS 20, uni_1257.001, SIZE=5000, DECOMPRESS 20, 874_uni.001, SIZE=5000, DECOMPRESS 20, uni_874.001, SIZE=5000, DECOMPRESS 20, 932_uni.001, SIZE=5000, DECOMPRESS 20, uni_932.001, SIZE=5000, DECOMPRESS 20, 936_uni.001, SIZE=5000, DECOMPRESS 20, uni_936.001, SIZE=5000, DECOMPRESS 20, 949_uni.001, SIZE=5000, DECOMPRESS 20, uni_949.001, SIZE=5000, DECOMPRESS 20, 950_uni.001, SIZE=5000, DECOMPRESS 20, uni_950.001, SIZE=5000, DECOMPRESS 20, uni_col.001, SIZE=5000, DECOMPRESS 20, uni_mon.001, SIZE=5000, DECOMPRESS 20, uni_932.w32, SIZE=5000, DECOMPRESS 20, uni_1250.w32, SIZE=5000, DECOMPRESS 20, uni_1253.w32, SIZE=5000, DECOMPRESS 20, uni_1254.w32, SIZE=5000, DECOMPRESS 20, uni_1255.w32, SIZE=5000, DECOMPRESS 20, uni_437.w32, SIZE=5000, DECOMPRESS 20, uni_852.w32, SIZE=5000, DECOMPRESS 20, uni_737.w32, SIZE=5000, DECOMPRESS 20, uni_775.w32, SIZE=5000, DECOMPRESS 20, uni_1256.w32, SIZE=5000, DECOMPRESS 20, uni_1257.w32, SIZE=5000, DECOMPRESS 20, uni_863.w32, SIZE=5000, DECOMPRESS 20, uni_864.w32, SIZE=5000, DECOMPRESS 20, uni_865.w32, SIZE=5000, DECOMPRESS 20, uni_866.w32, SIZE=5000, DECOMPRESS 20, uni_874.w32, SIZE=5000, DECOMPRESS 20, uni_upr.w32, SIZE=5000, DECOMPRESS 20, uni_850.w32, SIZE=5000, DECOMPRESS 20, uni_855.w32, SIZE=5000, DECOMPRESS 20, uni_857.w32, SIZE=5000, DECOMPRESS 20, uni_860.w32, SIZE=5000, DECOMPRESS 20, uni_mon.w32, SIZE=5000, DECOMPRESS 20, uni_1258.w32, SIZE=5000, DECOMPRESS 20, uni_861.w32, SIZE=5000, DECOMPRESS 20, uni_862.w32, SIZE=5000, DECOMPRESS 20, uni_1251.w32, SIZE=5000, DECOMPRESS 20, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Russki] 26, 1250_uni.001, SIZE=5000, DECOMPRESS 26, uni_1250.001, SIZE=5000, DECOMPRESS 26, 1251_uni.001, SIZE=5000, DECOMPRESS 26, uni_1251.001, SIZE=5000, DECOMPRESS 26, 1252_uni.001, SIZE=5000, DECOMPRESS 26, uni_1252.001, SIZE=5000, DECOMPRESS 26, 1253_uni.001, SIZE=5000, DECOMPRESS 26, uni_1253.001, SIZE=5000, DECOMPRESS 26, 1254_uni.001, SIZE=5000, DECOMPRESS 26, uni_1254.001, SIZE=5000, DECOMPRESS 26, 1255_uni.001, SIZE=5000, DECOMPRESS 26, uni_1255.001, SIZE=5000, DECOMPRESS 26, 1256_uni.001, SIZE=5000, DECOMPRESS 26, uni_1256.001, SIZE=5000, DECOMPRESS 26, 1257_uni.001, SIZE=5000, DECOMPRESS 26, uni_1257.001, SIZE=5000, DECOMPRESS 26, 874_uni.001, SIZE=5000, DECOMPRESS 26, uni_874.001, SIZE=5000, DECOMPRESS 26, 932_uni.001, SIZE=5000, DECOMPRESS 26, uni_932.001, SIZE=5000, DECOMPRESS 26, 936_uni.001, SIZE=5000, DECOMPRESS 26, uni_936.001, SIZE=5000, DECOMPRESS 26, 949_uni.001, SIZE=5000, DECOMPRESS 26, uni_949.001, SIZE=5000, DECOMPRESS 26, 950_uni.001, SIZE=5000, DECOMPRESS 26, uni_950.001, SIZE=5000, DECOMPRESS 26, uni_col.001, SIZE=5000, DECOMPRESS 26, uni_mon.001, SIZE=5000, DECOMPRESS 26, uni_932.w32, SIZE=5000, DECOMPRESS 26, uni_1250.w32, SIZE=5000, DECOMPRESS 26, uni_1253.w32, SIZE=5000, DECOMPRESS 26, uni_1254.w32, SIZE=5000, DECOMPRESS 26, uni_1255.w32, SIZE=5000, DECOMPRESS 26, uni_437.w32, SIZE=5000, DECOMPRESS 26, uni_852.w32, SIZE=5000, DECOMPRESS 26, uni_737.w32, SIZE=5000, DECOMPRESS 26, uni_775.w32, SIZE=5000, DECOMPRESS 26, uni_1256.w32, SIZE=5000, DECOMPRESS 26, uni_1257.w32, SIZE=5000, DECOMPRESS 26, uni_863.w32, SIZE=5000, DECOMPRESS 26, uni_864.w32, SIZE=5000, DECOMPRESS 26, uni_865.w32, SIZE=5000, DECOMPRESS 26, uni_866.w32, SIZE=5000, DECOMPRESS 26, uni_874.w32, SIZE=5000, DECOMPRESS 26, uni_upr.w32, SIZE=5000, DECOMPRESS 26, uni_850.w32, SIZE=5000, DECOMPRESS 26, uni_855.w32, SIZE=5000, DECOMPRESS 26, uni_857.w32, SIZE=5000, DECOMPRESS 26, uni_860.w32, SIZE=5000, DECOMPRESS 26, uni_mon.w32, SIZE=5000, DECOMPRESS 26, uni_1258.w32, SIZE=5000, DECOMPRESS 26, uni_861.w32, SIZE=5000, DECOMPRESS 26, uni_862.w32, SIZE=5000, DECOMPRESS 26, uni_1251.w32, SIZE=5000, DECOMPRESS 26, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Unicode-Polski] 28, 1250_uni.001, SIZE=5000, DECOMPRESS 28, uni_1250.001, SIZE=5000, DECOMPRESS 28, 1251_uni.001, SIZE=5000, DECOMPRESS 28, uni_1251.001, SIZE=5000, DECOMPRESS 28, 1252_uni.001, SIZE=5000, DECOMPRESS 28, uni_1252.001, SIZE=5000, DECOMPRESS 28, 1253_uni.001, SIZE=5000, DECOMPRESS 28, uni_1253.001, SIZE=5000, DECOMPRESS 28, 1254_uni.001, SIZE=5000, DECOMPRESS 28, uni_1254.001, SIZE=5000, DECOMPRESS 28, 1255_uni.001, SIZE=5000, DECOMPRESS 28, uni_1255.001, SIZE=5000, DECOMPRESS 28, 1256_uni.001, SIZE=5000, DECOMPRESS 28, uni_1256.001, SIZE=5000, DECOMPRESS 28, 1257_uni.001, SIZE=5000, DECOMPRESS 28, uni_1257.001, SIZE=5000, DECOMPRESS 28, 874_uni.001, SIZE=5000, DECOMPRESS 28, uni_874.001, SIZE=5000, DECOMPRESS 28, 932_uni.001, SIZE=5000, DECOMPRESS 28, uni_932.001, SIZE=5000, DECOMPRESS 28, 936_uni.001, SIZE=5000, DECOMPRESS 28, uni_936.001, SIZE=5000, DECOMPRESS 28, 949_uni.001, SIZE=5000, DECOMPRESS 28, uni_949.001, SIZE=5000, DECOMPRESS 28, 950_uni.001, SIZE=5000, DECOMPRESS 28, uni_950.001, SIZE=5000, DECOMPRESS 28, uni_col.001, SIZE=5000, DECOMPRESS 28, uni_mon.001, SIZE=5000, DECOMPRESS 28, uni_932.w32, SIZE=5000, DECOMPRESS 28, uni_1250.w32, SIZE=5000, DECOMPRESS 28, uni_1253.w32, SIZE=5000, DECOMPRESS 28, uni_1254.w32, SIZE=5000, DECOMPRESS 28, uni_1255.w32, SIZE=5000, DECOMPRESS 28, uni_437.w32, SIZE=5000, DECOMPRESS 28, uni_852.w32, SIZE=5000, DECOMPRESS 28, uni_737.w32, SIZE=5000, DECOMPRESS 28, uni_775.w32, SIZE=5000, DECOMPRESS 28, uni_1256.w32, SIZE=5000, DECOMPRESS 28, uni_1257.w32, SIZE=5000, DECOMPRESS 28, uni_863.w32, SIZE=5000, DECOMPRESS 28, uni_864.w32, SIZE=5000, DECOMPRESS 28, uni_865.w32, SIZE=5000, DECOMPRESS 28, uni_866.w32, SIZE=5000, DECOMPRESS 28, uni_874.w32, SIZE=5000, DECOMPRESS 28, uni_upr.w32, SIZE=5000, DECOMPRESS 28, uni_850.w32, SIZE=5000, DECOMPRESS 28, uni_855.w32, SIZE=5000, DECOMPRESS 28, uni_857.w32, SIZE=5000, DECOMPRESS 28, uni_860.w32, SIZE=5000, DECOMPRESS 28, uni_mon.w32, SIZE=5000, DECOMPRESS 28, uni_1258.w32, SIZE=5000, DECOMPRESS 28, uni_861.w32, SIZE=5000, DECOMPRESS 28, uni_862.w32, SIZE=5000, DECOMPRESS 28, uni_1251.w32, SIZE=5000, DECOMPRESS 28, uni_1252.w32, SIZE=5000, DECOMPRESS [Files-Hlp-Sys32-English] 1, Readme.txt, SIZE=50000, DECOMPRESS ; 2, nt4using.cnt, SIZE=50000, DECOMPRESS ; 2, nt4using.hlp, SIZE=50000, DECOMPRESS ; 2, loginw32.hlp, SIZE=50000, DECOMPRESS ; 2, axcred.hlp, SIZE=50000, DECOMPRESS ; 2, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 2, axnds.hlp, SIZE=50000, DECOMPRESS ; 2, axbndry.hlp, SIZE=50000, DECOMPRESS ; 2, axscript.hlp, SIZE=50000, DECOMPRESS ; 2, axdialup.hlp, SIZE=50000, DECOMPRESS ; 2, axprf.hlp, SIZE=50000, DECOMPRESS 2, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-English] 2, Account.htm, SIZE=50000, DECOMPRESS 2, admin.jpg, SIZE=50000, DECOMPRESS 2, Browseto.htm, SIZE=50000, DECOMPRESS 2, c95contx.gif, SIZE=50000, DECOMPRESS 2, c95down.gif, SIZE=50000, DECOMPRESS 2, c95foldr.gif, SIZE=50000, DECOMPRESS 2, c95mycom.gif, SIZE=50000, DECOMPRESS 2, c95n.gif, SIZE=50000, DECOMPRESS 2, c95neigh.gif, SIZE=50000, DECOMPRESS 2, c95servr.gif, SIZE=50000, DECOMPRESS 2, c95tree.gif, SIZE=50000, DECOMPRESS 2, c95up.gif, SIZE=50000, DECOMPRESS 2, c95uparr.gif, SIZE=50000, DECOMPRESS 2, c95x.gif, SIZE=50000, DECOMPRESS 2, C9xPass.htm, SIZE=50000, DECOMPRESS 2, Capture.htm, SIZE=50000, DECOMPRESS 2, CliProps.htm, SIZE=50000, DECOMPRESS 2, CNTPass.htm, SIZE=50000, DECOMPRESS 2, cont_nt.gif, SIZE=50000, DECOMPRESS 2, default.css, SIZE=50000, DECOMPRESS 2, DelMap.htm, SIZE=50000, DECOMPRESS 2, DisDrive.htm, SIZE=50000, DECOMPRESS 2, EdtScrpt.htm, SIZE=50000, DECOMPRESS 2, EndCap.htm, SIZE=50000, DECOMPRESS 2, GroupMem.htm, SIZE=50000, DECOMPRESS 2, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 2, Help.htm, SIZE=50000, DECOMPRESS 2, helpicon.jpg, SIZE=50000, DECOMPRESS 2, HtmlHelp.css, SIZE=50000, DECOMPRESS 2, LimitAcc.htm, SIZE=50000, DECOMPRESS 2, LogInOth.htm, SIZE=50000, DECOMPRESS 2, LogInPrf.htm, SIZE=50000, DECOMPRESS 2, LogOut.htm, SIZE=50000, DECOMPRESS 2, Mailing.htm, SIZE=50000, DECOMPRESS 2, MapDrive.htm, SIZE=50000, DECOMPRESS 2, MS_Help.css, SIZE=50000, DECOMPRESS 2, NetHood.htm, SIZE=50000, DECOMPRESS 2, N-icon.jpg, SIZE=50000, DECOMPRESS 2, nmenu.gif, SIZE=50000, DECOMPRESS 2, NWConnec.htm, SIZE=50000, DECOMPRESS 2, NWCopy.htm, SIZE=50000, DECOMPRESS 2, NWGuide.hhc, SIZE=50000, DECOMPRESS 2, NWLogin.htm, SIZE=50000, DECOMPRESS 2, nwutils.gif, SIZE=50000, DECOMPRESS 2, NWUtils.htm, SIZE=50000, DECOMPRESS 2, ObjProps.htm, SIZE=50000, DECOMPRESS 2, Personal.htm, SIZE=50000, DECOMPRESS 2, Purge.htm, SIZE=50000, DECOMPRESS 2, PWAdmin.htm, SIZE=50000, DECOMPRESS 2, QuickRef.htm, SIZE=50000, DECOMPRESS 2, Salvage.htm, SIZE=50000, DECOMPRESS 2, SendMess.htm, SIZE=50000, DECOMPRESS 2, SERVER.jpg, SIZE=50000, DECOMPRESS 2, SERVERGR.jpg, SIZE=50000, DECOMPRESS 2, SynchPW.htm, SIZE=50000, DECOMPRESS 2, TrayIcon.htm, SIZE=50000, DECOMPRESS 2, TREE.jpg, SIZE=50000, DECOMPRESS 2, UseNMenu.htm, SIZE=50000, DECOMPRESS 2, UserAdm.htm, SIZE=50000, DECOMPRESS 2, UserGuid.htm, SIZE=50000, DECOMPRESS 2, ViewConx.htm, SIZE=50000, DECOMPRESS 2, ViewMap.htm, SIZE=50000, DECOMPRESS 2, VwRights.htm, SIZE=50000, DECOMPRESS 2, w95help.css, SIZE=50000, DECOMPRESS 2, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 2, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 2, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 2, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 2, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 2, WHnonIE4.css, SIZE=50000, DECOMPRESS 2, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 2, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 2, win95.gif, SIZE=50000, DECOMPRESS 2, winnt.gif, SIZE=50000, DECOMPRESS 2, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-English] 2, Attrib.htm, SIZE=50000, DECOMPRESS 2, CHKMARK.gif, SIZE=50000, DECOMPRESS 2, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 2, FileCopy.htm, SIZE=50000, DECOMPRESS 2, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 2, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 2, hh_ndx.htm, SIZE=50000, DECOMPRESS 2, hh_toc.htm, SIZE=50000, DECOMPRESS 2, infoDir.htm, SIZE=50000, DECOMPRESS 2, InfoFile.htm, SIZE=50000, DECOMPRESS 2, Inherit.htm, SIZE=50000, DECOMPRESS 2, logfile.htm, SIZE=50000, DECOMPRESS 2, Rights.htm, SIZE=50000, DECOMPRESS 2, start.htm, SIZE=50000, DECOMPRESS 2, styles.css, SIZE=50000, DECOMPRESS 2, Tmarks.htm, SIZE=50000, DECOMPRESS 2, toc.hhc, SIZE=50000, DECOMPRESS 2, Using.htm, SIZE=50000, DECOMPRESS 2, VolInfo.htm, SIZE=50000, DECOMPRESS 2, VolStats.htm, SIZE=50000, DECOMPRESS 2, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 2, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 2, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 2, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 2, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 2, WHnonIE4.css, SIZE=50000, DECOMPRESS 2, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 2, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-English] 2, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-English] 2, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-English] 2, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 2, netwarer.dll, SIZE=50000, DECOMPRESS 2, novnpntr.dll, SIZE=50000, DECOMPRESS ; 2, nwcplr.dll, SIZE=50000, DECOMPRESS 2, nwevents.dll, SIZE=50000, DECOMPRESS 2, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 2, nwsetupr.dll, SIZE=50000, DECOMPRESS 2, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 2, nwrightr.dll, SIZE=50000, DECOMPRESS 2, nwshlxnr.dll, SIZE=50000, DECOMPRESS 2, loginw32.rll, SIZE=50000, DECOMPRESS ; 2, axcred.rll, SIZE=50000, DECOMPRESS ; 2, axcrednt.rll, SIZE=50000, DECOMPRESS ; 2, axnds.rll, SIZE=50000, DECOMPRESS ; 2, axbndry.rll, SIZE=50000, DECOMPRESS ; 2, axscript.rll, SIZE=50000, DECOMPRESS ; 2, axdialup.rll, SIZE=50000, DECOMPRESS 2, axprf.rll, SIZE=50000, DECOMPRESS 2, connsvcr.dll, SIZE=50000, DECOMPRESS 2, loginsvr.dll, SIZE=50000, DECOMPRESS 2, mapbaser.dll, SIZE=50000, DECOMPRESS 2, dlu32r.dll, SIZE=50000, DECOMPRESS 2, lgncnr32.dll, SIZE=50000, DECOMPRESS 2, wsreg32r.dll, SIZE=50000, DECOMPRESS 2, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-English-SAM] 2, sammigrs.dll, SIZE=50000, DECOMPRESS 2, sammig.hlp, SIZE=50000, DECOMPRESS ; 2, appsnap.hlp, SIZE=50000, DECOMPRESS ; 2, appsnap.cnt, SIZE=50000, DECOMPRESS ; 2, install1.hlp, SIZE=50000, DECOMPRESS 2, iwsam.hlp, SIZE=50000, DECOMPRESS ; 2, iwsam.cnt, SIZE=50000, DECOMPRESS 2, nds.hlp, SIZE=50000, DECOMPRESS ; 2, nds4ntsg.hlp, SIZE=50000, DECOMPRESS 2, ndsmgr.hlp, SIZE=50000, DECOMPRESS 2, ndsmgr.cnt, SIZE=50000, DECOMPRESS ; 2, nwadmin.hlp, SIZE=50000, DECOMPRESS ; 2, nwadmin.cnt, SIZE=50000, DECOMPRESS 2, ndsfornt.hlp, SIZE=50000, DECOMPRESS 2, nwec.hlp, SIZE=50000, DECOMPRESS ; 2, nwmain.hlp, SIZE=50000, DECOMPRESS ; 2, nwref.hlp, SIZE=50000, DECOMPRESS 2, outline.hlp, SIZE=50000, DECOMPRESS 2, outline.cnt, SIZE=50000, DECOMPRESS 2, sammig.hlp, SIZE=50000, DECOMPRESS 2, schema.hlp, SIZE=50000, DECOMPRESS ; 2, dr_001a.exe, SIZE=50000, DECOMPRESS ; 2, dr_002a.exe, SIZE=50000, DECOMPRESS 2, nds4exch.hlp, SIZE=50000, DECOMPRESS 2, nds4exch.cnt, SIZE=50000, DECOMPRESS 2, nw_error.hlp, SIZE=50000, DECOMPRESS 2, nw_error.cnt, SIZE=50000, DECOMPRESS 2, nds_ben.hlp, SIZE=50000, DECOMPRESS 2, nds_ben.cnt, SIZE=50000, DECOMPRESS 2, nwadmn32.hlp, SIZE=50000, DECOMPRESS 2, nwadmn32.cnt, SIZE=50000, DECOMPRESS ; 2, nds4ntsg.cnt, SIZE=50000, DECOMPRESS 2, nwec.cnt, SIZE=50000, DECOMPRESS 2, ndsfornt.cnt, SIZE=50000, DECOMPRESS 2, schema.cnt, SIZE=50000, DECOMPRESS 2, nds.cnt, SIZE=50000, DECOMPRESS 2, spsntryr.dll, SIZE=50000, DECOMPRESS 2, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-English] 2, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Chineses] 3, Readme.txt, SIZE=50000, DECOMPRESS ; 4, nt4using.cnt, SIZE=50000, DECOMPRESS ; 4, nt4using.hlp, SIZE=50000, DECOMPRESS ; 4, loginw32.hlp, SIZE=50000, DECOMPRESS ; 4, axcred.hlp, SIZE=50000, DECOMPRESS ; 4, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 4, axnds.hlp, SIZE=50000, DECOMPRESS ; 4, axbndry.hlp, SIZE=50000, DECOMPRESS ; 4, axscript.hlp, SIZE=50000, DECOMPRESS ; 4, axdialup.hlp, SIZE=50000, DECOMPRESS ; 4, axprf.hlp, SIZE=50000, DECOMPRESS 4, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Chineses] 4, Account.htm, SIZE=50000, DECOMPRESS 4, admin.jpg, SIZE=50000, DECOMPRESS 4, Browseto.htm, SIZE=50000, DECOMPRESS 4, c95contx.gif, SIZE=50000, DECOMPRESS 4, c95down.gif, SIZE=50000, DECOMPRESS 4, c95foldr.gif, SIZE=50000, DECOMPRESS 4, c95mycom.gif, SIZE=50000, DECOMPRESS 4, c95n.gif, SIZE=50000, DECOMPRESS 4, c95neigh.gif, SIZE=50000, DECOMPRESS 4, c95servr.gif, SIZE=50000, DECOMPRESS 4, c95tree.gif, SIZE=50000, DECOMPRESS 4, c95up.gif, SIZE=50000, DECOMPRESS 4, c95uparr.gif, SIZE=50000, DECOMPRESS 4, c95x.gif, SIZE=50000, DECOMPRESS 4, C9xPass.htm, SIZE=50000, DECOMPRESS 4, Capture.htm, SIZE=50000, DECOMPRESS 4, CliProps.htm, SIZE=50000, DECOMPRESS 4, CNTPass.htm, SIZE=50000, DECOMPRESS 4, cont_nt.gif, SIZE=50000, DECOMPRESS 4, default.css, SIZE=50000, DECOMPRESS 4, DelMap.htm, SIZE=50000, DECOMPRESS 4, DisDrive.htm, SIZE=50000, DECOMPRESS 4, EdtScrpt.htm, SIZE=50000, DECOMPRESS 4, EndCap.htm, SIZE=50000, DECOMPRESS 4, GroupMem.htm, SIZE=50000, DECOMPRESS 4, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 4, Help.htm, SIZE=50000, DECOMPRESS 4, helpicon.jpg, SIZE=50000, DECOMPRESS 4, HtmlHelp.css, SIZE=50000, DECOMPRESS 4, LimitAcc.htm, SIZE=50000, DECOMPRESS 4, LogInOth.htm, SIZE=50000, DECOMPRESS 4, LogInPrf.htm, SIZE=50000, DECOMPRESS 4, LogOut.htm, SIZE=50000, DECOMPRESS 4, Mailing.htm, SIZE=50000, DECOMPRESS 4, MapDrive.htm, SIZE=50000, DECOMPRESS 4, MS_Help.css, SIZE=50000, DECOMPRESS 4, NetHood.htm, SIZE=50000, DECOMPRESS 4, N-icon.jpg, SIZE=50000, DECOMPRESS 4, nmenu.gif, SIZE=50000, DECOMPRESS 4, NWConnec.htm, SIZE=50000, DECOMPRESS 4, NWCopy.htm, SIZE=50000, DECOMPRESS 4, NWGuide.hhc, SIZE=50000, DECOMPRESS 4, NWLogin.htm, SIZE=50000, DECOMPRESS 4, nwutils.gif, SIZE=50000, DECOMPRESS 4, NWUtils.htm, SIZE=50000, DECOMPRESS 4, ObjProps.htm, SIZE=50000, DECOMPRESS 4, Personal.htm, SIZE=50000, DECOMPRESS 4, Purge.htm, SIZE=50000, DECOMPRESS 4, PWAdmin.htm, SIZE=50000, DECOMPRESS 4, QuickRef.htm, SIZE=50000, DECOMPRESS 4, Salvage.htm, SIZE=50000, DECOMPRESS 4, SendMess.htm, SIZE=50000, DECOMPRESS 4, SERVER.jpg, SIZE=50000, DECOMPRESS 4, SERVERGR.jpg, SIZE=50000, DECOMPRESS 4, SynchPW.htm, SIZE=50000, DECOMPRESS 4, TrayIcon.htm, SIZE=50000, DECOMPRESS 4, TREE.jpg, SIZE=50000, DECOMPRESS 4, UseNMenu.htm, SIZE=50000, DECOMPRESS 4, UserAdm.htm, SIZE=50000, DECOMPRESS 4, UserGuid.htm, SIZE=50000, DECOMPRESS 4, ViewConx.htm, SIZE=50000, DECOMPRESS 4, ViewMap.htm, SIZE=50000, DECOMPRESS 4, VwRights.htm, SIZE=50000, DECOMPRESS 4, w95help.css, SIZE=50000, DECOMPRESS 4, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 4, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 4, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 4, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 4, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 4, WHnonIE4.css, SIZE=50000, DECOMPRESS 4, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 4, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 4, win95.gif, SIZE=50000, DECOMPRESS 4, winnt.gif, SIZE=50000, DECOMPRESS 4, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Chineses] 4, Attrib.htm, SIZE=50000, DECOMPRESS 4, CHKMARK.gif, SIZE=50000, DECOMPRESS 4, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 4, FileCopy.htm, SIZE=50000, DECOMPRESS 4, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 4, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 4, hh_ndx.htm, SIZE=50000, DECOMPRESS 4, hh_toc.htm, SIZE=50000, DECOMPRESS 4, infoDir.htm, SIZE=50000, DECOMPRESS 4, InfoFile.htm, SIZE=50000, DECOMPRESS 4, Inherit.htm, SIZE=50000, DECOMPRESS 4, logfile.htm, SIZE=50000, DECOMPRESS 4, Rights.htm, SIZE=50000, DECOMPRESS 4, start.htm, SIZE=50000, DECOMPRESS 4, styles.css, SIZE=50000, DECOMPRESS 4, Tmarks.htm, SIZE=50000, DECOMPRESS 4, toc.hhc, SIZE=50000, DECOMPRESS 4, Using.htm, SIZE=50000, DECOMPRESS 4, VolInfo.htm, SIZE=50000, DECOMPRESS 4, VolStats.htm, SIZE=50000, DECOMPRESS 4, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 4, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 4, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 4, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 4, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 4, WHnonIE4.css, SIZE=50000, DECOMPRESS 4, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 4, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Chineses] 4, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Chineses] 4, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Chineses] 4, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 4, netwarer.dll, SIZE=50000, DECOMPRESS 4, novnpntr.dll, SIZE=50000, DECOMPRESS ; 4, nwcplr.dll, SIZE=50000, DECOMPRESS 4, nwevents.dll, SIZE=50000, DECOMPRESS 4, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 4, nwsetupr.dll, SIZE=50000, DECOMPRESS 4, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 4, nwrightr.dll, SIZE=50000, DECOMPRESS 4, nwshlxnr.dll, SIZE=50000, DECOMPRESS 4, loginw32.rll, SIZE=50000, DECOMPRESS ; 4, axcred.rll, SIZE=50000, DECOMPRESS ; 4, axcrednt.rll, SIZE=50000, DECOMPRESS ; 4, axnds.rll, SIZE=50000, DECOMPRESS ; 4, axbndry.rll, SIZE=50000, DECOMPRESS ; 4, axscript.rll, SIZE=50000, DECOMPRESS ; 4, axdialup.rll, SIZE=50000, DECOMPRESS 4, axprf.rll, SIZE=50000, DECOMPRESS 4, connsvcr.dll, SIZE=50000, DECOMPRESS 4, loginsvr.dll, SIZE=50000, DECOMPRESS 4, mapbaser.dll, SIZE=50000, DECOMPRESS 4, dlu32r.dll, SIZE=50000, DECOMPRESS 4, lgncnr32.dll, SIZE=50000, DECOMPRESS 4, wsreg32r.dll, SIZE=50000, DECOMPRESS 4, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Chineses-SAM] 4, sammigrs.dll, SIZE=50000, DECOMPRESS 4, sammig.hlp, SIZE=50000, DECOMPRESS 4, spsntryr.dll, SIZE=50000, DECOMPRESS 4, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Chineses] 4, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Chineset] 5, Readme.txt, SIZE=50000, DECOMPRESS ; 6, nt4using.cnt, SIZE=50000, DECOMPRESS ; 6, nt4using.hlp, SIZE=50000, DECOMPRESS ; 6, loginw32.hlp, SIZE=50000, DECOMPRESS ; 6, axcred.hlp, SIZE=50000, DECOMPRESS ; 6, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 6, axnds.hlp, SIZE=50000, DECOMPRESS ; 6, axbndry.hlp, SIZE=50000, DECOMPRESS ; 6, axscript.hlp, SIZE=50000, DECOMPRESS ; 6, axdialup.hlp, SIZE=50000, DECOMPRESS ; 6, axprf.hlp, SIZE=50000, DECOMPRESS 6, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Chineset] 6, Account.htm, SIZE=50000, DECOMPRESS 6, admin.jpg, SIZE=50000, DECOMPRESS 6, Browseto.htm, SIZE=50000, DECOMPRESS 6, c95contx.gif, SIZE=50000, DECOMPRESS 6, c95down.gif, SIZE=50000, DECOMPRESS 6, c95foldr.gif, SIZE=50000, DECOMPRESS 6, c95mycom.gif, SIZE=50000, DECOMPRESS 6, c95n.gif, SIZE=50000, DECOMPRESS 6, c95neigh.gif, SIZE=50000, DECOMPRESS 6, c95servr.gif, SIZE=50000, DECOMPRESS 6, c95tree.gif, SIZE=50000, DECOMPRESS 6, c95up.gif, SIZE=50000, DECOMPRESS 6, c95uparr.gif, SIZE=50000, DECOMPRESS 6, c95x.gif, SIZE=50000, DECOMPRESS 6, C9xPass.htm, SIZE=50000, DECOMPRESS 6, Capture.htm, SIZE=50000, DECOMPRESS 6, CliProps.htm, SIZE=50000, DECOMPRESS 6, CNTPass.htm, SIZE=50000, DECOMPRESS 6, cont_nt.gif, SIZE=50000, DECOMPRESS 6, default.css, SIZE=50000, DECOMPRESS 6, DelMap.htm, SIZE=50000, DECOMPRESS 6, DisDrive.htm, SIZE=50000, DECOMPRESS 6, EdtScrpt.htm, SIZE=50000, DECOMPRESS 6, EndCap.htm, SIZE=50000, DECOMPRESS 6, GroupMem.htm, SIZE=50000, DECOMPRESS 6, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 6, Help.htm, SIZE=50000, DECOMPRESS 6, helpicon.jpg, SIZE=50000, DECOMPRESS 6, HtmlHelp.css, SIZE=50000, DECOMPRESS 6, LimitAcc.htm, SIZE=50000, DECOMPRESS 6, LogInOth.htm, SIZE=50000, DECOMPRESS 6, LogInPrf.htm, SIZE=50000, DECOMPRESS 6, LogOut.htm, SIZE=50000, DECOMPRESS 6, Mailing.htm, SIZE=50000, DECOMPRESS 6, MapDrive.htm, SIZE=50000, DECOMPRESS 6, MS_Help.css, SIZE=50000, DECOMPRESS 6, NetHood.htm, SIZE=50000, DECOMPRESS 6, N-icon.jpg, SIZE=50000, DECOMPRESS 6, nmenu.gif, SIZE=50000, DECOMPRESS 6, NWConnec.htm, SIZE=50000, DECOMPRESS 6, NWCopy.htm, SIZE=50000, DECOMPRESS 6, NWGuide.hhc, SIZE=50000, DECOMPRESS 6, NWLogin.htm, SIZE=50000, DECOMPRESS 6, nwutils.gif, SIZE=50000, DECOMPRESS 6, NWUtils.htm, SIZE=50000, DECOMPRESS 6, ObjProps.htm, SIZE=50000, DECOMPRESS 6, Personal.htm, SIZE=50000, DECOMPRESS 6, Purge.htm, SIZE=50000, DECOMPRESS 6, PWAdmin.htm, SIZE=50000, DECOMPRESS 6, QuickRef.htm, SIZE=50000, DECOMPRESS 6, Salvage.htm, SIZE=50000, DECOMPRESS 6, SendMess.htm, SIZE=50000, DECOMPRESS 6, SERVER.jpg, SIZE=50000, DECOMPRESS 6, SERVERGR.jpg, SIZE=50000, DECOMPRESS 6, SynchPW.htm, SIZE=50000, DECOMPRESS 6, TrayIcon.htm, SIZE=50000, DECOMPRESS 6, TREE.jpg, SIZE=50000, DECOMPRESS 6, UseNMenu.htm, SIZE=50000, DECOMPRESS 6, UserAdm.htm, SIZE=50000, DECOMPRESS 6, UserGuid.htm, SIZE=50000, DECOMPRESS 6, ViewConx.htm, SIZE=50000, DECOMPRESS 6, ViewMap.htm, SIZE=50000, DECOMPRESS 6, VwRights.htm, SIZE=50000, DECOMPRESS 6, w95help.css, SIZE=50000, DECOMPRESS 6, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 6, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 6, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 6, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 6, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 6, WHnonIE4.css, SIZE=50000, DECOMPRESS 6, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 6, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 6, win95.gif, SIZE=50000, DECOMPRESS 6, winnt.gif, SIZE=50000, DECOMPRESS 6, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Chineset] 6, Attrib.htm, SIZE=50000, DECOMPRESS 6, CHKMARK.gif, SIZE=50000, DECOMPRESS 6, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 6, FileCopy.htm, SIZE=50000, DECOMPRESS 6, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 6, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 6, hh_ndx.htm, SIZE=50000, DECOMPRESS 6, hh_toc.htm, SIZE=50000, DECOMPRESS 6, infoDir.htm, SIZE=50000, DECOMPRESS 6, InfoFile.htm, SIZE=50000, DECOMPRESS 6, Inherit.htm, SIZE=50000, DECOMPRESS 6, logfile.htm, SIZE=50000, DECOMPRESS 6, Rights.htm, SIZE=50000, DECOMPRESS 6, start.htm, SIZE=50000, DECOMPRESS 6, styles.css, SIZE=50000, DECOMPRESS 6, Tmarks.htm, SIZE=50000, DECOMPRESS 6, toc.hhc, SIZE=50000, DECOMPRESS 6, Using.htm, SIZE=50000, DECOMPRESS 6, VolInfo.htm, SIZE=50000, DECOMPRESS 6, VolStats.htm, SIZE=50000, DECOMPRESS 6, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 6, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 6, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 6, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 6, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 6, WHnonIE4.css, SIZE=50000, DECOMPRESS 6, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 6, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Chineset] 6, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Chineset] 6, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Chineset] 6, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 6, netwarer.dll, SIZE=50000, DECOMPRESS 6, novnpntr.dll, SIZE=50000, DECOMPRESS ; 6, nwcplr.dll, SIZE=50000, DECOMPRESS 6, nwevents.dll, SIZE=50000, DECOMPRESS 6, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 6, nwsetupr.dll, SIZE=50000, DECOMPRESS 6, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 6, nwrightr.dll, SIZE=50000, DECOMPRESS 6, nwshlxnr.dll, SIZE=50000, DECOMPRESS 6, loginw32.rll, SIZE=50000, DECOMPRESS ; 6, axcred.rll, SIZE=50000, DECOMPRESS ; 6, axcrednt.rll, SIZE=50000, DECOMPRESS ; 6, axnds.rll, SIZE=50000, DECOMPRESS ; 6, axbndry.rll, SIZE=50000, DECOMPRESS ; 6, axscript.rll, SIZE=50000, DECOMPRESS ; 6, axdialup.rll, SIZE=50000, DECOMPRESS 6, axprf.rll, SIZE=50000, DECOMPRESS 6, connsvcr.dll, SIZE=50000, DECOMPRESS 6, loginsvr.dll, SIZE=50000, DECOMPRESS 6, mapbaser.dll, SIZE=50000, DECOMPRESS 6, dlu32r.dll, SIZE=50000, DECOMPRESS 6, lgncnr32.dll, SIZE=50000, DECOMPRESS 6, wsreg32r.dll, SIZE=50000, DECOMPRESS 6, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Chineset-SAM] 6, sammigrs.dll, SIZE=50000, DECOMPRESS 6, sammig.hlp, SIZE=50000, DECOMPRESS 6, spsntryr.dll, SIZE=50000, DECOMPRESS 6, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Chineset] 6, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Deutsch] 7, Readme.txt, SIZE=50000, DECOMPRESS ; 8, nt4using.cnt, SIZE=50000, DECOMPRESS ; 8, nt4using.hlp, SIZE=50000, DECOMPRESS ; 8, loginw32.hlp, SIZE=50000, DECOMPRESS ; 8, axcred.hlp, SIZE=50000, DECOMPRESS ; 8, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 8, axnds.hlp, SIZE=50000, DECOMPRESS ; 8, axbndry.hlp, SIZE=50000, DECOMPRESS ; 8, axscript.hlp, SIZE=50000, DECOMPRESS ; 8, axdialup.hlp, SIZE=50000, DECOMPRESS ; 8, axprf.hlp, SIZE=50000, DECOMPRESS 8, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Deutsch] 8, Account.htm, SIZE=50000, DECOMPRESS 8, admin.jpg, SIZE=50000, DECOMPRESS 8, Browseto.htm, SIZE=50000, DECOMPRESS 8, c95contx.gif, SIZE=50000, DECOMPRESS 8, c95down.gif, SIZE=50000, DECOMPRESS 8, c95foldr.gif, SIZE=50000, DECOMPRESS 8, c95mycom.gif, SIZE=50000, DECOMPRESS 8, c95n.gif, SIZE=50000, DECOMPRESS 8, c95neigh.gif, SIZE=50000, DECOMPRESS 8, c95servr.gif, SIZE=50000, DECOMPRESS 8, c95tree.gif, SIZE=50000, DECOMPRESS 8, c95up.gif, SIZE=50000, DECOMPRESS 8, c95uparr.gif, SIZE=50000, DECOMPRESS 8, c95x.gif, SIZE=50000, DECOMPRESS 8, C9xPass.htm, SIZE=50000, DECOMPRESS 8, Capture.htm, SIZE=50000, DECOMPRESS 8, CliProps.htm, SIZE=50000, DECOMPRESS 8, CNTPass.htm, SIZE=50000, DECOMPRESS 8, cont_nt.gif, SIZE=50000, DECOMPRESS 8, default.css, SIZE=50000, DECOMPRESS 8, DelMap.htm, SIZE=50000, DECOMPRESS 8, DisDrive.htm, SIZE=50000, DECOMPRESS 8, EdtScrpt.htm, SIZE=50000, DECOMPRESS 8, EndCap.htm, SIZE=50000, DECOMPRESS 8, GroupMem.htm, SIZE=50000, DECOMPRESS 8, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 8, Help.htm, SIZE=50000, DECOMPRESS 8, helpicon.jpg, SIZE=50000, DECOMPRESS 8, HtmlHelp.css, SIZE=50000, DECOMPRESS 8, LimitAcc.htm, SIZE=50000, DECOMPRESS 8, LogInOth.htm, SIZE=50000, DECOMPRESS 8, LogInPrf.htm, SIZE=50000, DECOMPRESS 8, LogOut.htm, SIZE=50000, DECOMPRESS 8, Mailing.htm, SIZE=50000, DECOMPRESS 8, MapDrive.htm, SIZE=50000, DECOMPRESS 8, MS_Help.css, SIZE=50000, DECOMPRESS 8, NetHood.htm, SIZE=50000, DECOMPRESS 8, N-icon.jpg, SIZE=50000, DECOMPRESS 8, nmenu.gif, SIZE=50000, DECOMPRESS 8, NWConnec.htm, SIZE=50000, DECOMPRESS 8, NWCopy.htm, SIZE=50000, DECOMPRESS 8, NWGuide.hhc, SIZE=50000, DECOMPRESS 8, NWLogin.htm, SIZE=50000, DECOMPRESS 8, nwutils.gif, SIZE=50000, DECOMPRESS 8, NWUtils.htm, SIZE=50000, DECOMPRESS 8, ObjProps.htm, SIZE=50000, DECOMPRESS 8, Personal.htm, SIZE=50000, DECOMPRESS 8, Purge.htm, SIZE=50000, DECOMPRESS 8, PWAdmin.htm, SIZE=50000, DECOMPRESS 8, QuickRef.htm, SIZE=50000, DECOMPRESS 8, Salvage.htm, SIZE=50000, DECOMPRESS 8, SendMess.htm, SIZE=50000, DECOMPRESS 8, SERVER.jpg, SIZE=50000, DECOMPRESS 8, SERVERGR.jpg, SIZE=50000, DECOMPRESS 8, SynchPW.htm, SIZE=50000, DECOMPRESS 8, TrayIcon.htm, SIZE=50000, DECOMPRESS 8, TREE.jpg, SIZE=50000, DECOMPRESS 8, UseNMenu.htm, SIZE=50000, DECOMPRESS 8, UserAdm.htm, SIZE=50000, DECOMPRESS 8, UserGuid.htm, SIZE=50000, DECOMPRESS 8, ViewConx.htm, SIZE=50000, DECOMPRESS 8, ViewMap.htm, SIZE=50000, DECOMPRESS 8, VwRights.htm, SIZE=50000, DECOMPRESS 8, w95help.css, SIZE=50000, DECOMPRESS 8, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 8, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 8, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 8, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 8, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 8, WHnonIE4.css, SIZE=50000, DECOMPRESS 8, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 8, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 8, win95.gif, SIZE=50000, DECOMPRESS 8, winnt.gif, SIZE=50000, DECOMPRESS 8, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Deutsch] 8, Attrib.htm, SIZE=50000, DECOMPRESS 8, CHKMARK.gif, SIZE=50000, DECOMPRESS 8, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 8, FileCopy.htm, SIZE=50000, DECOMPRESS 8, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 8, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 8, hh_ndx.htm, SIZE=50000, DECOMPRESS 8, hh_toc.htm, SIZE=50000, DECOMPRESS 8, infoDir.htm, SIZE=50000, DECOMPRESS 8, InfoFile.htm, SIZE=50000, DECOMPRESS 8, Inherit.htm, SIZE=50000, DECOMPRESS 8, logfile.htm, SIZE=50000, DECOMPRESS 8, Rights.htm, SIZE=50000, DECOMPRESS 8, start.htm, SIZE=50000, DECOMPRESS 8, styles.css, SIZE=50000, DECOMPRESS 8, Tmarks.htm, SIZE=50000, DECOMPRESS 8, toc.hhc, SIZE=50000, DECOMPRESS 8, Using.htm, SIZE=50000, DECOMPRESS 8, VolInfo.htm, SIZE=50000, DECOMPRESS 8, VolStats.htm, SIZE=50000, DECOMPRESS 8, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 8, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 8, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 8, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 8, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 8, WHnonIE4.css, SIZE=50000, DECOMPRESS 8, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 8, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Deutsch] 8, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Deutsch] 8, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Deutsch] 8, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 8, netwarer.dll, SIZE=50000, DECOMPRESS 8, novnpntr.dll, SIZE=50000, DECOMPRESS ; 8, nwcplr.dll, SIZE=50000, DECOMPRESS 8, nwevents.dll, SIZE=50000, DECOMPRESS 8, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 8, nwsetupr.dll, SIZE=50000, DECOMPRESS 8, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 8, nwrightr.dll, SIZE=50000, DECOMPRESS 8, nwshlxnr.dll, SIZE=50000, DECOMPRESS 8, loginw32.rll, SIZE=50000, DECOMPRESS ; 8, axcred.rll, SIZE=50000, DECOMPRESS ; 8, axcrednt.rll, SIZE=50000, DECOMPRESS ; 8, axnds.rll, SIZE=50000, DECOMPRESS ; 8, axbndry.rll, SIZE=50000, DECOMPRESS ; 8, axscript.rll, SIZE=50000, DECOMPRESS ; 8, axdialup.rll, SIZE=50000, DECOMPRESS 8, axprf.rll, SIZE=50000, DECOMPRESS 8, connsvcr.dll, SIZE=50000, DECOMPRESS 8, loginsvr.dll, SIZE=50000, DECOMPRESS 8, mapbaser.dll, SIZE=50000, DECOMPRESS 8, dlu32r.dll, SIZE=50000, DECOMPRESS 8, lgncnr32.dll, SIZE=50000, DECOMPRESS 8, wsreg32r.dll, SIZE=50000, DECOMPRESS 8, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Deutsch-SAM] 8, sammigrs.dll, SIZE=50000, DECOMPRESS 8, sammig.hlp, SIZE=50000, DECOMPRESS 8, spsntryr.dll, SIZE=50000, DECOMPRESS 8, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Deutsch] 8, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Espanol] 9, Readme.txt, SIZE=50000, DECOMPRESS ; 10, nt4using.cnt, SIZE=50000, DECOMPRESS ; 10, nt4using.hlp, SIZE=50000, DECOMPRESS ; 10, loginw32.hlp, SIZE=50000, DECOMPRESS ; 10, axcred.hlp, SIZE=50000, DECOMPRESS ; 10, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 10, axnds.hlp, SIZE=50000, DECOMPRESS ; 10, axbndry.hlp, SIZE=50000, DECOMPRESS ; 10, axscript.hlp, SIZE=50000, DECOMPRESS ; 10, axdialup.hlp, SIZE=50000, DECOMPRESS ; 10, axprf.hlp, SIZE=50000, DECOMPRESS 10, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Espanol] 10, Account.htm, SIZE=50000, DECOMPRESS 10, admin.jpg, SIZE=50000, DECOMPRESS 10, Browseto.htm, SIZE=50000, DECOMPRESS 10, c95contx.gif, SIZE=50000, DECOMPRESS 10, c95down.gif, SIZE=50000, DECOMPRESS 10, c95foldr.gif, SIZE=50000, DECOMPRESS 10, c95mycom.gif, SIZE=50000, DECOMPRESS 10, c95n.gif, SIZE=50000, DECOMPRESS 10, c95neigh.gif, SIZE=50000, DECOMPRESS 10, c95servr.gif, SIZE=50000, DECOMPRESS 10, c95tree.gif, SIZE=50000, DECOMPRESS 10, c95up.gif, SIZE=50000, DECOMPRESS 10, c95uparr.gif, SIZE=50000, DECOMPRESS 10, c95x.gif, SIZE=50000, DECOMPRESS 10, C9xPass.htm, SIZE=50000, DECOMPRESS 10, Capture.htm, SIZE=50000, DECOMPRESS 10, CliProps.htm, SIZE=50000, DECOMPRESS 10, CNTPass.htm, SIZE=50000, DECOMPRESS 10, cont_nt.gif, SIZE=50000, DECOMPRESS 10, default.css, SIZE=50000, DECOMPRESS 10, DelMap.htm, SIZE=50000, DECOMPRESS 10, DisDrive.htm, SIZE=50000, DECOMPRESS 10, EdtScrpt.htm, SIZE=50000, DECOMPRESS 10, EndCap.htm, SIZE=50000, DECOMPRESS 10, GroupMem.htm, SIZE=50000, DECOMPRESS 10, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 10, Help.htm, SIZE=50000, DECOMPRESS 10, helpicon.jpg, SIZE=50000, DECOMPRESS 10, HtmlHelp.css, SIZE=50000, DECOMPRESS 10, LimitAcc.htm, SIZE=50000, DECOMPRESS 10, LogInOth.htm, SIZE=50000, DECOMPRESS 10, LogInPrf.htm, SIZE=50000, DECOMPRESS 10, LogOut.htm, SIZE=50000, DECOMPRESS 10, Mailing.htm, SIZE=50000, DECOMPRESS 10, MapDrive.htm, SIZE=50000, DECOMPRESS 10, MS_Help.css, SIZE=50000, DECOMPRESS 10, NetHood.htm, SIZE=50000, DECOMPRESS 10, N-icon.jpg, SIZE=50000, DECOMPRESS 10, nmenu.gif, SIZE=50000, DECOMPRESS 10, NWConnec.htm, SIZE=50000, DECOMPRESS 10, NWCopy.htm, SIZE=50000, DECOMPRESS 10, NWGuide.hhc, SIZE=50000, DECOMPRESS 10, NWLogin.htm, SIZE=50000, DECOMPRESS 10, nwutils.gif, SIZE=50000, DECOMPRESS 10, NWUtils.htm, SIZE=50000, DECOMPRESS 10, ObjProps.htm, SIZE=50000, DECOMPRESS 10, Personal.htm, SIZE=50000, DECOMPRESS 10, Purge.htm, SIZE=50000, DECOMPRESS 10, PWAdmin.htm, SIZE=50000, DECOMPRESS 10, QuickRef.htm, SIZE=50000, DECOMPRESS 10, Salvage.htm, SIZE=50000, DECOMPRESS 10, SendMess.htm, SIZE=50000, DECOMPRESS 10, SERVER.jpg, SIZE=50000, DECOMPRESS 10, SERVERGR.jpg, SIZE=50000, DECOMPRESS 10, SynchPW.htm, SIZE=50000, DECOMPRESS 10, TrayIcon.htm, SIZE=50000, DECOMPRESS 10, TREE.jpg, SIZE=50000, DECOMPRESS 10, UseNMenu.htm, SIZE=50000, DECOMPRESS 10, UserAdm.htm, SIZE=50000, DECOMPRESS 10, UserGuid.htm, SIZE=50000, DECOMPRESS 10, ViewConx.htm, SIZE=50000, DECOMPRESS 10, ViewMap.htm, SIZE=50000, DECOMPRESS 10, VwRights.htm, SIZE=50000, DECOMPRESS 10, w95help.css, SIZE=50000, DECOMPRESS 10, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 10, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 10, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 10, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 10, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 10, WHnonIE4.css, SIZE=50000, DECOMPRESS 10, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 10, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 10, win95.gif, SIZE=50000, DECOMPRESS 10, winnt.gif, SIZE=50000, DECOMPRESS 10, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Espanol] 10, Attrib.htm, SIZE=50000, DECOMPRESS 10, CHKMARK.gif, SIZE=50000, DECOMPRESS 10, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 10, FileCopy.htm, SIZE=50000, DECOMPRESS 10, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 10, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 10, hh_ndx.htm, SIZE=50000, DECOMPRESS 10, hh_toc.htm, SIZE=50000, DECOMPRESS 10, infoDir.htm, SIZE=50000, DECOMPRESS 10, InfoFile.htm, SIZE=50000, DECOMPRESS 10, Inherit.htm, SIZE=50000, DECOMPRESS 10, logfile.htm, SIZE=50000, DECOMPRESS 10, Rights.htm, SIZE=50000, DECOMPRESS 10, start.htm, SIZE=50000, DECOMPRESS 10, styles.css, SIZE=50000, DECOMPRESS 10, Tmarks.htm, SIZE=50000, DECOMPRESS 10, toc.hhc, SIZE=50000, DECOMPRESS 10, Using.htm, SIZE=50000, DECOMPRESS 10, VolInfo.htm, SIZE=50000, DECOMPRESS 10, VolStats.htm, SIZE=50000, DECOMPRESS 10, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 10, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 10, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 10, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 10, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 10, WHnonIE4.css, SIZE=50000, DECOMPRESS 10, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 10, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Espanol] 10, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Espanol] 10, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Espanol] 10, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 10, netwarer.dll, SIZE=50000, DECOMPRESS 10, novnpntr.dll, SIZE=50000, DECOMPRESS ; 10, nwcplr.dll, SIZE=50000, DECOMPRESS 10, nwevents.dll, SIZE=50000, DECOMPRESS 10, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 10, nwsetupr.dll, SIZE=50000, DECOMPRESS 10, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 10, nwrightr.dll, SIZE=50000, DECOMPRESS 10, nwshlxnr.dll, SIZE=50000, DECOMPRESS 10, loginw32.rll, SIZE=50000, DECOMPRESS ; 10, axcred.rll, SIZE=50000, DECOMPRESS ; 10, axcrednt.rll, SIZE=50000, DECOMPRESS ; 10, axnds.rll, SIZE=50000, DECOMPRESS ; 10, axbndry.rll, SIZE=50000, DECOMPRESS ; 10, axscript.rll, SIZE=50000, DECOMPRESS ; 10, axdialup.rll, SIZE=50000, DECOMPRESS 10, axprf.rll, SIZE=50000, DECOMPRESS 10, connsvcr.dll, SIZE=50000, DECOMPRESS 10, loginsvr.dll, SIZE=50000, DECOMPRESS 10, mapbaser.dll, SIZE=50000, DECOMPRESS 10, dlu32r.dll, SIZE=50000, DECOMPRESS 10, lgncnr32.dll, SIZE=50000, DECOMPRESS 10, wsreg32r.dll, SIZE=50000, DECOMPRESS 10, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Espanol-SAM] 10, sammigrs.dll, SIZE=50000, DECOMPRESS 10, sammig.hlp, SIZE=50000, DECOMPRESS 10, spsntryr.dll, SIZE=50000, DECOMPRESS 10, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Espanol] 10, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Francais] 11, Readme.txt, SIZE=50000, DECOMPRESS ; 12, nt4using.cnt, SIZE=50000, DECOMPRESS ; 12, nt4using.hlp, SIZE=50000, DECOMPRESS ; 12, loginw32.hlp, SIZE=50000, DECOMPRESS ; 12, axcred.hlp, SIZE=50000, DECOMPRESS ; 12, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 12, axnds.hlp, SIZE=50000, DECOMPRESS ; 12, axbndry.hlp, SIZE=50000, DECOMPRESS ; 12, axscript.hlp, SIZE=50000, DECOMPRESS ; 12, axdialup.hlp, SIZE=50000, DECOMPRESS ; 12, axprf.hlp, SIZE=50000, DECOMPRESS 12, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Francais] 12, Account.htm, SIZE=50000, DECOMPRESS 12, admin.jpg, SIZE=50000, DECOMPRESS 12, Browseto.htm, SIZE=50000, DECOMPRESS 12, c95contx.gif, SIZE=50000, DECOMPRESS 12, c95down.gif, SIZE=50000, DECOMPRESS 12, c95foldr.gif, SIZE=50000, DECOMPRESS 12, c95mycom.gif, SIZE=50000, DECOMPRESS 12, c95n.gif, SIZE=50000, DECOMPRESS 12, c95neigh.gif, SIZE=50000, DECOMPRESS 12, c95servr.gif, SIZE=50000, DECOMPRESS 12, c95tree.gif, SIZE=50000, DECOMPRESS 12, c95up.gif, SIZE=50000, DECOMPRESS 12, c95uparr.gif, SIZE=50000, DECOMPRESS 12, c95x.gif, SIZE=50000, DECOMPRESS 12, C9xPass.htm, SIZE=50000, DECOMPRESS 12, Capture.htm, SIZE=50000, DECOMPRESS 12, CliProps.htm, SIZE=50000, DECOMPRESS 12, CNTPass.htm, SIZE=50000, DECOMPRESS 12, cont_nt.gif, SIZE=50000, DECOMPRESS 12, default.css, SIZE=50000, DECOMPRESS 12, DelMap.htm, SIZE=50000, DECOMPRESS 12, DisDrive.htm, SIZE=50000, DECOMPRESS 12, EdtScrpt.htm, SIZE=50000, DECOMPRESS 12, EndCap.htm, SIZE=50000, DECOMPRESS 12, GroupMem.htm, SIZE=50000, DECOMPRESS 12, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 12, Help.htm, SIZE=50000, DECOMPRESS 12, helpicon.jpg, SIZE=50000, DECOMPRESS 12, HtmlHelp.css, SIZE=50000, DECOMPRESS 12, LimitAcc.htm, SIZE=50000, DECOMPRESS 12, LogInOth.htm, SIZE=50000, DECOMPRESS 12, LogInPrf.htm, SIZE=50000, DECOMPRESS 12, LogOut.htm, SIZE=50000, DECOMPRESS 12, Mailing.htm, SIZE=50000, DECOMPRESS 12, MapDrive.htm, SIZE=50000, DECOMPRESS 12, MS_Help.css, SIZE=50000, DECOMPRESS 12, NetHood.htm, SIZE=50000, DECOMPRESS 12, N-icon.jpg, SIZE=50000, DECOMPRESS 12, nmenu.gif, SIZE=50000, DECOMPRESS 12, NWConnec.htm, SIZE=50000, DECOMPRESS 12, NWCopy.htm, SIZE=50000, DECOMPRESS 12, NWGuide.hhc, SIZE=50000, DECOMPRESS 12, NWLogin.htm, SIZE=50000, DECOMPRESS 12, nwutils.gif, SIZE=50000, DECOMPRESS 12, NWUtils.htm, SIZE=50000, DECOMPRESS 12, ObjProps.htm, SIZE=50000, DECOMPRESS 12, Personal.htm, SIZE=50000, DECOMPRESS 12, Purge.htm, SIZE=50000, DECOMPRESS 12, PWAdmin.htm, SIZE=50000, DECOMPRESS 12, QuickRef.htm, SIZE=50000, DECOMPRESS 12, Salvage.htm, SIZE=50000, DECOMPRESS 12, SendMess.htm, SIZE=50000, DECOMPRESS 12, SERVER.jpg, SIZE=50000, DECOMPRESS 12, SERVERGR.jpg, SIZE=50000, DECOMPRESS 12, SynchPW.htm, SIZE=50000, DECOMPRESS 12, TrayIcon.htm, SIZE=50000, DECOMPRESS 12, TREE.jpg, SIZE=50000, DECOMPRESS 12, UseNMenu.htm, SIZE=50000, DECOMPRESS 12, UserAdm.htm, SIZE=50000, DECOMPRESS 12, UserGuid.htm, SIZE=50000, DECOMPRESS 12, ViewConx.htm, SIZE=50000, DECOMPRESS 12, ViewMap.htm, SIZE=50000, DECOMPRESS 12, VwRights.htm, SIZE=50000, DECOMPRESS 12, w95help.css, SIZE=50000, DECOMPRESS 12, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 12, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 12, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 12, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 12, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 12, WHnonIE4.css, SIZE=50000, DECOMPRESS 12, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 12, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 12, win95.gif, SIZE=50000, DECOMPRESS 12, winnt.gif, SIZE=50000, DECOMPRESS 12, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Francais] 12, Attrib.htm, SIZE=50000, DECOMPRESS 12, CHKMARK.gif, SIZE=50000, DECOMPRESS 12, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 12, FileCopy.htm, SIZE=50000, DECOMPRESS 12, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 12, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 12, hh_ndx.htm, SIZE=50000, DECOMPRESS 12, hh_toc.htm, SIZE=50000, DECOMPRESS 12, infoDir.htm, SIZE=50000, DECOMPRESS 12, InfoFile.htm, SIZE=50000, DECOMPRESS 12, Inherit.htm, SIZE=50000, DECOMPRESS 12, logfile.htm, SIZE=50000, DECOMPRESS 12, Rights.htm, SIZE=50000, DECOMPRESS 12, start.htm, SIZE=50000, DECOMPRESS 12, styles.css, SIZE=50000, DECOMPRESS 12, Tmarks.htm, SIZE=50000, DECOMPRESS 12, toc.hhc, SIZE=50000, DECOMPRESS 12, Using.htm, SIZE=50000, DECOMPRESS 12, VolInfo.htm, SIZE=50000, DECOMPRESS 12, VolStats.htm, SIZE=50000, DECOMPRESS 12, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 12, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 12, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 12, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 12, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 12, WHnonIE4.css, SIZE=50000, DECOMPRESS 12, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 12, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Francais] 12, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Francais] 12, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Francais] 12, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 12, netwarer.dll, SIZE=50000, DECOMPRESS 12, novnpntr.dll, SIZE=50000, DECOMPRESS ; 12, nwcplr.dll, SIZE=50000, DECOMPRESS 12, nwevents.dll, SIZE=50000, DECOMPRESS 12, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 12, nwsetupr.dll, SIZE=50000, DECOMPRESS 12, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 12, nwrightr.dll, SIZE=50000, DECOMPRESS 12, nwshlxnr.dll, SIZE=50000, DECOMPRESS 12, loginw32.rll, SIZE=50000, DECOMPRESS ; 12, axcred.rll, SIZE=50000, DECOMPRESS ; 12, axcrednt.rll, SIZE=50000, DECOMPRESS ; 12, axnds.rll, SIZE=50000, DECOMPRESS ; 12, axbndry.rll, SIZE=50000, DECOMPRESS ; 12, axscript.rll, SIZE=50000, DECOMPRESS ; 12, axdialup.rll, SIZE=50000, DECOMPRESS 12, axprf.rll, SIZE=50000, DECOMPRESS 12, connsvcr.dll, SIZE=50000, DECOMPRESS 12, loginsvr.dll, SIZE=50000, DECOMPRESS 12, mapbaser.dll, SIZE=50000, DECOMPRESS 12, dlu32r.dll, SIZE=50000, DECOMPRESS 12, lgncnr32.dll, SIZE=50000, DECOMPRESS 12, wsreg32r.dll, SIZE=50000, DECOMPRESS 12, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Francais-SAM] 12, sammigrs.dll, SIZE=50000, DECOMPRESS 12, sammig.hlp, SIZE=50000, DECOMPRESS 12, spsntryr.dll, SIZE=50000, DECOMPRESS 12, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Francais] 12, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Italiano] 13, Readme.txt, SIZE=50000, DECOMPRESS ; 14, nt4using.cnt, SIZE=50000, DECOMPRESS ; 14, nt4using.hlp, SIZE=50000, DECOMPRESS ; 14, loginw32.hlp, SIZE=50000, DECOMPRESS ; 14, axcred.hlp, SIZE=50000, DECOMPRESS ; 14, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 14, axnds.hlp, SIZE=50000, DECOMPRESS ; 14, axbndry.hlp, SIZE=50000, DECOMPRESS ; 14, axscript.hlp, SIZE=50000, DECOMPRESS ; 14, axdialup.hlp, SIZE=50000, DECOMPRESS ; 14, axprf.hlp, SIZE=50000, DECOMPRESS 14, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Italiano] 14, Account.htm, SIZE=50000, DECOMPRESS 14, admin.jpg, SIZE=50000, DECOMPRESS 14, Browseto.htm, SIZE=50000, DECOMPRESS 14, c95contx.gif, SIZE=50000, DECOMPRESS 14, c95down.gif, SIZE=50000, DECOMPRESS 14, c95foldr.gif, SIZE=50000, DECOMPRESS 14, c95mycom.gif, SIZE=50000, DECOMPRESS 14, c95n.gif, SIZE=50000, DECOMPRESS 14, c95neigh.gif, SIZE=50000, DECOMPRESS 14, c95servr.gif, SIZE=50000, DECOMPRESS 14, c95tree.gif, SIZE=50000, DECOMPRESS 14, c95up.gif, SIZE=50000, DECOMPRESS 14, c95uparr.gif, SIZE=50000, DECOMPRESS 14, c95x.gif, SIZE=50000, DECOMPRESS 14, C9xPass.htm, SIZE=50000, DECOMPRESS 14, Capture.htm, SIZE=50000, DECOMPRESS 14, CliProps.htm, SIZE=50000, DECOMPRESS 14, CNTPass.htm, SIZE=50000, DECOMPRESS 14, cont_nt.gif, SIZE=50000, DECOMPRESS 14, default.css, SIZE=50000, DECOMPRESS 14, DelMap.htm, SIZE=50000, DECOMPRESS 14, DisDrive.htm, SIZE=50000, DECOMPRESS 14, EdtScrpt.htm, SIZE=50000, DECOMPRESS 14, EndCap.htm, SIZE=50000, DECOMPRESS 14, GroupMem.htm, SIZE=50000, DECOMPRESS 14, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 14, Help.htm, SIZE=50000, DECOMPRESS 14, helpicon.jpg, SIZE=50000, DECOMPRESS 14, HtmlHelp.css, SIZE=50000, DECOMPRESS 14, LimitAcc.htm, SIZE=50000, DECOMPRESS 14, LogInOth.htm, SIZE=50000, DECOMPRESS 14, LogInPrf.htm, SIZE=50000, DECOMPRESS 14, LogOut.htm, SIZE=50000, DECOMPRESS 14, Mailing.htm, SIZE=50000, DECOMPRESS 14, MapDrive.htm, SIZE=50000, DECOMPRESS 14, MS_Help.css, SIZE=50000, DECOMPRESS 14, NetHood.htm, SIZE=50000, DECOMPRESS 14, N-icon.jpg, SIZE=50000, DECOMPRESS 14, nmenu.gif, SIZE=50000, DECOMPRESS 14, NWConnec.htm, SIZE=50000, DECOMPRESS 14, NWCopy.htm, SIZE=50000, DECOMPRESS 14, NWGuide.hhc, SIZE=50000, DECOMPRESS 14, NWLogin.htm, SIZE=50000, DECOMPRESS 14, nwutils.gif, SIZE=50000, DECOMPRESS 14, NWUtils.htm, SIZE=50000, DECOMPRESS 14, ObjProps.htm, SIZE=50000, DECOMPRESS 14, Personal.htm, SIZE=50000, DECOMPRESS 14, Purge.htm, SIZE=50000, DECOMPRESS 14, PWAdmin.htm, SIZE=50000, DECOMPRESS 14, QuickRef.htm, SIZE=50000, DECOMPRESS 14, Salvage.htm, SIZE=50000, DECOMPRESS 14, SendMess.htm, SIZE=50000, DECOMPRESS 14, SERVER.jpg, SIZE=50000, DECOMPRESS 14, SERVERGR.jpg, SIZE=50000, DECOMPRESS 14, SynchPW.htm, SIZE=50000, DECOMPRESS 14, TrayIcon.htm, SIZE=50000, DECOMPRESS 14, TREE.jpg, SIZE=50000, DECOMPRESS 14, UseNMenu.htm, SIZE=50000, DECOMPRESS 14, UserAdm.htm, SIZE=50000, DECOMPRESS 14, UserGuid.htm, SIZE=50000, DECOMPRESS 14, ViewConx.htm, SIZE=50000, DECOMPRESS 14, ViewMap.htm, SIZE=50000, DECOMPRESS 14, VwRights.htm, SIZE=50000, DECOMPRESS 14, w95help.css, SIZE=50000, DECOMPRESS 14, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 14, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 14, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 14, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 14, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 14, WHnonIE4.css, SIZE=50000, DECOMPRESS 14, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 14, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 14, win95.gif, SIZE=50000, DECOMPRESS 14, winnt.gif, SIZE=50000, DECOMPRESS 14, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Italiano] 14, Attrib.htm, SIZE=50000, DECOMPRESS 14, CHKMARK.gif, SIZE=50000, DECOMPRESS 14, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 14, FileCopy.htm, SIZE=50000, DECOMPRESS 14, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 14, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 14, hh_ndx.htm, SIZE=50000, DECOMPRESS 14, hh_toc.htm, SIZE=50000, DECOMPRESS 14, infoDir.htm, SIZE=50000, DECOMPRESS 14, InfoFile.htm, SIZE=50000, DECOMPRESS 14, Inherit.htm, SIZE=50000, DECOMPRESS 14, logfile.htm, SIZE=50000, DECOMPRESS 14, Rights.htm, SIZE=50000, DECOMPRESS 14, start.htm, SIZE=50000, DECOMPRESS 14, styles.css, SIZE=50000, DECOMPRESS 14, Tmarks.htm, SIZE=50000, DECOMPRESS 14, toc.hhc, SIZE=50000, DECOMPRESS 14, Using.htm, SIZE=50000, DECOMPRESS 14, VolInfo.htm, SIZE=50000, DECOMPRESS 14, VolStats.htm, SIZE=50000, DECOMPRESS 14, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 14, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 14, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 14, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 14, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 14, WHnonIE4.css, SIZE=50000, DECOMPRESS 14, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 14, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Italiano] 14, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Italiano] 14, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Italiano] 14, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 14, netwarer.dll, SIZE=50000, DECOMPRESS 14, novnpntr.dll, SIZE=50000, DECOMPRESS ; 14, nwcplr.dll, SIZE=50000, DECOMPRESS 14, nwevents.dll, SIZE=50000, DECOMPRESS 14, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 14, nwsetupr.dll, SIZE=50000, DECOMPRESS 14, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 14, nwrightr.dll, SIZE=50000, DECOMPRESS 14, nwshlxnr.dll, SIZE=50000, DECOMPRESS 14, loginw32.rll, SIZE=50000, DECOMPRESS ; 14, axcred.rll, SIZE=50000, DECOMPRESS ; 14, axcrednt.rll, SIZE=50000, DECOMPRESS ; 14, axnds.rll, SIZE=50000, DECOMPRESS ; 14, axbndry.rll, SIZE=50000, DECOMPRESS ; 14, axscript.rll, SIZE=50000, DECOMPRESS ; 14, axdialup.rll, SIZE=50000, DECOMPRESS 14, axprf.rll, SIZE=50000, DECOMPRESS 14, connsvcr.dll, SIZE=50000, DECOMPRESS 14, loginsvr.dll, SIZE=50000, DECOMPRESS 14, mapbaser.dll, SIZE=50000, DECOMPRESS 14, dlu32r.dll, SIZE=50000, DECOMPRESS 14, lgncnr32.dll, SIZE=50000, DECOMPRESS 14, wsreg32r.dll, SIZE=50000, DECOMPRESS 14, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Italiano-SAM] 14, sammigrs.dll, SIZE=50000, DECOMPRESS 14, sammig.hlp, SIZE=50000, DECOMPRESS 14, spsntryr.dll, SIZE=50000, DECOMPRESS 14, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Italiano] 14, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Korean] 15, Readme.txt, SIZE=50000, DECOMPRESS ; 16, nt4using.cnt, SIZE=50000, DECOMPRESS ; 16, nt4using.hlp, SIZE=50000, DECOMPRESS ; 16, loginw32.hlp, SIZE=50000, DECOMPRESS ; 16, axcred.hlp, SIZE=50000, DECOMPRESS ; 16, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 16, axnds.hlp, SIZE=50000, DECOMPRESS ; 16, axbndry.hlp, SIZE=50000, DECOMPRESS ; 16, axscript.hlp, SIZE=50000, DECOMPRESS ; 16, axdialup.hlp, SIZE=50000, DECOMPRESS ; 16, axprf.hlp, SIZE=50000, DECOMPRESS 16, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Korean] 16, Account.htm, SIZE=50000, DECOMPRESS 16, admin.jpg, SIZE=50000, DECOMPRESS 16, Browseto.htm, SIZE=50000, DECOMPRESS 16, c95contx.gif, SIZE=50000, DECOMPRESS 16, c95down.gif, SIZE=50000, DECOMPRESS 16, c95foldr.gif, SIZE=50000, DECOMPRESS 16, c95mycom.gif, SIZE=50000, DECOMPRESS 16, c95n.gif, SIZE=50000, DECOMPRESS 16, c95neigh.gif, SIZE=50000, DECOMPRESS 16, c95servr.gif, SIZE=50000, DECOMPRESS 16, c95tree.gif, SIZE=50000, DECOMPRESS 16, c95up.gif, SIZE=50000, DECOMPRESS 16, c95uparr.gif, SIZE=50000, DECOMPRESS 16, c95x.gif, SIZE=50000, DECOMPRESS 16, C9xPass.htm, SIZE=50000, DECOMPRESS 16, Capture.htm, SIZE=50000, DECOMPRESS 16, CliProps.htm, SIZE=50000, DECOMPRESS 16, CNTPass.htm, SIZE=50000, DECOMPRESS 16, cont_nt.gif, SIZE=50000, DECOMPRESS 16, default.css, SIZE=50000, DECOMPRESS 16, DelMap.htm, SIZE=50000, DECOMPRESS 16, DisDrive.htm, SIZE=50000, DECOMPRESS 16, EdtScrpt.htm, SIZE=50000, DECOMPRESS 16, EndCap.htm, SIZE=50000, DECOMPRESS 16, GroupMem.htm, SIZE=50000, DECOMPRESS 16, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 16, Help.htm, SIZE=50000, DECOMPRESS 16, helpicon.jpg, SIZE=50000, DECOMPRESS 16, HtmlHelp.css, SIZE=50000, DECOMPRESS 16, LimitAcc.htm, SIZE=50000, DECOMPRESS 16, LogInOth.htm, SIZE=50000, DECOMPRESS 16, LogInPrf.htm, SIZE=50000, DECOMPRESS 16, LogOut.htm, SIZE=50000, DECOMPRESS 16, Mailing.htm, SIZE=50000, DECOMPRESS 16, MapDrive.htm, SIZE=50000, DECOMPRESS 16, MS_Help.css, SIZE=50000, DECOMPRESS 16, NetHood.htm, SIZE=50000, DECOMPRESS 16, N-icon.jpg, SIZE=50000, DECOMPRESS 16, nmenu.gif, SIZE=50000, DECOMPRESS 16, NWConnec.htm, SIZE=50000, DECOMPRESS 16, NWCopy.htm, SIZE=50000, DECOMPRESS 16, NWGuide.hhc, SIZE=50000, DECOMPRESS 16, NWLogin.htm, SIZE=50000, DECOMPRESS 16, nwutils.gif, SIZE=50000, DECOMPRESS 16, NWUtils.htm, SIZE=50000, DECOMPRESS 16, ObjProps.htm, SIZE=50000, DECOMPRESS 16, Personal.htm, SIZE=50000, DECOMPRESS 16, Purge.htm, SIZE=50000, DECOMPRESS 16, PWAdmin.htm, SIZE=50000, DECOMPRESS 16, QuickRef.htm, SIZE=50000, DECOMPRESS 16, Salvage.htm, SIZE=50000, DECOMPRESS 16, SendMess.htm, SIZE=50000, DECOMPRESS 16, SERVER.jpg, SIZE=50000, DECOMPRESS 16, SERVERGR.jpg, SIZE=50000, DECOMPRESS 16, SynchPW.htm, SIZE=50000, DECOMPRESS 16, TrayIcon.htm, SIZE=50000, DECOMPRESS 16, TREE.jpg, SIZE=50000, DECOMPRESS 16, UseNMenu.htm, SIZE=50000, DECOMPRESS 16, UserAdm.htm, SIZE=50000, DECOMPRESS 16, UserGuid.htm, SIZE=50000, DECOMPRESS 16, ViewConx.htm, SIZE=50000, DECOMPRESS 16, ViewMap.htm, SIZE=50000, DECOMPRESS 16, VwRights.htm, SIZE=50000, DECOMPRESS 16, w95help.css, SIZE=50000, DECOMPRESS 16, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 16, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 16, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 16, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 16, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 16, WHnonIE4.css, SIZE=50000, DECOMPRESS 16, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 16, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 16, win95.gif, SIZE=50000, DECOMPRESS 16, winnt.gif, SIZE=50000, DECOMPRESS 16, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Korean] 16, Attrib.htm, SIZE=50000, DECOMPRESS 16, CHKMARK.gif, SIZE=50000, DECOMPRESS 16, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 16, FileCopy.htm, SIZE=50000, DECOMPRESS 16, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 16, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 16, hh_ndx.htm, SIZE=50000, DECOMPRESS 16, hh_toc.htm, SIZE=50000, DECOMPRESS 16, infoDir.htm, SIZE=50000, DECOMPRESS 16, InfoFile.htm, SIZE=50000, DECOMPRESS 16, Inherit.htm, SIZE=50000, DECOMPRESS 16, logfile.htm, SIZE=50000, DECOMPRESS 16, Rights.htm, SIZE=50000, DECOMPRESS 16, start.htm, SIZE=50000, DECOMPRESS 16, styles.css, SIZE=50000, DECOMPRESS 16, Tmarks.htm, SIZE=50000, DECOMPRESS 16, toc.hhc, SIZE=50000, DECOMPRESS 16, Using.htm, SIZE=50000, DECOMPRESS 16, VolInfo.htm, SIZE=50000, DECOMPRESS 16, VolStats.htm, SIZE=50000, DECOMPRESS 16, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 16, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 16, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 16, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 16, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 16, WHnonIE4.css, SIZE=50000, DECOMPRESS 16, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 16, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Korean] 16, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Korean] 16, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Korean] 16, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 16, netwarer.dll, SIZE=50000, DECOMPRESS 16, novnpntr.dll, SIZE=50000, DECOMPRESS ; 16, nwcplr.dll, SIZE=50000, DECOMPRESS 16, nwevents.dll, SIZE=50000, DECOMPRESS 16, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 16, nwsetupr.dll, SIZE=50000, DECOMPRESS 16, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 16, nwrightr.dll, SIZE=50000, DECOMPRESS 16, nwshlxnr.dll, SIZE=50000, DECOMPRESS 16, loginw32.rll, SIZE=50000, DECOMPRESS ; 16, axcred.rll, SIZE=50000, DECOMPRESS ; 16, axcrednt.rll, SIZE=50000, DECOMPRESS ; 16, axnds.rll, SIZE=50000, DECOMPRESS ; 16, axbndry.rll, SIZE=50000, DECOMPRESS ; 16, axscript.rll, SIZE=50000, DECOMPRESS ; 16, axdialup.rll, SIZE=50000, DECOMPRESS 16, axprf.rll, SIZE=50000, DECOMPRESS 16, connsvcr.dll, SIZE=50000, DECOMPRESS 16, loginsvr.dll, SIZE=50000, DECOMPRESS 16, mapbaser.dll, SIZE=50000, DECOMPRESS 16, dlu32r.dll, SIZE=50000, DECOMPRESS 16, lgncnr32.dll, SIZE=50000, DECOMPRESS 16, wsreg32r.dll, SIZE=50000, DECOMPRESS 16, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Korean-SAM] 16, sammigrs.dll, SIZE=50000, DECOMPRESS 16, sammig.hlp, SIZE=50000, DECOMPRESS 16, spsntryr.dll, SIZE=50000, DECOMPRESS 16, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Korean] 16, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nihongo] 17, Readme.txt, SIZE=50000, DECOMPRESS ; 18, nt4using.cnt, SIZE=50000, DECOMPRESS ; 18, nt4using.hlp, SIZE=50000, DECOMPRESS ; 18, loginw32.hlp, SIZE=50000, DECOMPRESS ; 18, axcred.hlp, SIZE=50000, DECOMPRESS ; 18, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 18, axnds.hlp, SIZE=50000, DECOMPRESS ; 18, axbndry.hlp, SIZE=50000, DECOMPRESS ; 18, axscript.hlp, SIZE=50000, DECOMPRESS ; 18, axdialup.hlp, SIZE=50000, DECOMPRESS ; 18, axprf.hlp, SIZE=50000, DECOMPRESS 18, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Nihongo] 18, Account.htm, SIZE=50000, DECOMPRESS 18, admin.jpg, SIZE=50000, DECOMPRESS 18, Browseto.htm, SIZE=50000, DECOMPRESS 18, c95contx.gif, SIZE=50000, DECOMPRESS 18, c95down.gif, SIZE=50000, DECOMPRESS 18, c95foldr.gif, SIZE=50000, DECOMPRESS 18, c95mycom.gif, SIZE=50000, DECOMPRESS 18, c95n.gif, SIZE=50000, DECOMPRESS 18, c95neigh.gif, SIZE=50000, DECOMPRESS 18, c95servr.gif, SIZE=50000, DECOMPRESS 18, c95tree.gif, SIZE=50000, DECOMPRESS 18, c95up.gif, SIZE=50000, DECOMPRESS 18, c95uparr.gif, SIZE=50000, DECOMPRESS 18, c95x.gif, SIZE=50000, DECOMPRESS 18, C9xPass.htm, SIZE=50000, DECOMPRESS 18, Capture.htm, SIZE=50000, DECOMPRESS 18, CliProps.htm, SIZE=50000, DECOMPRESS 18, CNTPass.htm, SIZE=50000, DECOMPRESS 18, cont_nt.gif, SIZE=50000, DECOMPRESS 18, default.css, SIZE=50000, DECOMPRESS 18, DelMap.htm, SIZE=50000, DECOMPRESS 18, DisDrive.htm, SIZE=50000, DECOMPRESS 18, EdtScrpt.htm, SIZE=50000, DECOMPRESS 18, EndCap.htm, SIZE=50000, DECOMPRESS 18, GroupMem.htm, SIZE=50000, DECOMPRESS 18, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 18, Help.htm, SIZE=50000, DECOMPRESS 18, helpicon.jpg, SIZE=50000, DECOMPRESS 18, HtmlHelp.css, SIZE=50000, DECOMPRESS 18, LimitAcc.htm, SIZE=50000, DECOMPRESS 18, LogInOth.htm, SIZE=50000, DECOMPRESS 18, LogInPrf.htm, SIZE=50000, DECOMPRESS 18, LogOut.htm, SIZE=50000, DECOMPRESS 18, Mailing.htm, SIZE=50000, DECOMPRESS 18, MapDrive.htm, SIZE=50000, DECOMPRESS 18, MS_Help.css, SIZE=50000, DECOMPRESS 18, NetHood.htm, SIZE=50000, DECOMPRESS 18, N-icon.jpg, SIZE=50000, DECOMPRESS 18, nmenu.gif, SIZE=50000, DECOMPRESS 18, NWConnec.htm, SIZE=50000, DECOMPRESS 18, NWCopy.htm, SIZE=50000, DECOMPRESS 18, NWGuide.hhc, SIZE=50000, DECOMPRESS 18, NWLogin.htm, SIZE=50000, DECOMPRESS 18, nwutils.gif, SIZE=50000, DECOMPRESS 18, NWUtils.htm, SIZE=50000, DECOMPRESS 18, ObjProps.htm, SIZE=50000, DECOMPRESS 18, Personal.htm, SIZE=50000, DECOMPRESS 18, Purge.htm, SIZE=50000, DECOMPRESS 18, PWAdmin.htm, SIZE=50000, DECOMPRESS 18, QuickRef.htm, SIZE=50000, DECOMPRESS 18, Salvage.htm, SIZE=50000, DECOMPRESS 18, SendMess.htm, SIZE=50000, DECOMPRESS 18, SERVER.jpg, SIZE=50000, DECOMPRESS 18, SERVERGR.jpg, SIZE=50000, DECOMPRESS 18, SynchPW.htm, SIZE=50000, DECOMPRESS 18, TrayIcon.htm, SIZE=50000, DECOMPRESS 18, TREE.jpg, SIZE=50000, DECOMPRESS 18, UseNMenu.htm, SIZE=50000, DECOMPRESS 18, UserAdm.htm, SIZE=50000, DECOMPRESS 18, UserGuid.htm, SIZE=50000, DECOMPRESS 18, ViewConx.htm, SIZE=50000, DECOMPRESS 18, ViewMap.htm, SIZE=50000, DECOMPRESS 18, VwRights.htm, SIZE=50000, DECOMPRESS 18, w95help.css, SIZE=50000, DECOMPRESS 18, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 18, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 18, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 18, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 18, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 18, WHnonIE4.css, SIZE=50000, DECOMPRESS 18, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 18, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 18, win95.gif, SIZE=50000, DECOMPRESS 18, winnt.gif, SIZE=50000, DECOMPRESS 18, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Nihongo] 18, Attrib.htm, SIZE=50000, DECOMPRESS 18, CHKMARK.gif, SIZE=50000, DECOMPRESS 18, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 18, FileCopy.htm, SIZE=50000, DECOMPRESS 18, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 18, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 18, hh_ndx.htm, SIZE=50000, DECOMPRESS 18, hh_toc.htm, SIZE=50000, DECOMPRESS 18, infoDir.htm, SIZE=50000, DECOMPRESS 18, InfoFile.htm, SIZE=50000, DECOMPRESS 18, Inherit.htm, SIZE=50000, DECOMPRESS 18, logfile.htm, SIZE=50000, DECOMPRESS 18, Rights.htm, SIZE=50000, DECOMPRESS 18, start.htm, SIZE=50000, DECOMPRESS 18, styles.css, SIZE=50000, DECOMPRESS 18, Tmarks.htm, SIZE=50000, DECOMPRESS 18, toc.hhc, SIZE=50000, DECOMPRESS 18, Using.htm, SIZE=50000, DECOMPRESS 18, VolInfo.htm, SIZE=50000, DECOMPRESS 18, VolStats.htm, SIZE=50000, DECOMPRESS 18, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 18, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 18, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 18, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 18, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 18, WHnonIE4.css, SIZE=50000, DECOMPRESS 18, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 18, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Nihongo] 18, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Nihongo] 18, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Nihongo] 18, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 18, netwarer.dll, SIZE=50000, DECOMPRESS 18, novnpntr.dll, SIZE=50000, DECOMPRESS ; 18, nwcplr.dll, SIZE=50000, DECOMPRESS 18, nwevents.dll, SIZE=50000, DECOMPRESS 18, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 18, nwsetupr.dll, SIZE=50000, DECOMPRESS 18, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 18, nwrightr.dll, SIZE=50000, DECOMPRESS 18, nwshlxnr.dll, SIZE=50000, DECOMPRESS 18, loginw32.rll, SIZE=50000, DECOMPRESS ; 18, axcred.rll, SIZE=50000, DECOMPRESS ; 18, axcrednt.rll, SIZE=50000, DECOMPRESS ; 18, axnds.rll, SIZE=50000, DECOMPRESS ; 18, axbndry.rll, SIZE=50000, DECOMPRESS ; 18, axscript.rll, SIZE=50000, DECOMPRESS ; 18, axdialup.rll, SIZE=50000, DECOMPRESS 18, axprf.rll, SIZE=50000, DECOMPRESS 18, connsvcr.dll, SIZE=50000, DECOMPRESS 18, loginsvr.dll, SIZE=50000, DECOMPRESS 18, mapbaser.dll, SIZE=50000, DECOMPRESS 18, dlu32r.dll, SIZE=50000, DECOMPRESS 18, lgncnr32.dll, SIZE=50000, DECOMPRESS 18, wsreg32r.dll, SIZE=50000, DECOMPRESS 18, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Nihongo-SAM] 18, sammigrs.dll, SIZE=50000, DECOMPRESS 18, sammig.hlp, SIZE=50000, DECOMPRESS 18, spsntryr.dll, SIZE=50000, DECOMPRESS 18, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Nihongo] 18, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Portugue] 19, Readme.txt, SIZE=50000, DECOMPRESS ; 20, nt4using.cnt, SIZE=50000, DECOMPRESS ; 20, nt4using.hlp, SIZE=50000, DECOMPRESS ; 20, loginw32.hlp, SIZE=50000, DECOMPRESS ; 20, axcred.hlp, SIZE=50000, DECOMPRESS ; 20, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 20, axnds.hlp, SIZE=50000, DECOMPRESS ; 20, axbndry.hlp, SIZE=50000, DECOMPRESS ; 20, axscript.hlp, SIZE=50000, DECOMPRESS ; 20, axdialup.hlp, SIZE=50000, DECOMPRESS ; 20, axprf.hlp, SIZE=50000, DECOMPRESS 20, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Portugue] 20, Account.htm, SIZE=50000, DECOMPRESS 20, admin.jpg, SIZE=50000, DECOMPRESS 20, Browseto.htm, SIZE=50000, DECOMPRESS 20, c95contx.gif, SIZE=50000, DECOMPRESS 20, c95down.gif, SIZE=50000, DECOMPRESS 20, c95foldr.gif, SIZE=50000, DECOMPRESS 20, c95mycom.gif, SIZE=50000, DECOMPRESS 20, c95n.gif, SIZE=50000, DECOMPRESS 20, c95neigh.gif, SIZE=50000, DECOMPRESS 20, c95servr.gif, SIZE=50000, DECOMPRESS 20, c95tree.gif, SIZE=50000, DECOMPRESS 20, c95up.gif, SIZE=50000, DECOMPRESS 20, c95uparr.gif, SIZE=50000, DECOMPRESS 20, c95x.gif, SIZE=50000, DECOMPRESS 20, C9xPass.htm, SIZE=50000, DECOMPRESS 20, Capture.htm, SIZE=50000, DECOMPRESS 20, CliProps.htm, SIZE=50000, DECOMPRESS 20, CNTPass.htm, SIZE=50000, DECOMPRESS 20, cont_nt.gif, SIZE=50000, DECOMPRESS 20, default.css, SIZE=50000, DECOMPRESS 20, DelMap.htm, SIZE=50000, DECOMPRESS 20, DisDrive.htm, SIZE=50000, DECOMPRESS 20, EdtScrpt.htm, SIZE=50000, DECOMPRESS 20, EndCap.htm, SIZE=50000, DECOMPRESS 20, GroupMem.htm, SIZE=50000, DECOMPRESS 20, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 20, Help.htm, SIZE=50000, DECOMPRESS 20, helpicon.jpg, SIZE=50000, DECOMPRESS 20, HtmlHelp.css, SIZE=50000, DECOMPRESS 20, LimitAcc.htm, SIZE=50000, DECOMPRESS 20, LogInOth.htm, SIZE=50000, DECOMPRESS 20, LogInPrf.htm, SIZE=50000, DECOMPRESS 20, LogOut.htm, SIZE=50000, DECOMPRESS 20, Mailing.htm, SIZE=50000, DECOMPRESS 20, MapDrive.htm, SIZE=50000, DECOMPRESS 20, MS_Help.css, SIZE=50000, DECOMPRESS 20, NetHood.htm, SIZE=50000, DECOMPRESS 20, N-icon.jpg, SIZE=50000, DECOMPRESS 20, nmenu.gif, SIZE=50000, DECOMPRESS 20, NWConnec.htm, SIZE=50000, DECOMPRESS 20, NWCopy.htm, SIZE=50000, DECOMPRESS 20, NWGuide.hhc, SIZE=50000, DECOMPRESS 20, NWLogin.htm, SIZE=50000, DECOMPRESS 20, nwutils.gif, SIZE=50000, DECOMPRESS 20, NWUtils.htm, SIZE=50000, DECOMPRESS 20, ObjProps.htm, SIZE=50000, DECOMPRESS 20, Personal.htm, SIZE=50000, DECOMPRESS 20, Purge.htm, SIZE=50000, DECOMPRESS 20, PWAdmin.htm, SIZE=50000, DECOMPRESS 20, QuickRef.htm, SIZE=50000, DECOMPRESS 20, Salvage.htm, SIZE=50000, DECOMPRESS 20, SendMess.htm, SIZE=50000, DECOMPRESS 20, SERVER.jpg, SIZE=50000, DECOMPRESS 20, SERVERGR.jpg, SIZE=50000, DECOMPRESS 20, SynchPW.htm, SIZE=50000, DECOMPRESS 20, TrayIcon.htm, SIZE=50000, DECOMPRESS 20, TREE.jpg, SIZE=50000, DECOMPRESS 20, UseNMenu.htm, SIZE=50000, DECOMPRESS 20, UserAdm.htm, SIZE=50000, DECOMPRESS 20, UserGuid.htm, SIZE=50000, DECOMPRESS 20, ViewConx.htm, SIZE=50000, DECOMPRESS 20, ViewMap.htm, SIZE=50000, DECOMPRESS 20, VwRights.htm, SIZE=50000, DECOMPRESS 20, w95help.css, SIZE=50000, DECOMPRESS 20, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 20, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 20, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 20, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 20, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 20, WHnonIE4.css, SIZE=50000, DECOMPRESS 20, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 20, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 20, win95.gif, SIZE=50000, DECOMPRESS 20, winnt.gif, SIZE=50000, DECOMPRESS 20, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Portugue] 20, Attrib.htm, SIZE=50000, DECOMPRESS 20, CHKMARK.gif, SIZE=50000, DECOMPRESS 20, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 20, FileCopy.htm, SIZE=50000, DECOMPRESS 20, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 20, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 20, hh_ndx.htm, SIZE=50000, DECOMPRESS 20, hh_toc.htm, SIZE=50000, DECOMPRESS 20, infoDir.htm, SIZE=50000, DECOMPRESS 20, InfoFile.htm, SIZE=50000, DECOMPRESS 20, Inherit.htm, SIZE=50000, DECOMPRESS 20, logfile.htm, SIZE=50000, DECOMPRESS 20, Rights.htm, SIZE=50000, DECOMPRESS 20, start.htm, SIZE=50000, DECOMPRESS 20, styles.css, SIZE=50000, DECOMPRESS 20, Tmarks.htm, SIZE=50000, DECOMPRESS 20, toc.hhc, SIZE=50000, DECOMPRESS 20, Using.htm, SIZE=50000, DECOMPRESS 20, VolInfo.htm, SIZE=50000, DECOMPRESS 20, VolStats.htm, SIZE=50000, DECOMPRESS 20, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 20, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 20, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 20, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 20, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 20, WHnonIE4.css, SIZE=50000, DECOMPRESS 20, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 20, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Portugue] 20, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Portugue] 20, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Portugue] 20, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 20, netwarer.dll, SIZE=50000, DECOMPRESS 20, novnpntr.dll, SIZE=50000, DECOMPRESS ; 20, nwcplr.dll, SIZE=50000, DECOMPRESS 20, nwevents.dll, SIZE=50000, DECOMPRESS 20, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 20, nwsetupr.dll, SIZE=50000, DECOMPRESS 20, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 20, nwrightr.dll, SIZE=50000, DECOMPRESS 20, nwshlxnr.dll, SIZE=50000, DECOMPRESS 20, loginw32.rll, SIZE=50000, DECOMPRESS ; 20, axcred.rll, SIZE=50000, DECOMPRESS ; 20, axcrednt.rll, SIZE=50000, DECOMPRESS ; 20, axnds.rll, SIZE=50000, DECOMPRESS ; 20, axbndry.rll, SIZE=50000, DECOMPRESS ; 20, axscript.rll, SIZE=50000, DECOMPRESS ; 20, axdialup.rll, SIZE=50000, DECOMPRESS 20, axprf.rll, SIZE=50000, DECOMPRESS 20, connsvcr.dll, SIZE=50000, DECOMPRESS 20, loginsvr.dll, SIZE=50000, DECOMPRESS 20, mapbaser.dll, SIZE=50000, DECOMPRESS 20, dlu32r.dll, SIZE=50000, DECOMPRESS 20, lgncnr32.dll, SIZE=50000, DECOMPRESS 20, wsreg32r.dll, SIZE=50000, DECOMPRESS 20, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Portugue-SAM] 20, sammigrs.dll, SIZE=50000, DECOMPRESS 20, sammig.hlp, SIZE=50000, DECOMPRESS 20, spsntryr.dll, SIZE=50000, DECOMPRESS 20, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Portugue] 20, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Russki] 25, Readme.txt, SIZE=50000, DECOMPRESS ; 26, nt4using.cnt, SIZE=50000, DECOMPRESS ; 26, nt4using.hlp, SIZE=50000, DECOMPRESS ; 26, loginw32.hlp, SIZE=50000, DECOMPRESS ; 26, axcred.hlp, SIZE=50000, DECOMPRESS ; 26, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 26, axnds.hlp, SIZE=50000, DECOMPRESS ; 26, axbndry.hlp, SIZE=50000, DECOMPRESS ; 26, axscript.hlp, SIZE=50000, DECOMPRESS ; 26, axdialup.hlp, SIZE=50000, DECOMPRESS ; 26, axprf.hlp, SIZE=50000, DECOMPRESS 26, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Russki] 26, Account.htm, SIZE=50000, DECOMPRESS 26, admin.jpg, SIZE=50000, DECOMPRESS 26, Browseto.htm, SIZE=50000, DECOMPRESS 26, c95contx.gif, SIZE=50000, DECOMPRESS 26, c95down.gif, SIZE=50000, DECOMPRESS 26, c95foldr.gif, SIZE=50000, DECOMPRESS 26, c95mycom.gif, SIZE=50000, DECOMPRESS 26, c95n.gif, SIZE=50000, DECOMPRESS 26, c95neigh.gif, SIZE=50000, DECOMPRESS 26, c95servr.gif, SIZE=50000, DECOMPRESS 26, c95tree.gif, SIZE=50000, DECOMPRESS 26, c95up.gif, SIZE=50000, DECOMPRESS 26, c95uparr.gif, SIZE=50000, DECOMPRESS 26, c95x.gif, SIZE=50000, DECOMPRESS 26, C9xPass.htm, SIZE=50000, DECOMPRESS 26, Capture.htm, SIZE=50000, DECOMPRESS 26, CliProps.htm, SIZE=50000, DECOMPRESS 26, CNTPass.htm, SIZE=50000, DECOMPRESS 26, cont_nt.gif, SIZE=50000, DECOMPRESS 26, default.css, SIZE=50000, DECOMPRESS 26, DelMap.htm, SIZE=50000, DECOMPRESS 26, DisDrive.htm, SIZE=50000, DECOMPRESS 26, EdtScrpt.htm, SIZE=50000, DECOMPRESS 26, EndCap.htm, SIZE=50000, DECOMPRESS 26, GroupMem.htm, SIZE=50000, DECOMPRESS 26, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 26, Help.htm, SIZE=50000, DECOMPRESS 26, helpicon.jpg, SIZE=50000, DECOMPRESS 26, HtmlHelp.css, SIZE=50000, DECOMPRESS 26, LimitAcc.htm, SIZE=50000, DECOMPRESS 26, LogInOth.htm, SIZE=50000, DECOMPRESS 26, LogInPrf.htm, SIZE=50000, DECOMPRESS 26, LogOut.htm, SIZE=50000, DECOMPRESS 26, Mailing.htm, SIZE=50000, DECOMPRESS 26, MapDrive.htm, SIZE=50000, DECOMPRESS 26, MS_Help.css, SIZE=50000, DECOMPRESS 26, NetHood.htm, SIZE=50000, DECOMPRESS 26, N-icon.jpg, SIZE=50000, DECOMPRESS 26, nmenu.gif, SIZE=50000, DECOMPRESS 26, NWConnec.htm, SIZE=50000, DECOMPRESS 26, NWCopy.htm, SIZE=50000, DECOMPRESS 26, NWGuide.hhc, SIZE=50000, DECOMPRESS 26, NWLogin.htm, SIZE=50000, DECOMPRESS 26, nwutils.gif, SIZE=50000, DECOMPRESS 26, NWUtils.htm, SIZE=50000, DECOMPRESS 26, ObjProps.htm, SIZE=50000, DECOMPRESS 26, Personal.htm, SIZE=50000, DECOMPRESS 26, Purge.htm, SIZE=50000, DECOMPRESS 26, PWAdmin.htm, SIZE=50000, DECOMPRESS 26, QuickRef.htm, SIZE=50000, DECOMPRESS 26, Salvage.htm, SIZE=50000, DECOMPRESS 26, SendMess.htm, SIZE=50000, DECOMPRESS 26, SERVER.jpg, SIZE=50000, DECOMPRESS 26, SERVERGR.jpg, SIZE=50000, DECOMPRESS 26, SynchPW.htm, SIZE=50000, DECOMPRESS 26, TrayIcon.htm, SIZE=50000, DECOMPRESS 26, TREE.jpg, SIZE=50000, DECOMPRESS 26, UseNMenu.htm, SIZE=50000, DECOMPRESS 26, UserAdm.htm, SIZE=50000, DECOMPRESS 26, UserGuid.htm, SIZE=50000, DECOMPRESS 26, ViewConx.htm, SIZE=50000, DECOMPRESS 26, ViewMap.htm, SIZE=50000, DECOMPRESS 26, VwRights.htm, SIZE=50000, DECOMPRESS 26, w95help.css, SIZE=50000, DECOMPRESS 26, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 26, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 26, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 26, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 26, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 26, WHnonIE4.css, SIZE=50000, DECOMPRESS 26, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 26, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 26, win95.gif, SIZE=50000, DECOMPRESS 26, winnt.gif, SIZE=50000, DECOMPRESS 26, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Russki] 26, Attrib.htm, SIZE=50000, DECOMPRESS 26, CHKMARK.gif, SIZE=50000, DECOMPRESS 26, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 26, FileCopy.htm, SIZE=50000, DECOMPRESS 26, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 26, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 26, hh_ndx.htm, SIZE=50000, DECOMPRESS 26, hh_toc.htm, SIZE=50000, DECOMPRESS 26, infoDir.htm, SIZE=50000, DECOMPRESS 26, InfoFile.htm, SIZE=50000, DECOMPRESS 26, Inherit.htm, SIZE=50000, DECOMPRESS 26, logfile.htm, SIZE=50000, DECOMPRESS 26, Rights.htm, SIZE=50000, DECOMPRESS 26, start.htm, SIZE=50000, DECOMPRESS 26, styles.css, SIZE=50000, DECOMPRESS 26, Tmarks.htm, SIZE=50000, DECOMPRESS 26, toc.hhc, SIZE=50000, DECOMPRESS 26, Using.htm, SIZE=50000, DECOMPRESS 26, VolInfo.htm, SIZE=50000, DECOMPRESS 26, VolStats.htm, SIZE=50000, DECOMPRESS 26, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 26, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 26, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 26, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 26, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 26, WHnonIE4.css, SIZE=50000, DECOMPRESS 26, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 26, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Russki] 26, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Russki] 26, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Russki] 26, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 26, netwarer.dll, SIZE=50000, DECOMPRESS 26, novnpntr.dll, SIZE=50000, DECOMPRESS ; 26, nwcplr.dll, SIZE=50000, DECOMPRESS 26, nwevents.dll, SIZE=50000, DECOMPRESS 26, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 26, nwsetupr.dll, SIZE=50000, DECOMPRESS 26, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 26, nwrightr.dll, SIZE=50000, DECOMPRESS 26, nwshlxnr.dll, SIZE=50000, DECOMPRESS 26, loginw32.rll, SIZE=50000, DECOMPRESS ; 26, axcred.rll, SIZE=50000, DECOMPRESS ; 26, axcrednt.rll, SIZE=50000, DECOMPRESS ; 26, axnds.rll, SIZE=50000, DECOMPRESS ; 26, axbndry.rll, SIZE=50000, DECOMPRESS ; 26, axscript.rll, SIZE=50000, DECOMPRESS ; 26, axdialup.rll, SIZE=50000, DECOMPRESS 26, axprf.rll, SIZE=50000, DECOMPRESS 26, connsvcr.dll, SIZE=50000, DECOMPRESS 26, loginsvr.dll, SIZE=50000, DECOMPRESS 26, mapbaser.dll, SIZE=50000, DECOMPRESS 26, dlu32r.dll, SIZE=50000, DECOMPRESS 26, lgncnr32.dll, SIZE=50000, DECOMPRESS 26, wsreg32r.dll, SIZE=50000, DECOMPRESS 26, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Russki-SAM] 26, sammigrs.dll, SIZE=50000, DECOMPRESS 26, sammig.hlp, SIZE=50000, DECOMPRESS 26, spsntryr.dll, SIZE=50000, DECOMPRESS 26, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Russki] 26, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Polski] 27, Readme.txt, SIZE=50000, DECOMPRESS ; 28, nt4using.cnt, SIZE=50000, DECOMPRESS ; 28, nt4using.hlp, SIZE=50000, DECOMPRESS ; 28, loginw32.hlp, SIZE=50000, DECOMPRESS ; 28, axcred.hlp, SIZE=50000, DECOMPRESS ; 28, axcrednt.hlp, SIZE=50000, DECOMPRESS ; 28, axnds.hlp, SIZE=50000, DECOMPRESS ; 28, axbndry.hlp, SIZE=50000, DECOMPRESS ; 28, axscript.hlp, SIZE=50000, DECOMPRESS ; 28, axdialup.hlp, SIZE=50000, DECOMPRESS ; 28, axprf.hlp, SIZE=50000, DECOMPRESS 28, prop.hlp, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-Nwguide-Polski] 28, Account.htm, SIZE=50000, DECOMPRESS 28, admin.jpg, SIZE=50000, DECOMPRESS 28, Browseto.htm, SIZE=50000, DECOMPRESS 28, c95contx.gif, SIZE=50000, DECOMPRESS 28, c95down.gif, SIZE=50000, DECOMPRESS 28, c95foldr.gif, SIZE=50000, DECOMPRESS 28, c95mycom.gif, SIZE=50000, DECOMPRESS 28, c95n.gif, SIZE=50000, DECOMPRESS 28, c95neigh.gif, SIZE=50000, DECOMPRESS 28, c95servr.gif, SIZE=50000, DECOMPRESS 28, c95tree.gif, SIZE=50000, DECOMPRESS 28, c95up.gif, SIZE=50000, DECOMPRESS 28, c95uparr.gif, SIZE=50000, DECOMPRESS 28, c95x.gif, SIZE=50000, DECOMPRESS 28, C9xPass.htm, SIZE=50000, DECOMPRESS 28, Capture.htm, SIZE=50000, DECOMPRESS 28, CliProps.htm, SIZE=50000, DECOMPRESS 28, CNTPass.htm, SIZE=50000, DECOMPRESS 28, cont_nt.gif, SIZE=50000, DECOMPRESS 28, default.css, SIZE=50000, DECOMPRESS 28, DelMap.htm, SIZE=50000, DECOMPRESS 28, DisDrive.htm, SIZE=50000, DECOMPRESS 28, EdtScrpt.htm, SIZE=50000, DECOMPRESS 28, EndCap.htm, SIZE=50000, DECOMPRESS 28, GroupMem.htm, SIZE=50000, DECOMPRESS 28, HelpG.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 28, Help.htm, SIZE=50000, DECOMPRESS 28, helpicon.jpg, SIZE=50000, DECOMPRESS 28, HtmlHelp.css, SIZE=50000, DECOMPRESS 28, LimitAcc.htm, SIZE=50000, DECOMPRESS 28, LogInOth.htm, SIZE=50000, DECOMPRESS 28, LogInPrf.htm, SIZE=50000, DECOMPRESS 28, LogOut.htm, SIZE=50000, DECOMPRESS 28, Mailing.htm, SIZE=50000, DECOMPRESS 28, MapDrive.htm, SIZE=50000, DECOMPRESS 28, MS_Help.css, SIZE=50000, DECOMPRESS 28, NetHood.htm, SIZE=50000, DECOMPRESS 28, N-icon.jpg, SIZE=50000, DECOMPRESS 28, nmenu.gif, SIZE=50000, DECOMPRESS 28, NWConnec.htm, SIZE=50000, DECOMPRESS 28, NWCopy.htm, SIZE=50000, DECOMPRESS 28, NWGuide.hhc, SIZE=50000, DECOMPRESS 28, NWLogin.htm, SIZE=50000, DECOMPRESS 28, nwutils.gif, SIZE=50000, DECOMPRESS 28, NWUtils.htm, SIZE=50000, DECOMPRESS 28, ObjProps.htm, SIZE=50000, DECOMPRESS 28, Personal.htm, SIZE=50000, DECOMPRESS 28, Purge.htm, SIZE=50000, DECOMPRESS 28, PWAdmin.htm, SIZE=50000, DECOMPRESS 28, QuickRef.htm, SIZE=50000, DECOMPRESS 28, Salvage.htm, SIZE=50000, DECOMPRESS 28, SendMess.htm, SIZE=50000, DECOMPRESS 28, SERVER.jpg, SIZE=50000, DECOMPRESS 28, SERVERGR.jpg, SIZE=50000, DECOMPRESS 28, SynchPW.htm, SIZE=50000, DECOMPRESS 28, TrayIcon.htm, SIZE=50000, DECOMPRESS 28, TREE.jpg, SIZE=50000, DECOMPRESS 28, UseNMenu.htm, SIZE=50000, DECOMPRESS 28, UserAdm.htm, SIZE=50000, DECOMPRESS 28, UserGuid.htm, SIZE=50000, DECOMPRESS 28, ViewConx.htm, SIZE=50000, DECOMPRESS 28, ViewMap.htm, SIZE=50000, DECOMPRESS 28, VwRights.htm, SIZE=50000, DECOMPRESS 28, w95help.css, SIZE=50000, DECOMPRESS 28, WebHelpG.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 28, WebHelpG.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 28, WebHelpG.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 28, WHIEIndG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 28, WHIETocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 28, WHnonIE4.css, SIZE=50000, DECOMPRESS 28, WHStartG.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 28, WHTocG.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm 28, win95.gif, SIZE=50000, DECOMPRESS 28, winnt.gif, SIZE=50000, DECOMPRESS 28, Work.htm, SIZE=50000, DECOMPRESS [Files-Hlp-Sys32-NwUse-Polski] 28, Attrib.htm, SIZE=50000, DECOMPRESS 28, CHKMARK.gif, SIZE=50000, DECOMPRESS 28, EMPTYBOX.gif, SIZE=50000, DECOMPRESS 28, FileCopy.htm, SIZE=50000, DECOMPRESS 28, GRAYCHKB.gif, SIZE=50000, DECOMPRESS 28, HelpU.hhh, SIZE=50000, DECOMPRESS, RENAME=Help.hhh 28, hh_ndx.htm, SIZE=50000, DECOMPRESS 28, hh_toc.htm, SIZE=50000, DECOMPRESS 28, infoDir.htm, SIZE=50000, DECOMPRESS 28, InfoFile.htm, SIZE=50000, DECOMPRESS 28, Inherit.htm, SIZE=50000, DECOMPRESS 28, logfile.htm, SIZE=50000, DECOMPRESS 28, Rights.htm, SIZE=50000, DECOMPRESS 28, start.htm, SIZE=50000, DECOMPRESS 28, styles.css, SIZE=50000, DECOMPRESS 28, Tmarks.htm, SIZE=50000, DECOMPRESS 28, toc.hhc, SIZE=50000, DECOMPRESS 28, Using.htm, SIZE=50000, DECOMPRESS 28, VolInfo.htm, SIZE=50000, DECOMPRESS 28, VolStats.htm, SIZE=50000, DECOMPRESS 28, WebHelpU.cab, SIZE=50000, DECOMPRESS, RENAME=WebHelp.cab 28, WebHelpU.csh, SIZE=50000, DECOMPRESS, RENAME=WebHelp.csh 28, WebHelpU.zip, SIZE=50000, DECOMPRESS, RENAME=WebHelp.zip 28, WHIEIndU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEInd.htm 28, WHIETocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHIEToc.htm 28, WHnonIE4.css, SIZE=50000, DECOMPRESS 28, WHStartU.htm, SIZE=50000, DECOMPRESS, RENAME=WHStart.htm 28, WHTocU.htm, SIZE=50000, DECOMPRESS, RENAME=WHToc.htm [Files-Hlp-Sys32-WebLinks-Polski] 28, weblinks.htm, SIZE=50000, DECOMPRESS [Files-Msg-Sys32-Polski] 28, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys32-Polski] 28, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ ; 28, netwarer.dll, SIZE=50000, DECOMPRESS 28, novnpntr.dll, SIZE=50000, DECOMPRESS ; 28, nwcplr.dll, SIZE=50000, DECOMPRESS 28, nwevents.dll, SIZE=50000, DECOMPRESS 28, nwginar.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 28, nwsetupr.dll, SIZE=50000, DECOMPRESS 28, nwspoolr.dll, SIZE=50000, DECOMPRESS ; 28, nwrightr.dll, SIZE=50000, DECOMPRESS 28, nwshlxnr.dll, SIZE=50000, DECOMPRESS 28, loginw32.rll, SIZE=50000, DECOMPRESS ; 28, axcred.rll, SIZE=50000, DECOMPRESS ; 28, axcrednt.rll, SIZE=50000, DECOMPRESS ; 28, axnds.rll, SIZE=50000, DECOMPRESS ; 28, axbndry.rll, SIZE=50000, DECOMPRESS ; 28, axscript.rll, SIZE=50000, DECOMPRESS ; 28, axdialup.rll, SIZE=50000, DECOMPRESS 28, axprf.rll, SIZE=50000, DECOMPRESS 28, connsvcr.dll, SIZE=50000, DECOMPRESS 28, loginsvr.dll, SIZE=50000, DECOMPRESS 28, mapbaser.dll, SIZE=50000, DECOMPRESS 28, dlu32r.dll, SIZE=50000, DECOMPRESS 28, lgncnr32.dll, SIZE=50000, DECOMPRESS 28, wsreg32r.dll, SIZE=50000, DECOMPRESS 28, ndppntr.dll, SIZE=50000, DECOMPRESS [Files-Resource-Sys32-Polski-SAM] 28, sammigrs.dll, SIZE=50000, DECOMPRESS 28, sammig.hlp, SIZE=50000, DECOMPRESS 28, spsntryr.dll, SIZE=50000, DECOMPRESS 28, revmigrs.dll, SIZE=50000, DECOMPRESS [Files-Ini-Polski] 28, rdrstats.ini, SIZE=50000, DECOMPRESS [Files-Msg-Sys-English] 2, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-English] 2, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 2, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-English] 2, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 2, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-English-SAM] 2, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 2, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Chineses] 4, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Chineses] 4, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 4, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Chineses] 4, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 4, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Chineses-SAM] 4, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 4, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Chineset] 6, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Chineset] 6, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 6, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Chineset] 6, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 6, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Chineset-SAM] 6, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 6, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Deutsch] 8, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Deutsch] 8, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 8, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Deutsch] 8, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 8, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Deutsch-SAM] 8, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 8, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Espanol] 10, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Espanol] 10, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 10, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Espanol] 10, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 10, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Espanol-SAM] 10, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 10, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Francais] 12, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Francais] 12, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 12, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Francais] 12, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 12, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Francais-SAM] 12, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 12, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Italiano] 14, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Italiano] 14, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 14, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Italiano] 14, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 14, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Italiano-SAM] 14, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 14, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Korean] 16, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Korean] 16, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 16, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Korean] 16, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 16, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Korean-SAM] 16, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 16, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Nihongo] 18, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Nihongo] 18, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 18, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Nihongo] 18, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 18, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Nihongo-SAM] 18, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 18, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Portugue] 20, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Portugue] 20, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 20, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Portugue] 20, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 20, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Portugue-SAM] 20, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 20, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Russki] 26, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Russki] 26, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 26, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Russki] 26, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 26, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Russki-SAM] 26, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 26, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-Msg-Sys-Polski] 28, login.msg, SIZE=50000, DECOMPRESS, RENAME=login.ms~ [Files-Resource-Sys-Polski] 28, login.dat, SIZE=50000, DECOMPRESS, RENAME=login.da~ 28, netwarer.drv, SIZE=50000, DECOMPRESS [Files-NtRoot-Polski] 28, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 28, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-NtRoot-Polski-SAM] 28, nwlcmnt4.bmp, SIZE=50000, DECOMPRESS, RENAME=nwelcome.bmp 28, nwlcmw2k.bmp, SIZE=50000, DECOMPRESS [Files-System] 21, loginw31.exe, SIZE=50000, DECOMPRESS 21, tli_win.dll, SIZE=50000, DECOMPRESS [Files-System32] 21, ndszip.dll, SIZE=50000, DECOMPRESS 21, novell.ani, SIZE=50000, DECOMPRESS 21, novnpnt.dll, SIZE=50000, DECOMPRESS, RENAME=novnpnt.dl~ 21, nwgina.dll, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 21, nwlscrpt.exe, SIZE=50000, DECOMPRESS 21, nwpfctrs.dll, SIZE=50000, DECOMPRESS 21, nwsipx32.dll, SIZE=50000, DECOMPRESS 21, nwsndmsg.exe, SIZE=50000, DECOMPRESS 21, nwspool.dll, SIZE=50000, DECOMPRESS, RENAME=nwspool.dl~ 21, nwv1_0.dll, SIZE=50000, DECOMPRESS 21, rdrstats.h, SIZE=50000, DECOMPRESS 21, vipx.exe, SIZE=50000, DECOMPRESS 21, vipxvdd.dll, SIZE=50000, DECOMPRESS 21, vlmsup.dll, SIZE=50000, DECOMPRESS 21, vlmsup.exe, SIZE=50000, DECOMPRESS 21, nwshlxnt.dll, SIZE=50000, DECOMPRESS 21, nwsrvloc.dll, SIZE=50000, DECOMPRESS ; 21, cfwntdll.dll, SIZE=50000, DECOMPRESS 21, wmutil.dll, SIZE=50000, DECOMPRESS 21, loginw32.exe, SIZE=50000, DECOMPRESS 21, loginw32.exe, SIZE=50000, DECOMPRESS, RENAME=loginwnt.exe ; 21, axcred.ocx, SIZE=50000, DECOMPRESS ; 21, axcrednt.ocx, SIZE=50000, DECOMPRESS ; 21, axnds.ocx, SIZE=50000, DECOMPRESS ; 21, axbndry.ocx, SIZE=50000, DECOMPRESS ; 21, axscript.ocx, SIZE=50000, DECOMPRESS ; 21, axdialup.ocx, SIZE=50000, DECOMPRESS 21, nwlghelp.exe, SIZE=50000, DECOMPRESS 21, axprf.ocx, SIZE=50000, DECOMPRESS 21, loginsvc.dll, SIZE=50000, DECOMPRESS 21, connsvc.dll, SIZE=50000, DECOMPRESS 21, mapbase.dll, SIZE=50000, DECOMPRESS 21, wmntapi.dll, SIZE=50000, DECOMPRESS 21, wsreg.dll, SIZE=50000, DECOMPRESS 21, wsreg32.exe, SIZE=50000, DECOMPRESS 21, nwapp32.dll, SIZE=50000, DECOMPRESS 21, wmreg.dll, SIZE=50000, DECOMPRESS 21, nwtray.exe, SIZE=50000, DECOMPRESS 21, dscqry32.dll, SIZE=50000, DECOMPRESS 21, lgncon32.dll, SIZE=50000, DECOMPRESS 21, cmdinfo.exe, SIZE=50000, DECOMPRESS 21, slpinfo.exe, SIZE=50000, DECOMPRESS 21, cw3230mt.dll, SIZE=50000, DECOMPRESS 21, sporder.dll, SIZE=50000, DECOMPRESS 21, pwdnotfy.dll, SIZE=50000, DECOMPRESS [Files-System32-SAM] 21, sammig.exe, SIZE=50000, DECOMPRESS 21, ndssrch.avi, SIZE=50000, DECOMPRESS 21, nt2nds.avi, SIZE=50000, DECOMPRESS 21, spsentry.exe, SIZE=50000, DECOMPRESS [Files-System32-ADSI] 21, adsnnds.dll, SIZE=50000, DECOMPRESS [Files-NtRoot] 21, phasers.wav, SIZE=50000, DECOMPRESS [Files-NetWare] 21, nwfs.sys, SIZE=50000, DECOMPRESS 21, nwsipx32.sys, SIZE=50000, DECOMPRESS 21, resmgr.sys, SIZE=50000, DECOMPRESS 21, resmgr5.sys, SIZE=50000, DECOMPRESS 21, nwsap.sys, SIZE=50000, DECOMPRESS 21, nwsns.sys, SIZE=50000, DECOMPRESS 21, srvloc.sys, SIZE=50000, DECOMPRESS 21, nwhost.sys, SIZE=50000, DECOMPRESS 21, nwslp.sys, SIZE=50000, DECOMPRESS 21, nwdns.sys, SIZE=50000, DECOMPRESS ; 21, cfwntsys.sys, SIZE=50000, DECOMPRESS ; 21, gcfwmap.sys, SIZE=50000, DECOMPRESS ; 21, cproxynt.sys, SIZE=50000, DECOMPRESS ; 21, nwtcp.sys, SIZE=50000, DECOMPRESS ; 21, gwspdll.dll, SIZE=50000, DECOMPRESS ; 21, nwws2gw.dll, SIZE=50000, DECOMPRESS 21, nwws2sap.dll, SIZE=50000, DECOMPRESS 21, nwws2nds.dll, SIZE=50000, DECOMPRESS 21, nwws2slp.dll, SIZE=50000, DECOMPRESS ; 21, winping.exe, SIZE=50000, DECOMPRESS 21, nwdhcp.sys, SIZE=50000, DECOMPRESS ; 21, sporder.dll, SIZE=50000, DECOMPRESS [Files-NetWare-SAM] 21, samsrv.dll, SIZE=50000, DECOMPRESS, RENAME=nwsamsrv.dll 21, migfiltr.dll, SIZE=50000, DECOMPRESS 21, revmig.exe, SIZE=50000, DECOMPRESS [Files-Psapi] 21, psapi.dll, SIZE=50000, DECOMPRESS [Files-Drivers] 21, nwcmd.sys, SIZE=50000, DECOMPRESS 21, nicm.sys, SIZE=50000, DECOMPRESS, OVERWRITE=VERIFYSOURCEOLDER 21, nwip.sys, SIZE=50000, DECOMPRESS 21, nwcmd2.sys, SIZE=50000, DECOMPRESS [Files-NDPS] 21, dpawin32.dll, SIZE=50000, DECOMPRESS 21, dplwin32.dll, SIZE=50000, DECOMPRESS 21, dppwin32.dll, SIZE=50000, DECOMPRESS 21, dpswin32.dll, SIZE=50000, DECOMPRESS 21, dprpcw32.dll, SIZE=50000, DECOMPRESS [Files-32bitLibs] 22, audwin32.dll, SIZE=50000, DECOMPRESS 22, calwin32.dll, SIZE=50000, DECOMPRESS 22, clnwin32.dll, SIZE=50000, DECOMPRESS 22, clxwin32.dll, SIZE=50000, DECOMPRESS 22, lgnwnt32.dll, SIZE=50000, DECOMPRESS 22, loginwnt.dll, SIZE=50000, DECOMPRESS 22, ncpwin32.dll, SIZE=50000, DECOMPRESS 22, netwin32.dll, SIZE=50000, DECOMPRESS 22, nwpsrv32.dll, SIZE=50000, DECOMPRESS 22, prtwin32.dll, SIZE=50000, DECOMPRESS 22, loginw32.dll, SIZE=50000, DECOMPRESS 22, nrdwin32.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MSVCRTDLL] 22, msvcrt.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MSVCRTDDLL] 22, msvcrtd.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-CTL3D32DLL] 22, ctl3d32.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MFC42DLL] 22, mfc42.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MFC42DDLL] 22, mfc42d.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MFCO42DDLL] 22, mfco42d.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MSVCRT40DLL] 22, msvcrt40.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-MSVCR40DDLL] 22, msvcr40d.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-URLMONDLL] 22, urlmon.dll, SIZE=50000, DECOMPRESS [Files-3party-32bitLibs-WININETDLL] 22, wininet.dll, SIZE=50000, DECOMPRESS [Files-16bitXplatLibs] 23, audwin16.dll, SIZE=50000, DECOMPRESS 23, calwin16.dll, SIZE=50000, DECOMPRESS 23, clnwin16.dll, SIZE=50000, DECOMPRESS 23, clxwin16.dll, SIZE=50000, DECOMPRESS 23, locwin16.dll, SIZE=50000, DECOMPRESS 23, ncpwin16.dll, SIZE=50000, DECOMPRESS 23, netwin16.dll, SIZE=50000, DECOMPRESS [Files-16bitOldLibs] 23, lgnw3116.dll, SIZE=50000, DECOMPRESS 23, loginw31.dll, SIZE=50000, DECOMPRESS 23, nwcalls.dll, SIZE=50000, DECOMPRESS 23, nwgdi.dll, SIZE=50000, DECOMPRESS 23, nwlocale.dll, SIZE=50000, DECOMPRESS 23, nwpsrv.dll, SIZE=50000, DECOMPRESS 23, nwnet.dll, SIZE=50000, DECOMPRESS 23, pnw.dll, SIZE=50000, DECOMPRESS 23, prtwin16.dll, SIZE=50000, DECOMPRESS [Files-16bitThunkLibs] 23, nwipxspx.dll, SIZE=50000, DECOMPRESS 23, netware.drv, SIZE=50000, DECOMPRESS, RENAME=netware.dr~ ;----------------------------------------------------------------------- ; LANGUAGES SUPPORTED ; ------------------- ; ; The languages supported by the OEM INF, For every language supported ; we need to have a separate text section for every displayable text ; section. ; ;----------------------------------------------------------------------- [LanguagesSupported] ENG, ENGLISH [Strings] ; ; Every string that is in quotes from this point to the end of the ; file will be pulled out and put into the translation teams database. ; There parser looks for the section [Strings] and then goes to the ; end of the file. DO NOT put strings below this point in the file ; that should not be translated. Likewise, all strings that need to ; be translated should be in quotes and below this point in the file. ; [Source Media Descriptions] 1 = "Novell Client for Windows NT Disk 1 (English)", TAGFILE = NWC_1 2 = "Novell Client for Windows NT Disk 2 (English)", TAGFILE = NWC_2 3 = "Novell Client for Windows NT Disk 1 (Chinese Simplified)", TAGFILE = NWC_3 4 = "Novell Client for Windows NT Disk 2 (Chinese Simplified)", TAGFILE = NWC_4 5 = "Novell Client for Windows NT Disk 1 (Chinese Traditional)", TAGFILE = NWC_5 6 = "Novell Client for Windows NT Disk 2 (Chinese Traditional)", TAGFILE = NWC_6 7 = "Novell Client for Windows NT Disk 1 (German)", TAGFILE = NWC_7 8 = "Novell Client for Windows NT Disk 2 (German)", TAGFILE = NWC_8 9 = "Novell Client for Windows NT Disk 1 (Spanish)", TAGFILE = NWC_9 10 = "Novell Client for Windows NT Disk 2 (Spanish)", TAGFILE = NWC_10 11 = "Novell Client for Windows NT Disk 1 (French)", TAGFILE = NWC_11 12 = "Novell Client for Windows NT Disk 2 (French)", TAGFILE = NWC_12 13 = "Novell Client for Windows NT Disk 1 (Italian)", TAGFILE = NWC_13 14 = "Novell Client for Windows NT Disk 2 (Italian)", TAGFILE = NWC_14 15 = "Novell Client for Windows NT Disk 1 (Korean)", TAGFILE = NWC_15 16 = "Novell Client for Windows NT Disk 2 (Korean)", TAGFILE = NWC_16 17 = "Novell Client for Windows NT Disk 1 (Japanese)", TAGFILE = NWC_17 18 = "Novell Client for Windows NT Disk 2 (Japanese)", TAGFILE = NWC_18 19 = "Novell Client for Windows NT Disk 1 (Portuguese)", TAGFILE = NWC_19 20 = "Novell Client for Windows NT Disk 2 (Portuguese)", TAGFILE = NWC_20 21 = "Novell Client for Windows NT Disk 3", TAGFILE = NWC_21 22 = "Novell Client for Windows NT Disk 4", TAGFILE = NWC_22 23 = "Novell Client for Windows NT Disk 5", TAGFILE = NWC_23 25 = "Novell Client for Windows NT Disk 1 (Russian)", TAGFILE = NWC_25 26 = "Novell Client for Windows NT Disk 2 (Russian)", TAGFILE = NWC_26 27 = "Novell Client for Windows NT Disk 1 (Polish)", TAGFILE = NWC_27 28 = "Novell Client for Windows NT Disk 2 (Polish)", TAGFILE = NWC_28 ;----------------------------------------------------------------------- ; OPTION TEXT SECTION ; ------------------- ; These are text strings used to identify the option to the user. There ; are separate sections for each language supported. The format of the ; section name is "OptionsText" concatenated with the Language represented ; by the section. ; ;----------------------------------------------------------------------- [OptionsTextENG] NETWARE = "Novell Client for Windows NT" ;----------------------------------------------------------------------- ; Language-Dependent Dialog Constants ;----------------------------------------------------------------------- [FileConstantsENG] ProductNWFSDisplayName = "Novell Client for Windows NT" ProductNWFSDescription = "Novell Client for Windows NT" ProductNWFSDisplayNameSAM = "Novell NDS for NT Client" ProductNWSIPX32DisplayName = "Novell IPX/SPX Transport Interface" ProductRESMGRDisplayName = "Novell Resource Manager" ProductNICMDisplayName = "Novell InterService Communication Driver" ProductNWSAPDisplayName = "Novell SAP Name Space Service Provider" ProductNWGLTDisplayName = "Novell IPX Get Local Target" ProductNWSNSDisplayName = "Novell Simple Naming Services" ProductNWHOSTDisplayName = "Novell Host File Name Space Service Provider" ProductNWDHCPDisplayName = "Novell DHCP Inform Client" ProductNWDHCPNDSDisplayName = "DHCP NDS Options Name Service Provider" ProductSRVLOCDisplayName = "Novell Service Location" ProductNWSLPDisplayName = "Novell SLP Name Space Service Provider" ProductNWDNSDisplayName = "Novell DNS Name Space Service Provider" ProductSPSENTRYDisplayName = "Novell Service Pack Sentry Service" ; ; Variables to support thermometer gauge and error dialogs ; ProCaption = "Novell Client for Windows NT Setup" ProCaptionSAM = "Novell NDS for NT Setup" ProCancel = "Cancel" ProCancelMsg = "The Novell Client for Windows NT is not "+ "correctly installed. Are you sure you want to cancel "+ "copying files?" ProCancelCap = "Network Setup Message" ProText1 = "Copying:" ProText2 = "To:" [ProgressCopyENG] !p:ProCaption = "Novell Client for Windows NT Setup" !p:ProCaptionSAM = "Novell NDS for NT Setup" !p:ProCancel = "Cancel" !p:ProCancelMsg = "Novell Client for Windows NT is not "+ "correctly installed. Are you sure you want to cancel "+ "copying files?" !p:ProCancelCap = "Setup Message" !p:ProText1 = "Copying:" !p:ProText2 = "To:" !p:Error = "Unable to determine proper source disk location; copy cannot be performed." ;----------InstallOptionENG------------------------------------------------- ; ; InstallOptionENG: ; ; This section has all of the strings that are displayed on the screen. ; They are seperated so that the file can be easily transtated. ; ;------------------------------------------------------------------------ [InstallOptionENG] NetWareClientInstalledMessage = "The Novell Client for Windows "+ "NT is already installed. Please use the [UPDATE] option or remove "+ "it and then reboot before reinstalling." RemoveMSClientMessageText = "The Microsoft Client Service for NetWare "+ "is installed. We will remove this before installing the Novell "+ "Client for Windows NT Service. Do you want to continue?" RemoveMSClientFailedMessage = "An error occurred trying to remove the "+ "Microsoft Client Service for NetWare. Please remove the Microsoft "+ "Client Service for NetWare and reboot before installing the Novell "+ "Client for Windows NT service." SAMServerMessage = "The Novell NDS for NT client may only be installed on "+ "a Windows NT Server." RemoveSAMMessageText = "The Novell NDS for NT client "+ "is installed and the domain has been migrated. You must reverse "+ "migrate through the Domain Object Wizard prior to removing the client. "+ " Do you want to run the Domain Object Wizard?" NoProtocolSAMTitle = "No protocol for NDS for NT" NoProtocolSAMText = "The NDS for NT installation requires the system to reboot after "+ "the NWLINK protocol is installed. The install must be started "+ "again after the system boots. Would you like to reboot now? "+ "(answering YES will restart the system, NO will end the install)" ClientParamError = " parameter data is not valid. This incorrect value "+ "is in the unattended text file. Press NO to abort the installation "+ "and correct the syntax error in the UNATTEND.TXT file. Press YES "+ "to continue using the default behavior for this variable and "+ "complete the install." UnattendFileReadFailed = "Read File Error while trying to read and "+ "initialize either the Novell ACU options and/or the Novell Client parameters "+ "from the Unattended file. The Novell Client parameters will not "+ "be set in the registry, and any ACU installation options will not "+ "install. Press CANCEL to Abort the installation and correct the "+ "syntax errors in the UNATTEND.TXT file. Press OK to manually "+ "complete the install of the Novell NT Client without setting the "+ "Client parameters." UnattendParameterError = " parameter data is not valid. This incorrect "+ "value is in the unattended text file. Press CANCEL to abort the "+ "installation and correct the syntax error in the UNATTEND.TXT file. "+ "Press OK to complete the install without setting this Client parameter." UnattendTreeServerParameterError = " parameter data is not valid. These incorrect "+ "values are in the unattended text file. Press CANCEL to abort the "+ "installation and correct the syntax error in the UNATTEND.TXT file. "+ "Press OK to complete the install without setting these Client parameters." ExtendedFunctionFailedMessage = "An Error occurred while installing the "+ "Novell Client for Windows NT extended services." UpgradeButtonMessage = "The client version you are installing is older "+ "than the client that is currently installed. You must remove the "+ "Novell Client for Windows NT and "+ "then reboot before installing an older version." ReplaceGINAMessageTitle = "Install Novell GINA Authenticator" ReplaceGINAMessageText = "Novell Client for Windows NT has "+ "detected another 3rd party GINA authenticator installed. "+ "Do you want to replace it with the Novell Client "+ "for Windows NT GINA authenticator?" ReplaceAWGINAMessageText = "Novell Client for Windows NT has "+ "detected AWGINA authenticator installed. "+ "Do you want to replace it with the Novell Client "+ "for Windows NT GINA authenticator?" NetoriaGINAMessageText = "This workstation has a version of SFLOGIN installed that is not "+ "compatible with this version of the Novell Client. Please contact "+ "Netoria at http://www.netoria.com for an updated version of SFLOGIN."+ " Select OK to disable SFLOGIN and continue the Novell Client install." InstallTcpipMessageTitle = "Install TCP/IP Protocol" InstallTcpipMessageText = "TCP/IP Protocol is NOT installed. "+ "Install it now?" RemoveNWLinkMessageTitle = "Remove NWLINK Protocol" RemoveNWLinkMessageText = "NWLINK IPX Protocol is installed. "+ "Remove it?" InstallNetWareIPMessageTitle = "Install NetWareIP Support" InstallNetWareIPMessageText = "Would you like to install "+ "NetWareIP support?" NWIPInstalledMessage = "Cannot install IPX Compatibility Mode while NetWare/IP is installed." IPOnlyMessageText = "You currently have IPX Dial-Up Networking installed. It is "+ "not compatible with the IP-only version of the Novell Client. You must disable "+ "IPX Dial-Up Networking before installing the IP-only version of the Novell Client." NoLanAdapterInstalledTitle = "LAN Adapter not installed" NoLanAdapterInstalledText = "Novell Client for Windows NT could "+ "not detect either a LAN adapter or Remote Access WAN adapter "+ "to bind with." NoDiskSpaceTitle = "Not enough disk space" NoDiskSpaceText = "Novell Client for Windows NT detected that "+ "there is not enough free disk space on the system drive. There "+ "must be at least 10 megabytes of free disk space on the system drive." ShellCodeErrorTitle = "Error: Novell Client for Windows NT" ShellCodeErrorText = "Shell Code Error" WrongNTVersionMessage = "The Novell Client for Windows NT is not "+ "supported on this version of Windows NT." OldNTVersionMessage = "This version of the Novell Client for Windows NT is not "+ "supported on Windows NT version 3.51. Version 4.12 is the latest client supported on "+ "NT 3.51. Please try the installation again using version 4.12 or earlier." FunctionTitle = "Novell Client for Windows NT Setup" FunctionTitleSAM = "Novell NDS for NT Setup" LoadDisk1Text = "Please load the Novell Client for Windows NT "+ "disk 1 into drive " LoadDisk2Text = "Please load the Novell Client for Windows NT "+ "disk 2 into drive " LoadDisk3Text = "Please load the Novell Client for Windows NT "+ "disk 3 into drive " OldNetWareGroup1 = "IntranetWare" OldNetWareGroup2 = "NetWare" NetWareGroup = "Novell" LoginIconText = "Novell Login" ChangePasswordIconText = "Novell Change Password" SendMessageIconText = "Novell Send Message" ReadMeIconText = "ReadMe" HelpIconText = "Novell Client for WinNT help" MigIconText = "Domain Object Wizard" SchedIconText = "Novell Scheduler" DefaultLoginCaption = "Begin Login" DefaultProfileName = "Default" DefaultLoginSvcInstName = "Default" OldLoginIconText1 = "IntranetWare Login" OldChangePasswordIconText1 = "IntranetWare Change Password" OldSendMessageIconText1 = "IntranetWare Send Message" OldHelpIconText1 = "IntranetWare Client for WinNT help" OldSchedIconText1 = "IntranetWare Scheduler" OldLoginIconText2 = "NetWare Login" OldChangePasswordIconText2 = "NetWare Change Password" OldSendMessageIconText2 = "NetWare Send Message" OldHelpIconText2 = "NetWare Client for WinNT help" OldSchedIconText2 = "NetWare Scheduler" [DoAskSourceENG] NetWareDlgText = "Please enter the full path to the Novell "+ "Client for Windows NT distribution files. Then choose Continue." [DialogConstantsENG] Help = "&Help" Exit = "&Cancel" OK = "&OK" HelpContext = "" Continue = "Con&tinue" Cancel = "&Cancel" Advanced = "&Advanced" IDH_NETWAREWRKSTATIONPARMS = 901 IDH_NETWAREIPXBIND = 902 IDH_IPXSPXPARMS = 903 IDH_NETWORKPROTOCOL = 904 IDH_NETWARECLIENTINSTALL = 906 IDH_NODEADDRESSOVERIDE = 908 IDH_INSTALLTYPE = 960 IDH_TRUSTEDTREE = 961 [InstallTypeENG] Caption = "Installation Type" Group1 = "Select the desired installation type for the client:" Radio1 = "&IP only" Radio2 = "IP &with IPX Compatibility" Radio3 = "IP &and IPX" Radio4 = "IP&X only" ; DO NOT LOCALIZE THE FOLLOWING STRINGS DlgType = "RadioCombination" ;; RadioIn = { 3 } DlgTemplate = "RADIO4" HelpContext = $(IDH_INSTALLTYPE) CBOptionGreyed = {} RadioOptionGreyed = {} Combo1List = {} Combo1Out = {} ComboListItemsIn = {Combo1List} ComboListItemsOut = {Combo1Out} EditTextIn = "" EditTextLim = "" NotifyFields = {NO, NO}Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.