home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Support Encyclopedia 96-1
/
novell-nsepro-1996-1-cd2.iso
/
download
/
netware
/
ntws1.exe
/
NTCLI
/
NTCLNT_1.350
/
OEMSETUP.INF
< prev
next >
Wrap
INI File
|
1995-05-19
|
111KB
|
3,353 lines
;***********************************************************************
;
; OEMSETUP.INF
;
; Novell NetWare base installation INF
;
;
;***********************************************************************
;-----------------------------------------------------------------------
; 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
;-----------------------------------------------------------------------
; 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
;-----------------------------------------------------------------------
; 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 NetWare Client Services"
;***********************************************************************
; Language-Dependent Dialog Constants
;***********************************************************************
[FileConstantsENG]
;
; Variables to support thermometer gauge and error dialogs
;
ProCaption = "Novell NetWare Client Services Setup"
ProCancel = "Cancel"
ProCancelMsg = "The Novell NetWare Client Services is not correctly installed. "+
"Are you sure you want to cancel copying files?"
ProCancelCap = "Network Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
;
; Product Info
;
FunctionTitle = "NetWare Services Setup"
;
; Used by GetInfFileNameFromRegistry
;
[InitBaseVars]
KeyNull = ""
MAXIMUM_ALLOWED = 33554432
KeyInfo = {}
RegistryErrorIndex = NO_ERROR
NoTitle = 0
CurrentControlSet = "SYSTEM\CurrentControlSet"
ServicesBaseName = $(CurrentControlSet)"\Services"
[OdiNSupVars]
OdiNSupServiceName = "ODINSUP"
OdiNSupParameters = $(!NTN_ServiceBase)"\"$(OdiNSupServiceName)"\Parameters"
OdiNSupLinkage = $(!NTN_ServiceBase)"\"$(OdiNSupServiceName)"\Linkage"
OdiNSupCardName = "Bind"
OdiNSupCardInstance = "BoardInstance"
[OdiVars]
OdiLoadDriverName = "OdiLoad"
OdiModules = "ODI_Modules"
OdiLinkName = "OdiLoadName"
OdiModuleName = $(!NTN_ServiceBase)"\"$(OdiLoadDriverName)"\"$(OdiModules)
NetworkCardsKeyName = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards"
;-----------------------------------------------
; Input DIALOGS
;-----------------------------------------------
[FileDependentDlgENG]
;
; No UI yet for NetWare Services
;
;***********************************************************************
; CONSTANTS FOR USING DIALOGS
;***********************************************************************
[FileConstants]
;
; File names, etc.
;
UtilityInf = "UTILITY.INF"
subroutineinf = "SUBROUTN.INF"
NwSubsInf = "NWSUBS.INF"
NwSetupDll = "nwsetup.dll"
SoftwareType = "service"
Exit_Code = 0
;ShellCode = 0
; Product Info
;
Manufacturer = "Novell"
ProductMajorVersion = "1"
ProductMinorVersion = "01"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
UserModeRoot = "%SystemRoot%"
System32Root = $(UserModeRoot)"\System32\"
SoftwareBinHome = $(System32Root)"NetWare\"
DriverBinHome = $(System32Root)"Drivers\"
NetWareEventFile= $(System32Root)"nwevents.dll"
;
; Services
;
; MUP: if not already installed
ProductMUPControl = service
ProductMUPHidden = 0
ProductMUPInstrumentation = FALSE
ProductMUPName = "Mup"
ProductMUPDisplayName = "Mup"
ProductMUPTitle = "Mup"
ProductMUPImagePath = "\SystemRoot\System32\drivers\mup.sys"
ProductMUPSvcType = "transport"
ProductMUPGroup = "Network"
ProductMUPDependList = {}
ProductMUPEventFile = ""
; TDI: if not already installed
ProductTDIControl = service
ProductTDIHidden = 0
ProductTDIInstrumentation = FALSE
ProductTDIName = "Tdi"
ProductTDIDisplayName = "Tdi"
ProductTDITitle = "Tdi"
ProductTDIImagePath = "\SystemRoot\System32\drivers\TDI.sys"
ProductTDISvcType = "kernelauto"
ProductTDIGroup = "Network"
ProductTDIDependList = {}
ProductTDIEventFile = ""
; NwtDrv: Driver for Ipx Api's.
ProductNWTControl = service
ProductNWTHidden = 0
ProductNWTInstrumentation = TRUE
ProductNWTName = "NwtDrv"
ProductNWTDisplayName = "NetWare Transport Interface"
ProductNWTTitle = "NetWare Transport Interface"
ProductNWTImagePath = $(SoftwareBinHome)nwtdrv.sys
ProductNWTSvcType = "kernelautostart"
ProductNWTGroup = ""
ProductNWTDependList = {"+TDI"}
ProductNWTEventFile = $(NetWareEventFile)
; SpxApi: Driver for Spx Api's.
ProductSPXAPIControl = service
ProductSPXAPIHidden = 0
ProductSPXAPIInstrumentation = TRUE
ProductSPXAPIName = "SpxApi"
ProductSPXAPIDisplayName = "NetWare SPX Transport Interface"
ProductSPXAPITitle = "NetWare SPX Transport Interface"
ProductSPXAPIImagePath = $(SoftwareBinHome)spxapi.sys
ProductSPXAPISvcType = "systemauto"
ProductSPXAPIGroup = ""
ProductSPXAPIDependList = {"+TDI"}
ProductSPXAPIEventFile = $(NetWareEventFile)
; IpxApi: Driver for Ipx Api's.
ProductIPXAPIControl = service
ProductIPXAPIHidden = 0
ProductIPXAPIInstrumentation = TRUE
ProductIPXAPIName = "IpxApi"
ProductIPXAPIDisplayName = "NetWare IPX Transport Interface"
ProductIPXAPITitle = "NetWare IPX Transport Interface"
ProductIPXAPIImagePath = $(SoftwareBinHome)ipxapi.sys
ProductIPXAPISvcType = "systemauto"
ProductIPXAPIGroup = ""
ProductIPXAPIDependList = {"+TDI"}
ProductIPXAPIEventFile = $(NetWareEventFile)
; Route: ODI Source Routing
ProductROUTEControl = service
ProductROUTEHidden = 0
ProductROUTEInstrumentation = FALSE
ProductROUTEName = "OdiSourceRouting"
ProductROUTEDisplayName = "NetWare ODI Source Routing Support"
ProductROUTETitle = "NetWare ODI Source Routing Support"
ProductROUTEImagePath = $(SoftwareBinHome)route.sys
ProductROUTESvcType = "kerneldisable"
ProductROUTEGroup = ""
ProductROUTEDependList = {"+ODI Drivers"}
ProductROUTEEventFile = $(NetWareEventFile)
; NwFs: NetWare Workstation
ProductNWFSControl = component
ProductNWFSHidden = 0
ProductNWFSReviewBindings = 1
ProductNWFSInstrumentation = TRUE
ProductNWFSName = "NetWareWorkstation"
ProductNWFSDisplayName = "Novell NetWare Client Services"
ProductNWFSTitle = "Novell NetWare Client Services"
ProductNWFSImagePath = $(SoftwareBinHome)nwfs.sys
ProductNWFSDescription = "Novell NetWare Client Services for Windows NT"
ProductNWFSSvcType = "systemauto"
ProductNWFSSoftType = "service"
ProductNWFSGroup = ""
ProductNWFSDependList = {"+TDI","+NetWare Services","Mup","IpxSpx"}
ProductNWFSEventFile = $(NetWareEventFile)
ProductNWFSKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion"
NetRuleNWFSSoftwareType = "nwfs nwFileSys"
NetRuleNWFSSoftwareUse = "service yes yes"
NetRuleNWFSSoftwareBindForm = """Nwfs"" yes yes container"
NetRuleNWFSSoftwareClass = {"nwFileSys basic"}
NetRuleNWFSSoftwareBindable = {"nwFileSys nwTransport non non 100"}
; IpxSpx: Transport
ProductIPXSPXControl = component
ProductIPXSPXHidden = 0
ProductIPXSPXInstrumentation = TRUE
ProductIPXSPXName = "IpxSpx"
ProductIPXSPXDisplayName = "Novell NetWare IPX/SPX Transport"
ProductIPXSPXTitle = "Novell NetWare IPX/SPX Transport"
ProductIPXSPXDescription = "Novell NetWare IPX/SPX Network Transport"
ProductIPXSPXImagePath = $(SoftwareBinHome)ipxspx.sys
ProductIPXSPXSvcType = "kernelautostart"
ProductIPXSPXSoftType = "transport"
ProductIPXSPXGroup = "TDI"
ProductIPXSPXDependList = {"+ODI Drivers"}
ProductIPXSPXEventFile = $(NetWareEventFile)
ProductIPXSPXKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductIPXSPXName)"\CurrentVersion"
NetRuleIPXSPXSoftwareType = "ipxspx nwTransport"
NetRuleIPXSPXSoftwareUse = "transport yes yes"
NetRuleIPXSPXSoftwareBindForm = """IpxSpx"" yes yes simple"
NetRuleIPXSPXSoftwareClass = {"nwTransport basic"}
NetRuleIPXSPXSoftwareBindable = {"nwTransport nwOdiLoader non non 80", +
"nwTransport nwNwIPDriver non non 90", +
"nwTransport nwOdiVMIDDriver non non 70"}
; OdiLoad: ODI Adapter Driver Loader.
ProductODILOADControl = component
ProductODILOADHidden = 1
ProductODILOADInstrumentation = TRUE
ProductODILOADName = "OdiLoad"
ProductODILOADDisplayName = "NetWare ODI MAC Driver Loader"
ProductODILOADTitle = "NetWare ODI MAC Driver Loader"
ProductODILOADDescription = "NetWare ODI MAC Driver Controller"
ProductODILOADImagePath = $(SoftwareBinHome)odiload.sys
ProductODILOADSvcType = "kerneldisable"
ProductODILOADSoftType = "driver"
ProductODILOADGroup = "ODI Drivers"
ProductODILOADDependList = {"+ODI"}
ProductODILOADEventFile = $(NetWareEventFile)
ProductODILOADKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductODILOADName)"\CurrentVersion"
NetRuleODILOADSoftwareType = "odiLoad nwOdiLoader"
NetRuleODILOADSoftwareUse = "driver yes yes"
NetRuleODILOADSoftwareBindForm = """Odiload"" yes yes simple"
NetRuleODILOADSoftwareClass = {"nwOdiLoader basic","nwAdapter basic yes"}
NetRuleODILOADSoftwareBindable = {"nwOdiLoader nwAdapter non exclusive 100"}
; Lsl: Link Support Layer.
ProductLSLControl = service
ProductLSLHidden = 1
ProductLSLInstrumentation = TRUE
ProductLSLName = "LSL"
ProductLSLDisplayName = "NetWare LSL"
ProductLSLTitle = "NetWare LSL"
ProductLSLImagePath = $(SoftwareBinHome)lsl.sys
ProductLSLSvcType = "kernelautostart"
ProductLSLGroup = "ODI"
ProductLSLDependList = {"+NetWare Services"}
ProductLSLEventFile = $(NetWareEventFile)
; ResMgr: NetWare Resource Manager
ProductRESMGRControl = component
ProductRESMGRHidden = 1
ProductRESMGRInstrumentation = TRUE
ProductRESMGRName = "ResMgr"
ProductRESMGRDisplayName = "NetWare Resource Manager"
ProductRESMGRTitle = "NetWare Resource Manager"
ProductRESMGRDescription = "NetWare Resource Manager"
ProductRESMGRImagePath = $(SoftwareBinHome)resmgr.sys
ProductRESMGRSvcType = "kernelautostart"
ProductRESMGRSoftType = "service"
ProductRESMGRGroup = "NetWare Services"
ProductRESMGRDependList = {}
ProductRESMGREventFile = $(NetWareEventFile)
ProductRESMGRKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductRESMGRName)"\CurrentVersion"
; RECONNECT: Auto Reconnect service
ProductRECONNECTControl = service
ProductRECONNECTHidden = 0
ProductRECONNECTInstrumentation = FALSE
ProductRECONNECTName = "NetWareAutoReconnect"
ProductRECONNECTDisplayName = "NetWare Auto Reconnect Service"
ProductRECONNECTTitle = "NetWare Auto Reconnect Service"
ProductRECONNECTImagePath = $(SoftwareBinHome)reconsvc.exe
ProductRECONNECTSvcType = "serviceauto"
ProductRECONNECTGroup = ""
ProductRECONNECTDependList = {"NetWareWorkstation"}
ProductRECONNECTEventFile = $(NetWareEventFile)
; VMLID: Auto VMLID service
ProductVMLIDControl = component
ProductVMLIDHidden = 1
ProductVMLIDInstrumentation = FALSE
ProductVMLIDName = "OdiVMLID"
ProductVMLIDDisplayName = "ODI Virtual MLID"
ProductVMLIDTitle = "ODI Virtual MLID"
ProductVMLIDImagePath = $(SoftwareBinHome)vmlid.sys
ProductVMLIDDescription = "ODI Virtual MLID"
ProductVMLIDSvcType = "kernelautostart"
ProductVMLIDSoftType = "service"
ProductVMLIDGroup = "ODI Drivers"
ProductVMLIDDependList = {"+NDIS","+ODI"}
ProductVMLIDEventFile = $(NetWareEventFile)
ProductVMLIDKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductVMLIDName)"\CurrentVersion"
NetRuleVMLIDSoftwareType = "odivmlid nwOdiVMLIDDriver"
NetRuleVMLIDSoftwareUse = "service yes yes"
NetRuleVMLIDSoftwareBindForm = """OdiVMLID"" yes yes container"
NetRuleVMLIDSoftwareClass = {"nwOdiVMLIDDriver basic"}
NetRuleVMLIDSoftwareBindable = {"nwOdiVMLIDDriver ndisDriver non non 100"}
; NWPOPUP: NWPOPUP message service
ProductNWPOPUPControl = service
ProductNWPOPUPHidden = 0
ProductNWPOPUPInstrumentation = FALSE
ProductNWPOPUPName = "NWPopUp"
ProductNWPOPUPDisplayName = "NetWare Message PopUp Service"
ProductNWPOPUPTitle = "NetWare Message PopUp Service"
ProductNWPOPUPImagePath = $(SoftwareBinHome)nwmsgsvc.exe
ProductNWPOPUPSvcType = "serviceauto"
ProductNWPOPUPGroup = ""
ProductNWPOPUPDependList = {"NetWareWorkstation"}
ProductNWPOPUPEventFile = $(NetWareEventFile)
; ODINSUP: ODI over NDIS shim
;ProductODINSUPControl = component
;ProductODINSUPHidden = 1
;ProductODINSUPInstrumentation = TRUE
;ProductODINSUPName = "Odinsup"
;ProductODINSUPDisplayName = "ODI Support for NDIS Protocols Driver"
;ProductODINSUPTitle = "ODI Support for NDIS Protocols Driver"
;ProductODINSUPDescription = "ODI Support for NDIS Protocols Driver"
;ProductODINSUPImagePath = "SystemRoot\system32\drivers\odinsup.sys"
;ProductODINSUPSvcType = "Kerneldisable"
;ProductODINSUPSoftType = "driver"
;ProductODINSUPGroup = "NDIS"
;ProductODINSUPDependList = {"+ODI Drivers"}
;ProductODINSUPEventFile = $(NetWareEventFile)
;ProductODINSUPKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductODINSUPName)"\CurrentVersion"
;
;
;NetRuleODINSUPSoftwareType = "odinsupSys ndisDriver odinsupDriver"
;NetRuleODINSUPSoftwareUse = "driver"
;NetRuleODINSUPSoftwareBindForm = """OdinsupSys"" yes no container"
;NetRuleODINSUPSoftwareClass = {"odinsupDriver basic"}
;NetRuleODINSUPSoftwareBindable = {"odinsupDriver odinsupAdapter non exclusive 100"}
; Provider
ProductProviderName = "NetWare Services"
ProductProviderImagePath = "%SystemRoot%\System32\netware.dll"
ProductProviderDevice = "\Device\NetWareWorkstation"
ProductProviderClass = 3
; Registry key names
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWFSName)"\CurrentVersion"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductNWFSName)"\Parameters"
ServiceNameList = ^(ServiceNames, 1)
ExtendedFunctionList = ^(ExtendedFunctionNames,1)
; referenced by ServiceNameList
[ServiceNames]
SVC_1 = "NWFS"
SVC_2 = "IPXSPX"
SVC_3 = "LSL"
SVC_4 = "RESMGR"
SVC_5 = "ODILOAD"
SVC_6 = "MUP"
SVC_7 = "TDI"
SVC_8 = "SPXAPI"
SVC_9 = "IPXAPI"
SVC_10 = "ROUTE"
SVC_11 = "RECONNECT"
SVC_12 = "VMLID"
SVC_13 = "NWPOPUP"
;SVC_14 = "ODINSUP"
; referenced by ExtendedFunctionList
[ExtendedFunctionNames]
EXFN_1 = "AuthenticationPackage"
EXFN_2 = "NetworkProvider"
;EXFN_3 = "ServiceGroupOrder"
EXFN_4 = "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)
[ExtendedConstants]
SvcList = {"NetWare Services","ODI","ODI Drivers"}
PkgName = "nwv1_0"
ProviderName = "NetWareWorkstation"
NetWarePrintProviderName = "NetWare Print Services"
PrintProvider = "System\CurrentControlSet\Control\Print\Providers"
[IpxSpxConstants]
FrameTypeName = "Frame Type"
CardTypeName = "Card Name"
CardName = ""
CardInstance = "Card Instance"
CardInstanceNum = ""
BindValueName = "bindings"
IpxNtCardInstance = "Nt Card Instance"
[date]
; Now is a list which contains { Sec from 1-1-1970, Year, Month, Day, Hour,
; Minute, Second }
Now = {} ? $(!LIBHANDLE) GetSystemDate
[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]
;
; extract parameters
;
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
set OriginalAddCopy = $($3)
set OriginalDoCopy = $($4)
;
; For now,
;
;
; Check if the language requested is supported
;
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) NOT-IN $(LanguageList)
Return STATUS_NOLANGUAGE
endif
; set LANGUAGE = *( ^(LanguagesSupported, 2), ~(LanguageList, $(!STF_LANGUAGE))
Debug-Output "OEMNPRNW.INF: Language used: LANGUAGE = "$(LANGUAGE)
Debug-Output "1: STF_PLATFORM = "$(!STF_PLATFORM)
Debug-Output "1: STF_PROCESSOR = "$(!STF_PROCESSOR)
detect ProcessorDetect
Debug-Output "2: STF_PROCESSOR = "$(!STF_PROCESSOR)
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
Debug-Output "2: STF_PLATFORM = "$(!STF_PLATFORM)
StartWait
; define all the constants
set-subst LF = "\n"
read-syms GeneralConstants
read-syms FileConstants
read-syms DialogConstants$(!STF_LANGUAGE)
ifstr(i) $(!NTN_Origination) == "NCPA"
set Continue = "OK"
endif
read-syms FileConstants$(!STF_LANGUAGE)
detect date
set-title $(FunctionTitle)
set to = Begin
set from = Begin
;
; Assume all is well.
;
set CommonStatus = STATUS_SUCCESSFUL
Begin = +
Set OEM_ABANDON_SERVICES = {}
Set OEM_ABANDON_COMPONENTS = {}
Set DoReboot = "NO"
Ifstr(i) $(!NTN_InstallMode) == deinstall
set StartLabel = removenetware
else-Ifstr(i) $(!NTN_InstallMode) == update
set StartLabel = upgradenetware
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 = +
;
; First, check whether the same version of the software exists
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NetWareWorkStation" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
;
; Same version already existed in the local machine
; Popup the dialog and ask the user whether he wants to continue
;
CloseRegKey $(KeyProduct)
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", +
"The Novell NetWare Client Services is already installed. "+
"Please remove and then reboot before reinstalling it."
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set CommonStatus = STATUS_USERCANCEL
goto end
endif
;
; Second, check for Microsoft's redirector
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\NWCWorkstation\CurrentVersion" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
;
; Microsoft redirector found
; Tell user to remove it first and reboot
;
Debug-Output "Found Microsoft Redirector."
CloseRegKey $(KeyProduct)
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", +
"The Microsoft NetWare Compatible Workstation is installed."$(LF)+
"Please remove it and then reboot the system to install the"$(LF)+
" Novell NetWare Workstation."
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set CommonStatus = STATUS_USERCANCEL
goto end
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) $(DoCopy) == "YES"
;
; Get source location
;
; Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
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
StartWait
install "Install-NetWare-Dir"
install "Install-Option"
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 OEM_ABANDON_ON = TRUE
;
; Install all enabled services mentioned in the ServiceNameList
;
ForListDo $(ServiceNameList)
Set SvcOpt = $($)
; 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
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), +
$(STF_CONTEXTINFNAME), +
$(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)Title)},+
{Description,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)Description)},+
{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
EndForListDo
addextendedfunctions = +
; Set Version number
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Novell" $(MAXIMUM_ALLOWED) SoftwareNovell
Ifstr(i) $(SoftwareNovell) != ""
SetRegValue $(SoftwareNovell) {"CurrentVersion",$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)$(ProductMinorVersion)}
CloseRegKey $(SoftwareNovell)
Endif
ForListDo $(ExtendedFunctionList)
Debug-Output "OEMNPRNW.INF: extended function: "$($)
Shell "" InstallEx-$($)
StartWait
EndForListDo
;====================================================
; VIPXVDD Added
;====================================================
vipxsection = +
set ValueName = "IRQ"
set ValueData = "10"
set KeyValueList = {$(ValueName),$(NoTitle),$(!REG_VT_DWORD),$(ValueData)}
set ProductName = "VipxVDD"
set ProductVersion = "CurrentVersion"
set VIPXVDDManufactureBase = $(!NTN_SoftwareBase)"\"$(Manufacturer)
set VIPXVDDProductBase = $(VIPXVDDManufactureBase)"\"$(ProductName)
set VIPXVDDVersion = $(VIPXVDDProductBase)"\"$(ProductVersion)
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell
OpenRegKey $(!REG_H_LOCAL) "" $(VIPXVDDManufactureBase) $(!REG_KEY_ALL_ACCESS) MFBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(VIPXVDDManufactureBase)
;HKEY_LOCAL_MACHINE\SOFTWARE
OpenRegKey $(REG_H_LOCAL) "" $(NTN_SoftwareBase) $(REG_KEY_ALL_ACCESS) SFTBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NTN_SoftwareBase)"'"
goto fatalregistry
endif
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell
CreateRegKey $(SFTBaseKey) {$(Manufacturer),$(NoTitle),GenericClass} "" $(REG_KEY_ALL_ACCESS) $(REG_OPT_NONVOL) MFBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(NTN_SoftwareBase)"'"
goto fatalregistry
endif
CloseRegKey $(SFTBaseKey)
endif
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell\VipxVDD
OpenRegKey $(!REG_H_LOCAL) "" $(VIPXVDDProductBase) $(!REG_KEY_ALL_ACCESS) ProdBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(VIPXVDDProductBase)"'"
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell\VipxVDD
CreateRegKey $(MFBaseKey) {$(ProductName),$(NoTitle),GenericClass} "" $(REG_KEY_ALL_ACCESS) $(REG_OPT_NONVOL) ProdBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(VIPXVDDProductBase)"'"
goto fatalregistry
endif
endif
CloseRegKey $(MFBaseKey)
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell\VipxVDD\[CurrentVersion]
OpenRegKey $(!REG_H_LOCAL) "" $(VIPXVDDVersion) $(!REG_KEY_ALL_ACCESS) VerBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(VIPXVDDVersion)"'"
;HKEY_LOCAL_MACHINE\SOFTWARE\Novell\VipxVDD\['CurrentVersion']
CreateRegKey $(ProdBaseKey) {$(ProductVersion),$(NoTitle),GenericClass} "" $(REG_KEY_ALL_ACCESS) $(REG_OPT_NONVOL) VerBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(VIPXVDDVersion)"'"
goto fatalregistry
endif
endif
CloseRegKey $(ProdBaseKey)
CloseRegKey $(VerBaseKey)
; The key opened by CreateRegKey does not have the rights that it should
; That is why it has been closed and then reopened. This appears to be a bug in
; CreateRegKey stuff.
OpenRegKey $(!REG_H_LOCAL) "" $(VIPXVDDVersion) $(!REG_KEY_ALL_ACCESS) VerBaseKey
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(VIPXVDDVersion)"'"
goto fatalregistry
else
Debug-Output "Writing '"$(VIPXVDDVersion)": "$(ValueName)" = "$(ValueData)"'"
SetRegValue $(VerBaseKey) $(KeyValueList)
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(VIPXVDDVersion)": "$(ValueName)" = "$(ValueData)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
CloseRegKey $(VerBaseKey)
endif
OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion\NWCS" $(MAXIMUM_ALLOWED) KeyProduct
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Can't open NWCS - Will create it"
OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion" $(MAXIMUM_ALLOWED) CurrentVersion
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Can't open Software\Microsoft\Windows NT\CurrentVersion"
goto fatalregistry
Endif
CreateRegKey $(CurrentVersion) {"NWCS",$(NoTitle),GenericClass} "" $(REG_KEY_ALL_ACCESS) $(REG_OPT_NONVOL) NewProduct
ifint $(RegLastError) != $(REG_ERROR_SUCCESS)
CloseRegKey $(CurrentVersion)
Debug-Output "FATAL Registry Error: Error Creating Key 'NWCS'"
goto fatalregistry
Else
CloseRegKey $(CurrentVersion)
CloseRegKey $(NewProduct)
OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion\NWCS" $(MAXIMUM_ALLOWED) KeyProduct
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Can't open NWCS after creating it- Problem"
goto fatalregistry
Endif
Endif
Endif
SetRegValue $(KeyProduct) {"NwcsInstalled",$(NoTitle),$(!REG_VT_SZ),"1"}
CloseRegKey $(KeyProduct)
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\WOW" $(MAXIMUM_ALLOWED) WowKey
ifstr(i) $(WowKey) != ""
GetRegValue $(WowKey),"KnownDLLS", KnownDLLsInfo
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
;====================================================
; VIPXVDD -END
;====================================================
;====================================================
; NLS Added
;====================================================
nlssection = +
set ValueName = "NWLanguage"
set ValueData = "ENGLISH"
set KeyValueList = {$(ValueName),$(NoTitle),$(REG_SZ),$(ValueData)}
set NTN_UserSoftwareBase = "Software"
set ProductName = "NetWare"
set NLSProductBase = $(NTN_UserSoftwareBase)"\"$(ProductName)
set NLSGroup = "Parameters"
set NLSParameters = $(NLSProductBase)"\"$(NLSGroup)
Debug-Output "NTN_UserSoftwareBase = "$(NTN_UserSoftwareBase)
Debug-Output "ProductName = "$(ProductName)
Debug-Output "NLSProductBase = "$(NLSProductBase)
Debug-Output "NLSGroup = "$(NLSGroup)
Debug-Output "NLSParameters = "$(NLSParameters)
;HKEY_CURRENT_USER\Software\NetWare
OpenRegKey $(!REG_H_CUSER) "" $(NLSProductBase) $(!REG_KEY_ALL_ACCESS) NWBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output $(RegLastError)
Debug-Output "Opening Software Key '"$(NTN_UserSoftwareBase)"'"
;HKEY_CURRENT_USER\Software
OpenRegKey $(!REG_H_CUSER) "" $(NTN_UserSoftwareBase) $(!REG_KEY_ALL_ACCESS) SFTBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error("$(RegLastError)"): Error Opening Key '"$(NTN_UserSoftwareBase)"'"
goto fatalregistry
endif
;HKEY_CURRENT_USER\Software\NetWare
Debug-Output "Creating Software Key '"$(NLSProductBase)"'"
Debug-Output "Product Name = '"$(ProductName)"'"
CreateRegKey $(SFTBaseKey) {$(ProductName),$(NoTitle),GenericClass} "" $(!REG_KEY_ALL_ACCESS) $(!REG_OPT_NONVOL) NWBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error("$(RegLastError)"): Error Creating Key '"$(NLSProductBase)"'"
goto fatalregistry
endif
CloseRegKey $(SFTBaseKey)
endif
;HKEY_CURRENT_USER\Software\NetWare\Parameters
OpenRegKey $(!REG_H_CUSER) "" $(NLSParameters) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(NLSParameters)"'"
;HKEY_CURRENT_USER\Software\NetWare\Parameters
CreateRegKey $(NWBaseKey) {$(NLSGroup),$(NoTitle),GenericClass} "" $(!REG_KEY_ALL_ACCESS) $(!REG_OPT_NONVOL) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(NLSCurrent)"'"
goto fatalregistry
endif
endif
CloseRegKey $(NWBaseKey)
CloseRegKey $(ParmBaseKey)
; The key opened by CreateRegKey does not have the rights that it should
; That is why it has been closed and then reopened. This appears to be a bug in
; CreateRegKey stuff.
OpenRegKey $(!REG_H_CUSER) "" $(NLSParameters) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NLSParameters)"'"
goto fatalregistry
else
Debug-Output "Writing '"$(NLSParameters)": "$(ValueName)" = "$(ValueData)"'"
SetRegValue $(ParmBaseKey) $(KeyValueList)
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NLSParameters)": "$(ValueName)" = "$(ValueData)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
endif
CloseRegKey $(ParmBaseKey)
;====================================================
; NLS -END
;====================================================
;goto end
;====================================================
; PERFORMANCE Added
;====================================================
perfsection = +
set ValueName1 = "Close"
set ValueData1 = "NwPfCloseRedirPerformanceData"
set ValueName2 = "Collect"
set ValueData2 = "NwPfCollectRedirPerformanceData"
set ValueName3 = "Open"
set ValueData3 = "NwPfOpenRedirPerformanceData"
set ValueName4 = "Library"
set ValueData4 = "Nwpfctrs.dll"
set NwProductName1 = "NetWareWorkstation"
set NwProductName2 = "LSL"
set NwProductName3 = "OdiLoad"
set NwGroup = "Performance"
set NwProductBase1 = $(!NTN_ServiceBase)"\"$(NwProductName1)
set NwProductBase2 = $(!NTN_ServiceBase)"\"$(NwProductName2)
set NwProductBase3 = $(!NTN_ServiceBase)"\"$(NwProductName3)
set NwParameters1 = $(NwProductBase1)"\"$(NwGroup)
set NwParameters2 = $(NwProductBase2)"\"$(NwGroup)
set NwParameters3 = $(NwProductBase3)"\"$(NwGroup)
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetWareWorkstation
OpenRegKey $(!REG_H_LOCAL) "" $(NwProductBase1) $(!REG_KEY_ALL_ACCESS) NWBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwProductBase1)"'"
goto fatalregistry
endif
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters1) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(NwParameters1)"'"
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Performance
CreateRegKey $(NWBaseKey) {$(NwGroup),$(NoTitle),GenericClass} "" $(!REG_KEY_ALL_ACCESS) $(!REG_OPT_NONVOL) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(NwParameters1)"'"
goto fatalregistry
endif
endif
CloseRegKey $(NWBaseKey)
CloseRegKey $(ParmBaseKey)
; The key opened by CreateRegKey does not have the rights that it should
; That is why it has been closed and then reopened. This appears to be a bug in
; CreateRegKey stuff.
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters1) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwParameters1)"'"
goto fatalregistry
else
Debug-Output "Writing '"$(NwParameters1)": "$(ValueName1)" = "$(ValueData1)"'"
SetRegValue $(ParmBaseKey) {$(ValueName1),$(NoTitle),$(!REG_VT_SZ),$(ValueData1)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters1)": "$(ValueName1)" = "$(ValueData1)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters1)": "$(ValueName2)" = "$(ValueData2)"'"
SetRegValue $(ParmBaseKey) {$(ValueName2),$(NoTitle),$(!REG_VT_SZ),$(ValueData2)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters1)": "$(ValueName2)" = "$(ValueData2)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters1)": "$(ValueName3)" = "$(ValueData3)"'"
SetRegValue $(ParmBaseKey) {$(ValueName3),$(NoTitle),$(!REG_VT_SZ),$(ValueData3)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters1)": "$(ValueName3)" = "$(ValueData3)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters1)": "$(ValueName4)" = "$(ValueData4)"'"
SetRegValue $(ParmBaseKey) {$(ValueName4),$(NoTitle),$(!REG_VT_SZ),$(ValueData4)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters1)": "$(ValueName4)" = "$(ValueData4)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
endif
CloseRegKey $(ParmBaseKey)
;==================================================
set ValueData1 = "NwPfCloseLSLPerformanceData"
set ValueData2 = "NwPfCollectLSLPerformanceData"
set ValueData3 = "NwPfOpenLSLPerformanceData"
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LSL
OpenRegKey $(!REG_H_LOCAL) "" $(NwProductBase2) $(!REG_KEY_ALL_ACCESS) NWBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwProductBase2)"'"
goto fatalregistry
endif
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LSL\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters2) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(NwParameters2)"'"
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LSL\Performance
CreateRegKey $(NWBaseKey) {$(NwGroup),$(NoTitle),GenericClass} "" $(!REG_KEY_ALL_ACCESS) $(!REG_OPT_NONVOL) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(NwParameters2)"'"
goto fatalregistry
endif
endif
CloseRegKey $(NWBaseKey)
CloseRegKey $(ParmBaseKey)
; The key opened by CreateRegKey does not have the rights that it should
; That is why it has been closed and then reopened. This appears to be a bug in
; CreateRegKey stuff.
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LSL\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters2) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwParameters2)"'"
goto fatalregistry
else
Debug-Output "Writing '"$(NwParameters2)": "$(ValueName1)" = "$(ValueData1)"'"
SetRegValue $(ParmBaseKey) {$(ValueName1),$(NoTitle),$(!REG_VT_SZ),$(ValueData1)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters2)": "$(ValueName1)" = "$(ValueData1)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters2)": "$(ValueName2)" = "$(ValueData2)"'"
SetRegValue $(ParmBaseKey) {$(ValueName2),$(NoTitle),$(!REG_VT_SZ),$(ValueData2)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters2)": "$(ValueName2)" = "$(ValueData2)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters2)": "$(ValueName3)" = "$(ValueData3)"'"
SetRegValue $(ParmBaseKey) {$(ValueName3),$(NoTitle),$(!REG_VT_SZ),$(ValueData3)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters2)": "$(ValueName3)" = "$(ValueData3)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters2)": "$(ValueName4)" = "$(ValueData4)"'"
SetRegValue $(ParmBaseKey) {$(ValueName4),$(NoTitle),$(!REG_VT_SZ),$(ValueData4)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters2)": "$(ValueName4)" = "$(ValueData4)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
endif
CloseRegKey $(ParmBaseKey)
;==================================================
set ValueData1 = "NwPfCloseODIPerformanceData"
set ValueData2 = "NwPfCollectODIPerformanceData"
set ValueData3 = "NwPfOpenODIPerformanceData"
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OdiLoad
OpenRegKey $(!REG_H_LOCAL) "" $(NwProductBase3) $(!REG_KEY_ALL_ACCESS) NWBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwProductBase3)"'"
goto fatalregistry
endif
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OdiLoad\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters3) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "Creating Software Key '"$(NwParameters3)"'"
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OdiLoad\Performance
CreateRegKey $(NWBaseKey) {$(NwGroup),$(NoTitle),GenericClass} "" $(!REG_KEY_ALL_ACCESS) $(!REG_OPT_NONVOL) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Creating Key '"$(NwParameters3)"'"
goto fatalregistry
endif
endif
CloseRegKey $(NWBaseKey)
CloseRegKey $(ParmBaseKey)
; The key opened by CreateRegKey does not have the rights that it should
; That is why it has been closed and then reopened. This appears to be a bug in
; CreateRegKey stuff.
;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OdiLoad\Performance
OpenRegKey $(!REG_H_LOCAL) "" $(NwParameters3) $(!REG_KEY_ALL_ACCESS) ParmBaseKey
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "FATAL Registry Error: Error Opening Key '"$(NwParameters3)"'"
goto fatalregistry
else
Debug-Output "Writing '"$(NwParameters3)": "$(ValueName1)" = "$(ValueData1)"'"
SetRegValue $(ParmBaseKey) {$(ValueName1),$(NoTitle),$(!REG_VT_SZ),$(ValueData1)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters3)": "$(ValueName1)" = "$(ValueData1)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters3)": "$(ValueName2)" = "$(ValueData2)"'"
SetRegValue $(ParmBaseKey) {$(ValueName2),$(NoTitle),$(!REG_VT_SZ),$(ValueData2)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters3)": "$(ValueName2)" = "$(ValueData2)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters3)": "$(ValueName3)" = "$(ValueData3)"'"
SetRegValue $(ParmBaseKey) {$(ValueName3),$(NoTitle),$(!REG_VT_SZ),$(ValueData3)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters3)": "$(ValueName3)" = "$(ValueData3)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
Debug-Output "Writing '"$(NwParameters3)": "$(ValueName4)" = "$(ValueData4)"'"
SetRegValue $(ParmBaseKey) {$(ValueName4),$(NoTitle),$(!REG_VT_SZ),$(ValueData4)}
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "ERROR Writing '"$(NwParameters3)": "$(ValueName4)" = "$(ValueData4)"'"
Debug-Output " 'RegLastError' = "$(RegLastError)$(LF)
goto fatalregistry
endif
endif
CloseRegKey $(ParmBaseKey)
; Replaced the next bunch of lines with a function call to the
; Nwsetup.dll library
; RunProgram exitCode "" "" lodctr.exe lslstats.ini
; ifstr $(exitCode) == "ERROR"
; Debug-Output "Error running program 'lodctr.exe lslstats.ini'"
; goto fatalregistry
; endif
; RunProgram exitCode "" "" lodctr.exe rdrstats.ini
; ifstr $(exitCode) == "ERROR"
; Debug-Output "Error running program 'lodctr.exe rdrstats.ini'"
; goto fatalregistry
; endif
; RunProgram exitCode "" "" lodctr.exe odistats.ini
; ifstr $(exitCode) == "ERROR"
; Debug-Output "Error running program 'lodctr.exe odistats.ini'"
; goto fatalregistry
; endif
StartWait
LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
LibraryProcedure GUIResult $(NwLibHandle) NWLoadPerformanceCounters
FreeLibrary $(NwLibHandle)
EndWait
;====================================================
; PERFORMANCE -END
;====================================================
;
; Add ODINSUP hidden
;
Set OldInstallMode = $(!NTN_InstallMode)
Set !NTN_InstallMode = install
Shell "ODINSUP.inf" InstallOption $(!STF_LANGUAGE) "ODINSUP" "" NO NO NO
Set !NTN_InstallMode = $(OldInstallMode)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
Endif
; set ProductHardwareName = "ODINSUP"
; set Manufacturer = "Novell"
; set ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductHardwareName)"\CurrentVersion"
;
; ; add ODINSUP at board two or later
; Shell "UTILITY.INF", AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName),"","","2"
; ifint $($R4) != -1
; Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
; endif
; ifint $($ShellCode) != $(!SHELL_CODE_OK)
; Debug-Output "ODINSUP: AddHardwareComponent Shell error "$($ShellCode)
; goto ShellCodeError
; endif
; set RegistryErrorIndex = $($R0)
; Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
; EndWait
; Debug-Output "ODINSUP: AddHardwareComponent Registry error "$(RegistryErrorIndex)
; CloseRegKey $($R1)
; CloseRegKey $($R2)
; CloseRegKey $($R3)
; goto fatalregistry
; endif
; set KeyParameters = $($R3)
; set KeyAdapterRules = $($R2)
; set AdapterNumber = $($R4)
; set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
; {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(Option)Title)},+
; {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
; {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
; {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
; {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
; Shell "UTILITY.INF", AddValueList, $($R1), $(NewValueList)
; ifint $($ShellCode) != $(!SHELL_CODE_OK)
; Debug-Output "ODINSUP: AddValueList ShellCode error "$($ShellCode)
; goto ShellCodeError
; endif
; CloseRegKey $($R1)
; set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
; set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
; set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
; {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
; {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
; {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}, +
; {Infname ,$(NoTitle),$(!REG_VT_SZ),$(STF_CONTEXTINFNAME)}}
; Shell "UTILITY.INF", AddValueList, $(KeyAdapterRules), $(NewValueList)
; ifint $($ShellCode) != $(!SHELL_CODE_OK)
; Debug-Output "ODINSUP: AddValueList ShellCode error "$($ShellCode)
; goto ShellCodeError
; endif
; set RegistryErrorIndex = $($R0)
; Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
; EndWait
; Debug-Output "ODINSUP: AddValueList Registry error "$(RegistryErrorIndex)
; CloseRegKey $(KeyParameters)
; CloseRegKey $(KeyAdapterRules)
; goto fatalregistry
; endif
;
; CloseRegKey $(KeyAdapterRules)
;
;
install "CreateNetWareGroup"
;
; Try to detect the ndis driver that the lan man services are using
;
Shell "NWSUBS.INF" NwDetectNdisAdapter $(SrcDir)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "OEMNPRNW.INF: NwDetectNdisAdapter ShellCode error "$($ShellCOde)
goto ShellCodeError
endif
goto successful
;-----------------------------------------------
; Configure Browser section
;-----------------------------------------------
configurenetware = +
Debug-Output "OEMNPRNW.INF: Configure NetWare "$(!NTN_RegBase)
set CommonStatus = STATUS_USERCANCEL
LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\english\nwnthelp.hlp" $(!MinimumID) $(!MaximumID)
Ifstr(i) $(!NTN_RegBase) == $(ProductNWFSKeySoftware)
; Configure the NetWare Workstation.
Debug-Output "OEMNPRNW.INF: Configure NetWare Workstation"
StartWait
set HelpContext = $(IDH_NETWAREWRKSTATIONPARMS)
LibraryProcedure LibResult $(NwLibHandle) NetWareWorkstationDialog
Debug-Output "LibResult = "$(LibResult)
ifstr(i) $(LibResult) == "CONTINUE"
Debug-Output "OK hit"
Set DoReboot = "YES"
Set CommonStatus = STATUS_REBOOT
endif
else-ifstr(i) $(!NTN_RegBase) == $(ProductIPXSPXKeySoftware)
; Configure Ipx/Spx.
Shell "" ConfigureIpxSpx $(NwLibHandle) YES
set CommonStatus = $($R0)
set DoReboot = $($R1)
else-ifstr(i) $(!NTN_RegBase) == $(ProductODILOADKeySoftware)
; Configure OdiLoad.
Debug-Output "OEMNPRNW.INF: Configure OdiLoad"
else-ifstr(i) $(!NTN_RegBase) == $(ProductRESMGRKeySoftware)
; Configure Resmgr.
Debug-Output "OEMNPRNW.INF: Configure Resmgr"
Set KeyName = "SYSTEM\CurrentControlSet\Services\"$(Product$(Option)Name)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(MAXIMUM_ALLOWED) KeyParameters
Ifstr(i) $(KeyParameters) != ""
set KeyValueList = ""
GetRegValue $(KeyParameters) "Communication Buffers" KeyValueList
set CommunicationBuffers = *($(KeyValueList), 4)
read-syms "ResMgrDlg"$(!STF_LANGUAGE)
ui start "ResMgrDLG" $(NwLibHandle)
StartWait
ifstr(i) $(DLGEVENT) == "CONTINUE"
Debug-Output "OK hit"
set CommunicationBuffers = *($(EditTextOut), 1)
ifint $(CommunicationBuffers) < 1
set CommunicationBuffers = 1
else-ifint $(CommunicationBuffers) > 128
set CommunicationBuffers = 128
endif
set KeyValueList = {"Communication Buffers",$(NoTitle),$(!REG_VT_DWORD),$(CommunicationBuffers)}
SetRegValue $(KeyParameters) $(KeyValueList)
FlushRegKey $(KeyParameters)
Set DoReboot = "YES"
Set CommonStatus = STATUS_REBOOT
endif
CloseRegKey $(KeyParameters)
ui pop 1
EndWait
endif
Endif
FreeLibrary $(NwLibHandle)
goto successful
;-----------------------------------------------
; Binding section
;-----------------------------------------------
bindnetware =+
Debug-Output "OEMNPRNW.INF: Bind NetWare"
LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\english\nwnthelp.hlp" $(!MinimumID) $(!MaximumID)
;
; Check if NWIP installed
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
GetRegValue $(KeyProduct) "DeleteFlag" DeleteFlagList
Set DeleteFlag = *($(DeleteFlagList), 4)
Debug-Output "DeleteFlag = "$(DeleteFlag)
Ifint $(DeleteFlag) != 1
Set NWIPInstalled = YES
Debug-Output "OEMNPRNW.INF: bindnetware, NWIP is installed"
Else
Set NWIPInstalled = ""
Debug-Output "OEMNPRNW.INF: bindnetware, NWIP NOT installed"
Endif
CloseRegKey $(KeyProduct)
Endif
Shell "NWSUBS.INF" 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)
Shell "" ConfigureIpxSpx $(NwLibHandle) NO
Set GroupOrderToFollow = "file system"
;
; Is there a ODI driver installed?
;
ifint $(NumberOdiAdapters) > 0
Debug-Output "Found Odi Adapters"
;
; Turn on OdiLoad
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\OdiLoad" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
SetRegValue $(KeyProduct) $(KeyValueList)
CloseRegKey $(KeyProduct)
Endif
;
; Turn on ODINSUP
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Odinsup" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
SetRegValue $(KeyProduct) $(KeyValueList)
CloseRegKey $(KeyProduct)
Endif
;
; Set the card for ODINSUP to bind to
;
read-syms OdiNSupVars
read-syms OdiVars
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\ODINSUP"$(ODINSUPCardNumber)"\Parameters" $(MAXIMUM_ALLOWED) KeyOdiNSupParameters
Ifstr(i) $(KeyOdiNSupParameters) != ""
Ifint $(NumberOdiAdapters) > 1
;
; More than one ODI adapter is installed so allow
; the user to select which one to bind to.
;
Ifstr(i) $(OdiCurBindCardName) != ""
Debug-Output "NWSUBS.INF: OdiCurBindCardName = "$(OdiCurBindCardName)
Set DefaultOdiTitle = *($(OdiTitleList), ~($(OdiCardList), $(OdiCurBindCardName)))
Endif
Ifstr(i) $(DefaultOdiTitle) == ""
Set DefaultOdiTitle = *($(OdiTitleList), 1)
Endif
Debug-Output "NWSUBS.INF: DefaultOdiTitle = "$(DefaultOdiTitle)
read-syms OdinsupDlg$(!STF_LANGUAGE)
ui start "ODINSUP" $(NwLibHandle)
ui pop 1
ifstr(i) $(DLGEVENT) == "BACK"
set AdapterSelected = ""
else
Set AdapterSelected = *($(DefaultOdiTitle), 1)
endif
Debug-Output "NWSUBS.INF: ODINSUP AdapterSelected = "$(AdapterSelected)
Ifstr(i) $(AdapterSelected) == ""
Debug-Output "NWSUBS.INF: Cancel Selected"
Set CardToBindTo = *($(OdiProductNameList), 1)
Set OdiCardInstance = 1
Else
Set CardToBindTo = *($(OdiProductNameList), ~($(OdiTitleList), $(AdapterSelected)))
Debug-Output "CardToBindTo = "$(CardToBindTo)
Set NtAdapterNumber = *($(OdiCardList), ~($(OdiTitleList), $(AdapterSelected)))
Debug-Output "NtAdapterNumber = "$(NtAdapterNumber)
Set NtAdapterKeyName = $(NetworkCardsKeyName)"\"$(NtAdapterNumber)
OpenRegKey $(!REG_H_LOCAL) "" $(NtAdapterKeyName) $(MAXIMUM_ALLOWED) KeyNtAdapter
Ifstr(i) $(KeyNtAdapter) != ""
GetRegValue $(KeyNtAdapter),"ServiceName", ServiceNameList
Set ServiceName = *($(ServiceNameList), 4)
CloseRegKey $(KeyNtAdapter)
; Open the lan man card's service\Parameters.
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters" $(MAXIMUM_ALLOWED) KeyService
ifstr(i) $(KeyService) == ""
Debug-Output "NWSUBS.INF: NwSetIpxCard, Can't open "$(ServiceName)
Else
; Get the OdiLoad link.
;
GetRegValue $(KeyService) $(OdiLinkName) CardInstanceList
Set CardInstanceName = *($(CardInstanceList), 4)
CloseRegKey $(KeyService)
OpenRegKey $(!REG_H_LOCAL) "" $(OdiModuleName)"\"$(CardInstanceName) $(MAXIMUM_ALLOWED) KeyOdiCard
Ifstr(i) $(KeyOdiCard) != ""
GetRegValue $(KeyOdiCard) "BoardInstance" BoardInstanceList
Set OdiCardInstance = *($(BoardInstanceList), 4)
Debug-Output "2: Selected OdiCardInstance = "$(OdiCardInstance)
CloseRegKey $(KeyOdiCard)
Endif
Endif
Else
Debug-Output "Can't open "$(NtAdapterKeyName)
Endif
Endif
Else
;
; only one ODI adapter so use it.
;
Set CardToBindTo = *($(OdiProductNameList), 1)
Debug-Output "NWSUBS.INF: ODISUP bound to "$(CardToBindTo)
Endif
SetRegValue $(KeyOdiNSupParameters) {$(OdiNSupCardName),$(NoTitle),$(!REG_VT_SZ),$(CardToBindTo)}
Ifstr(i) $(OdiCardInstance) == ""
Debug-Output "NWSUBS.INF: NwSetIpxCard, OdiCardInstance set to default."
Set OdiCardInstance = "1"
Endif
SetRegValue $(KeyOdiNSupParameters) {$(OdiNSupCardInstance),$(NoTitle),$(!REG_VT_DWORD),$(OdiCardInstance)}
CloseRegKey $(KeyOdiNSupParameters)
Endif
Else
;
; Turn off OdiLoad
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\OdiLoad" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
SetRegValue $(KeyProduct) $(KeyValueList)
CloseRegKey $(KeyProduct)
Endif
;
; Turn off ODINSUP
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Odinsup" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
SetRegValue $(KeyProduct) $(KeyValueList)
CloseRegKey $(KeyProduct)
Endif
Endif
Ifint $(NumberNdisAdapters) > 0
;
; Ndis drivers installed
;
Set GroupOrderToFollow = "NDIS"
Endif
;
; Is NWIP installed
;
Ifstr $(NWIPInstalled) == YES
Set GroupOrderToFollow = "file system"
;
; Turn off VMLID
;
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\OdiVMLID" $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
SetRegValue $(KeyProduct) $(KeyValueList)
CloseRegKey $(KeyProduct)
Endif
;
; Hide Ipx
;
set IpxHidden = 1
;
; Check to see if DHCP is installed
;
Debug-Output "OEMNPRNW.INF: Check to see if DHCP is installed"
set DependOnList = {"Tcpip"}
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\DHCP" $(MAXIMUM_ALLOWED) KeyDHCP
Ifstr $(KeyDHCP) != $(KeyNull)
;
; Check to see if the service is set to start
;
GetRegValue $(KeyDHCP) "Start" StartList
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Set StartValue = *($(StartList), 4)
Ifint $(StartValue) < 4
;
; Make NWIP depend on the service DHCP
;
Debug-Output "OEMNPRNW.INF: Make NWIP depend on DHCP service"
set DependOnList = {"DHCP"}
Endif
Endif
CloseRegKey $(KeyDHCP)
Endif
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP" $(MAXIMUM_ALLOWED) KeyNWIP
Ifstr $(KeyNWIP) != $(KeyNull)
SetRegValue $(KeyNWIP) {"DependOnService",$(NoTitle),$(!REG_VT_MULTI_SZ),$(DependOnList)}
CloseRegKey $(KeyNWIP)
Endif
Else
;
; Make sure Ipx is NOT hidden
;
set IpxHidden = 0
Endif
OpenRegKey $(!REG_H_LOCAL) "" $(ProductIPXSPXKeySoftware) $(MAXIMUM_ALLOWED) KeyIpxSoftware
Ifstr(i) $(KeyIpxSoftware) == ""
Debug-Output "OEMNPRNW.INF: Error opening "$(ProductIPXSPXKeyName)
Else
SetRegValue $(KeyIpxSoftware) {"Hidden",$(NoTitle),$(!REG_VT_DWORD),$(IpxHidden)}
CloseRegKey $(KeyIpxSoftware)
Endif
;
; Set the group Order
;
Shell "" InstallEx-ServiceGroupOrder $(GroupOrderToFollow)
Ifstr(i) $($R0) != NO_ERROR
set CommonStatus = STATUS_NO_EFFECT
Endif
FreeLibrary $(NwLibHandle)
goto end
;-----------------------------------------------
; Removenetware section
;-----------------------------------------------
removenetware = +
StartWait
LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
LibraryProcedure GUIResult $(NwLibHandle) NWCleanUpNetWare
FreeLibrary $(NwLibHandle)
StartWait
goto end
;-----------------------------------------------
; Upgrade Software section
;-----------------------------------------------
upgradenetware = +
Set CanUpgrade = 0
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Novell" $(MAXIMUM_ALLOWED) SoftwareNovell
Ifstr(i) $(SoftwareNovell) != ""
GetRegValue $(SoftwareNovell) "CurrentVersion" CurrentVersion
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
Set ProductVersion = *($(CurrentVersion), 4)
ifint $(ProductVersion) > 100
set CanUpgrade = 1
Endif
Endif
CloseRegKey $(SoftwareNovell)
Endif
ifint $(CanUpgrade) == 0
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", +
"The Update button is not supported with previous beta versions. "+
"Please remove the NetWare Services for Windows NT and "+
"then reboot before reinstalling it."
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
goto end
endif
LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(SrcDir)
ifstr(i) $(STATUS) != "ERROR"
set SrcDir = $(STATUS)
Endif
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Novell\"$(ProductNWFSName)"\CurrentVersion\NetRules" $(MAXIMUM_ALLOWED) SoftwareNovell
Ifstr(i) $(SoftwareNovell) != ""
GetRegValue $(SoftwareNovell) "InfName" CurrentName
Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS)
set !UG_Filename = *($(CurrentName), 4)
Endif
CloseRegKey $(SoftwareNovell)
Endif
; Novell.cpl changed to Nwcpl.cpl so delete old name.
LibraryProcedure Status1, $(!LIBHANDLE), DelFile, $(!STF_WINDOWSSYSPATH)"\novell.cpl"
LibraryProcedure Status1, $(!LIBHANDLE), DelFile, $(!STF_WINDOWSSYSPATH)"\nls\english\novellr.dll"
Install "Install-Update"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
goto fatal
endif
LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
LibraryProcedure GUIResult $(NwLibHandle) RemoveFilefromAutoexec "%SystemRoot%\system32\autoexec.nt" "lh %SystemRoot%\system32\vipx.exe"
LibraryProcedure GUIResult $(NwLibHandle) NWUnLoadPerformanceCounters
LibraryProcedure GUIResult $(NwLibHandle) NWLoadPerformanceCounters
FreeLibrary $(NwLibHandle)
set DoReboot = "YES"
;
; 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
; Debug-Msg "Error Error Bad DLGEVENT"
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 = "Error: "$(FunctionTitle)
set STF_MB_TEXT = "Shell Code Error "$(TWM_ShellErrorTitle)
set STF_MB_TYPE = 1
set STF_MB_ICON = 3
set STF_MB_DEF = 1
ui start "Error Message"
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
goto removenetware
endif
goto end
end = +
ifstr(i) $(DoReboot) == "YES"
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" +
"The changes you have made will not take effect until the computer is restarted."
endif
EndWait
goto term
term = +
Return $(CommonStatus)
;
; Subroutines
;
;*************************************************************************
;
; SECTION: ConfigureIpxSpx
;
; PURPOSE: configure Ipx / Spx
;
; ARGUMENTS: $0 handle the NetWare setup library
; $1 DoConfig (always display dialog ?)
;
; RETURNS: $R0 CommonStatus
; $R1 DoReboot
;
; REFERENCES:
;
; MODIFIES: Registry bindings and parameters for ipx/spx
;
;
;*************************************************************************
[ConfigureIpxSpx]
set NwLibHandle = $($0)
set DoConfig = $($1)
Debug-Output "OEMNPRNW.INF: Configure IpxSpx"
read-syms GeneralConstants
read-syms FileConstants
read-syms IpxSpxConstants
read-syms DialogConstants$(!STF_LANGUAGE)
set AutoDetect = "AUTO DETECT"
set ETHERNETFrameList = {$(AutoDetect),"ETHERNET_802.2","ETHERNET_802.3","ETHERNET_II","ETHERNET_SNAP"}
set TOKEN-RINGFrameList = {$(AutoDetect),"TOKEN-RING","TOKEN-RING_SNAP"}
set FDDIFrameList = {$(AutoDetect),"FDDI_802.2","FDDI_SNAP"}
set NWIPFrameList = {"ETHERNET_II"}
set UNKNOWNFrameList = {$(AutoDetect)}
Shell $(NwSubsInf) GetIpxCardList
set NetworkCardList = $($R0)
set MediaTypeList = $($R1)
set DriverTypeList = $($R2)
set NumberOfNetworkCards = $($R3)
set ProductNameList = $($R4)
set ServiceNameList = $($R5)
set NWIPInstalled = $($R6)
set CardNumberList = $($R7)
Debug-Output "NetworkCardList = "$(NetworkCardList)
Debug-Output "MediaTypeList = "$(MediaTypeList)
Debug-Output "DriverTypeList = "$(DriverTypeList)
Debug-Output "NumberOfNetworkCards = "$(NumberOfNetworkCards)
Debug-Output "ProductNameList = "$(ProductNameList)
Debug-Output "ServiceNameList = "$(ServiceNameList)
Debug-Output "NWIPInstalled = "$(NWIPInstalled)
Debug-Output "CardNumberList = "$(CardNumberList)
set InstanceNumberList = {}
set CardDriverInstanceList = {}
ForListDo $(ProductNameList)
set ProductName = $($)
set DriverType = *($(DriverTypeList), $(#))
set CardDriverIndex = $(ProductName)$(DriverType)
set-add $(CardDriverIndex) = $($(CardDriverIndex)), 1
set InstanceNumberList = >($(InstanceNumberList), $($(CardDriverIndex)))
set CardDriverInstance = $(ProductName)$(DriverType)$($(CardDriverIndex))
set CardDriverInstanceList = >($(CardDriverInstanceList), $(CardDriverInstance))
EndForListDo
Debug-Output "InstanceNumberList = "$(InstanceNumberList)
Debug-Output "CardDriverInstanceList = "$(CardDriverInstanceList)
ifint $(NumberOfNetworkCards) < 1
Debug-Output "OEMNPRNW.INF: No network cards installed"
Set DlgType = "MessageBox"
Set STF_MB_TITLE = "NetWare IPX/SPX Service Setup"
Set STF_MB_TEXT = "The NetWare IPX/SPX service can not be configured because no network adapters are installed."
Set STF_MB_TYPE = 1
Set STF_MB_ICON = 2
Set STF_MB_DEF = 1
ui start "Error Message"
set CommonStatus = STATUS_USERCANCEL
goto ConfigureIpxSpxEXIT
endif
;
; Get the card and frame Ipx is currently bound to
;
set IpxParametersName = $(!NTN_ServiceBase)"\"$(ProductIPXSPXName)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(IpxParametersName) $(MAXIMUM_ALLOWED) KeyIpxParameters
ifstr(i) $(KeyIpxParameters) != ""
GetRegValue $(KeyIpxParameters) $(CardInstance) ValueList
set IpxCardInstance = *($(ValueList), 4)
Debug-Output "OEMNPRNW.INF: VMLID, IpxCardInstance = "$(IpxCardInstance)
GetRegValue $(KeyIpxParameters) $(CardTypeName) ValueList
set IpxCard = *($(ValueList), 4)
ifstr(i) $(IpxCard) == "VMLID"
;
; Get the card name from the VMLID service
;
set VMLIDServiceName = $(!NTN_ServiceBase)"\"$(ProductVMLIDName)
OpenRegKey $(!REG_H_LOCAL) "" $(VMLIDServiceName) $(MAXIMUM_ALLOWED) KeyVMLIDService
ifstr(i) $(KeyVMLIDService) != ""
GetRegValue $(KeyVMLIDService) "Bind" ValueList
set BindList = *($(ValueList), 4)
Split-String $(BindList) "\" BindListParts
Debug-Output "OEMNPRNW.INF: VMLID BindListParts = "$(BindListParts)
set NdisCardService = *($(BindListParts), 4)
Debug-Output "OEMNPRNW.INF: VMLID, NdisCardService = "$(NdisCardService)
set CardIndex = ~($(ServiceNameList), $(NdisCardService))
set IpxCard = *($(ProductNameList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: VMLID, IpxCard = "$(IpxCard)
set CurrentIpxNetworkCard = *($(NetworkCardList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: VMLID, CurrentIpxNetworkCard = "$(CurrentIpxNetworkCard)
set DriverType = "NDIS"
set CardDriverInstance = *($(CardDriverInstanceList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: VMLID, CardDriverInstance = "$(CardDriverInstance)
set IpxCardNumber = *($(CardNumberList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: VMLID, IpxCardNumber = "$(IpxCardNumber)
CloseRegKey $(KeyVMLIDService)
endif
else
set DriverType = "ODI"
set CardDriverInstance = $(IpxCard)$(DriverType)$(IpxCardInstance)
Debug-Output "OEMNPRNW.INF: ODI, CardDriverInstance = "$(CardDriverInstance)
set CardIndex = ~($(CardDriverInstanceList), $(CardDriverInstance))
set CurrentIpxNetworkCard = *($(NetworkCardList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: ODI, CurrentIpxNetworkCard = "$(CurrentIpxNetworkCard)
set IpxCardNumber = *($(CardNumberList), $(CardIndex))
Debug-Output "OEMNPRNW.INF: ODI, IpxCardNumber = "$(IpxCardNumber)
endif
GetRegValue $(KeyIpxParameters) $(FrameTypeName) ValueList
set IpxFrameType = *($(ValueList), 4)
CloseRegKey $(KeyIpxParameters)
else
Debug-Output "Can't open IpxSpx parameters key "$(IpxServiceName)
endif
Debug-Output "OEMNPRNW.INF: ConfigureIpxSpx IpxCard = "$(IpxCard)
Debug-Output "OEMNPRNW.INF: ConfigureIpxSpx IpxFrameType = "$(IpxFrameType)
Debug-Output "OEMNPRNW.INF: ConfigureIpxSpx IpxCardNumber = "$(IpxCardNumber)
set ReConfigureIpx = ""
set WriteParameters = ""
set VMLIDCard = ""
ifstr(i) $(NWIPInstalled) == YES
set OldIpxCard = $(IpxCard)
set IpxCard = "NWIP"
set IpxFrameType = *($(NWIPFrameList), 1)
set DriverType = "ODI"
ifstr(i) $(DoConfig) != YES
goto dowriteparameters
else-ifstr(i) $(OldIpxCard) != $(IpxCard)
set ReConfigureIpx = YES
endif
set CurrentIpxNetworkCard = *($(NetworkCardList), 1)
endif
; Debug-Output "Find "$(IpxCard)" in "$(ProductNameList)
;
; ForListDo $(ProductNameList)
; set ProductName = $($)
; ifstr(i) $(ProductName) == $(IpxCard)
; ;
; ; The product names are the same now check the driver type
; ;
; set ProductDriverType = *($(DriverTypeList), $(#))
;
; ifstr(i) $(ProductDriverType) == $(DriverType)
; set CurrentIpxNetworkCard = *($(NetworkCardList), $(#))
; endif
; endif
; EndForListDo
set CurrentIpxFrameType = $(IpxFrameType)
Debug-Output "OEMNPRNW.INF: CurrentIpxNetworkCard = "$(CurrentIpxNetworkCard)
; Ifcontains(i) $(IpxCard) in $(ProductNameList)
Ifcontains(i) $(CardDriverInstance) in $(CardDriverInstanceList)
;
; The card Ipx is currently bound to is okay exit if not doing configure.
;
Ifstr(i) $(DoConfig) != "YES"
goto ConfigureIpxSpxEXIT
Endif
Else-Ifstr(i) $(NWIPInstalled) != YES
;
; The card Ipx is bound to is invalid
;
set ReConfigureIpx = YES
set CurrentIpxFrameType = $(AutoDetect)
Endif
ifstr(i) $(CurrentIpxNetworkCard) == ""
set CurrentIpxNetworkCard = *($(NetworkCardList), 1)
endif
ifstr(i) $(CurrentIpxFrameType) == ""
set CurrentIpxFrameType = $(AutoDetect)
endif
set LastIpxNetworkCard = $(CurrentIpxNetworkCard)
dothedialog = +
set CurrentMediaType = *($(MediaTypeList), ~($(NetworkCardList), $(CurrentIpxNetworkCard)))
set FrameTypeList = $($(CurrentMediaType)FrameList)
ifstr(i) $(CurrentIpxNetworkCard) != $(LastIpxNetworkCard)
set CurrentIpxFrameType = *($(FrameTypeList), 1)
endif
set LastIpxNetworkCard = $(CurrentIpxNetworkCard)
StartWait
read-syms "IpxCardFrameDlg"$(!STF_LANGUAGE)
set NotifyFields = {"YES","NO"}
set ComboListItemsIn = {NetworkCardList,FrameTypeList}
set ComboListItemsOut = {CurrentIpxNetworkCard,CurrentIpxFrameType}
ui start "LANDriverParms" $(NwLibHandle)
ifstr(i) $(DLGEVENT) == "NOTIFY"
Debug-Output "NOTIFY"
set ReInit = YES
goto dothedialog
else-ifstr(i) $(DLGEVENT) == "CONTINUE"
Debug-Output "Continue hit"
set WriteParameters = YES
set ListIndex = ~($(NetworkCardList), $(CurrentIpxNetworkCard))
set IpxCard = *($(ProductNameList), $(ListIndex))
set IpxCardNumber = *($(CardNumberList), $(ListIndex))
set DriverType = *($(DriverTypeList), $(ListIndex))
ifstr(i) $(DriverType) == "NDIS"
set VMLIDCard = $(IpxCard)
set VMLIDService = *($(ServiceNameList), $(ListIndex))
set IpxCard = "VMLID"
set IpxCardInstance = 1
else
set IpxCardInstance = *($(InstanceNumberList), $(ListIndex))
endif
set IpxFrameType = $(CurrentIpxFrameType)
set CommonStatus = STATUS_SUCCESSFUL
else-ifstr(i) $(DLGEVENT) == "BACK"
Debug-Output "Action: CANCEL. Bye."
ifstr(i) $(ReConfigureIpx) == YES
Debug-Output "OEMNPRNW.INF: Ipx needs a new home"
set WriteParameters = YES
set ListIndex = 1
set IpxCard = *($(ProductNameList), $(ListIndex))
set IpxCardNumber = *($(CardNumberList), $(ListIndex))
set DriverType = *($(DriverTypeList), $(ListIndex))
ifstr(i) $(DriverType) == "NDIS"
set VMLIDCard = $(IpxCard)
set VMLIDService = *($(ServiceNameList), $(ListIndex))
set IpxCard = "VMLID"
set IpxCardInstance = 1
else
set IpxCardInstance = *($(InstanceNumberList), $(ListIndex))
endif
endif
set CommonStatus = STATUS_USERCANCEL
else-ifstr(i) $(DLGEVENT) == "EXIT"
;
; user selected the advanced button
;
StartWait
set HelpContext = $(IDH_IPXSPXPARMS)
LibraryProcedure LibResult $(NwLibHandle) IPXSPXDialog
Debug-Output "LibResult = "$(LibResult)
ifstr(i) $(LibResult) == "CONTINUE"
Debug-Output "OK hit"
Set DoReboot = "YES"
Set CommonStatus = STATUS_REBOOT
endif
goto dothedialog
else
Debug-Output "DLGEVENT = "$(DLGEVENT)
endif
ui pop 1
dowriteparameters = +
ifstr(i) $(WriteParameters) == YES
set IpxParametersName = $(!NTN_ServiceBase)"\"$(ProductIPXSPXName)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(IpxParametersName) $(MAXIMUM_ALLOWED) KeyIpxParameters
ifstr(i) $(KeyIpxParameters) != ""
SetRegValue $(KeyIpxParameters) {$(CardTypeName),$(NoTitle),$(!REG_VT_SZ),$(IpxCard)}
SetRegValue $(KeyIpxParameters) {$(FrameTypeName),$(NoTitle),$(!REG_VT_SZ),$(IpxFrameType)}
SetRegValue $(KeyIpxParameters) {$(CardInstance),$(NoTitle),$(!REG_VT_DWORD),$(IpxCardInstance)}
SetRegValue $(KeyIpxParameters) {$(IpxNtCardInstance),$(NoTitle),$(!REG_VT_SZ),$(IpxCardNumber)}
set VMLIDServiceName = $(!NTN_ServiceBase)"\"$(ProductVMLIDName)
OpenRegKey $(!REG_H_LOCAL) "" $(VMLIDServiceName) $(MAXIMUM_ALLOWED) KeyVMLIDService
ifstr(i) $(KeyVMLIDService) != ""
ifstr(i) $(VMLIDCard) != ""
;
; Turn on VMLID and set the card to bind to
;
set BindValue = "\Device\"$(VMLIDService)
SetRegValue $(KeyVMLIDService) {"Bind",$(NoTitle),$(!REG_VT_SZ),$(BindValue)}
SetRegValue $(KeyVMLIDService) {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
;
; We are bound to an NDIS adapter so check if source routing is needed
;
Ifstr(i) $(CurrentMediaType) != "ETHERNET"
Shell $(NwSubsInf) NWConfigureSourceRouting "Novell"
Endif
else
;
; Turn off VMLID
;
SetRegValue $(KeyVMLIDService) {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
endif
CloseRegKey $(KeyVMLIDService)
else
endif
CloseRegKey $(KeyIpxParameters)
else
Debug-Output "OEMNPRNW.INF: writeparameters can't open "$(IpxParametersName)
endif
;
; set OdiLoad
;
set OdiLoadServiceName = $(!NTN_ServiceBase)"\"$(ProductODILOADName)
OpenRegKey $(!REG_H_LOCAL) "" $(OdiLoadServiceName) $(MAXIMUM_ALLOWED) KeyOdiLoadService
ifstr(i) $(KeyOdiLoadService) != ""
ifstr(i) $(VMLIDCard) != ""
;
; Turn off OdiLoad if Ipx is bound to an Ndis driver
;
SetRegValue $(KeyOdiLoadService) {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
else-ifstr(i) $(NWIPInstalled) == YES
;
; If any Odi drivers are installed turn on OdiLoad otherwise
; turn it off.
;
Ifcontains(i) "ODI" in $(DriverTypeList)
SetRegValue $(KeyOdiLoadService) {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
Else
SetRegValue $(KeyOdiLoadService) {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
Endif
else
;
; Turn on OdiLoad because we must be using an Odi driver
;
SetRegValue $(KeyOdiLoadService) {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
endif
CloseRegKey $(KeyOdiLoadService)
else
Debug-Output "OEMNPRNW.INF: can't open OdiLoad service "$(OdiLoadServiceName)
endif
endif
ConfigureIpxSpxEXIT = +
return $(CommonStatus) $(DoReboot)
;*************************************************************************
;
; 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
;
[InstallEx-AuthenticationPackage]
StartWait
Read-syms GeneralConstants
Read-syms ExtendedConstants
Set ValueName = "Authentication Packages"
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\Lsa" $(MAXIMUM_ALLOWED) KeyLsa
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Cant open LSA key for authentication package"
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: Cant update LSA value for authentication package"
Endif
Endif
CloseRegKey $(KeyLsa)
IEX_Auth_Return = +
Return
[InstallEx-NetworkProvider]
StartWait
Read-syms GeneralConstants
Read-syms ExtendedConstants
Set ValueName = "ProviderOrder"
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\NetworkProvider\order" $(MAXIMUM_ALLOWED) KeyPro
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Cant open NetworkProvder\order key"
Goto IEX_Prov_Return
Endif
GetRegValue $(KeyPro) $(ValueName) ProValueList
Set ProString = *($(ProValueList),4)
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))
; Ifstr(i) *($(ProPieces),1) != $(KeyNull)
Set NewPieces = >($(NewPieces),",")
; Endif
ForListDo $(ProPieces)
Set NewPieces = >($(NewPieces),$($))
EndForListDo
; Debug-Output "OEMNPRNW.INF: New provider list string is: "$(NewPieces)
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"
Endif
Endif
CloseRegKey $(KeyPro)
OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\Windows NT\CurrentVersion\File Manager\AddOns" $(MAXIMUM_ALLOWED) KeyPro
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Can't open File Manager\AddOns key"
Goto IEX_Prov_Return
Endif
SetRegValue $(KeyPro) {"Novell NetWare Extension",$(NoTitle),$(!REG_VT_SZ),"nwfmext.dll"}
CloseRegKey $(KeyPro)
IEX_Prov_Return = +
Return
[InstallEx-ServiceGroupOrder]
StartWait
Read-syms GeneralConstants
Read-syms ExtendedConstants
Set ValueName = "List"
Set Result = NO_ERROR
Set Predecessor = $($0)
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\ServiceGroupOrder" $(MAXIMUM_ALLOWED) KeySgo
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
set Result = "OEMNPRNW.INF: Cant open ServiceGroupOrder key"
Debug-Output $(Result)
Goto IEX_Sgo_Return
Endif
GetRegValue $(KeySgo) $(ValueName) SgoValue
Set SgoList = *($(SgoValue),4)
Set NewList = {}
ForListDo $(SgoList)
Set Item = $($)
Ifstr(i) $(Item) == $(Predecessor)
Set NewList = >($(NewList),$(Item))
Ifstr(i) $(Item) == $(Predecessor)
; Add all NetWare names to the list here
ForListDo $(SvcList)
Set NewList = >($(NewList),$($))
EndForListDo
Endif
Else-Ifstr(i) $(Item) == *($(SvcList),1)
; Oops. We're in the wrong place. Don't copy us to the new list were making.
; Increment Trigger so the next item will be skipped over.
Else-Ifstr(i) $(Item) == *($(SvcList),2)
; Oops. We're in the wrong place. Don't copy us to the new list were making.
; Increment Trigger so the next item will be skipped over.
Else-Ifstr(i) $(Item) == *($(SvcList),3)
; Oops. We're in the wrong place. Don't copy us to the new list were making.
; Increment Trigger so the next item will be skipped over.
Else
Set NewList = >($(NewList),$(Item))
Endif
EndForListDo
SetRegValue $(KeySgo) {$(ValueName),$(NoTitle),$(!REG_VT_MULTI_SZ),$(NewList)}
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
set Result = "OEMNPRNW.INF: Cant update ServiceGroupOrder value"
Debug-Output $(Result)
Endif
CloseRegKey $(KeySgo)
IEX_Sgo_Return = +
Return $(Result)
;
; Install the NetWare print provider
;
[InstallEx-NetWarePrintServices]
StartWait
Read-syms GeneralConstants
Read-syms ExtendedConstants
Set ValueName = "Name"
Set OrderName = "Order"
OpenRegKey $(!REG_H_LOCAL) "" $(PrintProvider) $(MAXIMUM_ALLOWED) KeyPrint
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Cant open "$(PrintProvider)" key"
Goto IEX_Nps_Return
Endif
CreateRegKey $(KeyPrint) {$(NetWarePrintProviderName),$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyProvider
Ifint $(RegLastError) != !(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: NetWare Print Services already install."
OpenRegKey $(KeyPrint) "" $(NetWarePrintProviderName) $(MAXIMUM_ALLOWED) KeyProvider
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"
Endif
GetRegValue $(KeyPrint) $(OrderName) PrintProviderOrder
Set ProviderOrderList = *($(PrintProviderOrder), 4)
Set DoIt = 1
ForListDo $(ProviderOrderList)
Set Item = $($)
Ifstr(i) $(Item) == $(NetWarePrintProviderName)
; We're already in the list
Set DoIt = 0
Endif
EndForListDo
Ifint $(DoIt) == 1
Set ProviderOrderList = >($(ProviderOrderList), $(NetWarePrintProviderName))
SetRegValue $(KeyPrint) {$(OrderName),$(NoTitle),$(!REG_VT_MULTI_SZ),$(ProviderOrderList)}
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "OEMNPRNW.INF: Cant update Print Providers Order value"
Endif
Endif
CloseRegKey $(KeyProvider)
CloseRegKey $(KeyPrint)
IEX_Nps_Return = +
Return
[FinishInstalling-NWFS]
read-syms GeneralConstants
read-syms FileConstants
Set WorkStationHandle = $($0)
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
Ifstr(i) $(KeyWorkstation) != ""
CloseRegKey $(KeyWorkstation)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) $(MAXIMUM_ALLOWED) KeyServices
Ifstr(i) $(KeyServices) == ""
Debug-Output "OEMNPRNW.INF: Delete Nwfs, Can't open "$(!NTN_ServiceBase)
Else
DeleteRegTree $(KeyServices) $(NetWareFileSystem)
CloseRegKey $(KeyServices)
Endif
Endif
SetRegValue $(KeyLinkage) {"OtherDependencies",$(NoTitle),$(!REG_VT_MULTI_SZ),{"Mup","+NetWare Services"}}
CreateRegKey $(WorkStationHandle) {"NetworkProvider",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" ProviderHandle
Ifstr(i) $(ProviderHandle) == ""
Debug-Output "OEMNPRNW.INF: Can't create NetWareWorkstation\NetworkProvider"
OpenRegValue $(WorkStationHandle) "" "NetworkProvider" $(MAXIMUM_ALLOWED) ProviderHandle
Ifstr(i) $(ProviderHandle) == ""
goto FIN_NWWS_Return
Endif
Endif
SetRegValue $(ProviderHandle) {"Class",$(NoTitle),$(!REG_VT_DWORD),"3"}
SetRegValue $(ProviderHandle) {"Name",$(NoTitle),$(!REG_VT_SZ),"NetWare Services"}
SetRegValue $(ProviderHandle) {"ProviderPath",$(NoTitle),$(!REG_VT_EXPAND_SZ),$(System32Root)"NETWARE.DLL"}
SetRegValue $(ProviderHandle) {"DeviceName",$(NoTitle),$(!REG_VT_SZ),"\Device\NetWareWorkstation"}
SetRegValue $(KeyParameters) {"Retry Count",$(NoTitle),$(!REG_VT_DWORD),16}
SetRegValue $(KeyParameters) {"Burst Mode",$(NoTitle),$(!REG_VT_DWORD),1}
SetRegValue $(KeyParameters) {"First Time Install",$(NoTitle),$(!REG_VT_DWORD),1}
CloseRegKey $(ProviderHandle)
Debug-Output "2: TransportSelected = "$(TransportSelected)
Ifstr(i) $(TransportSelected) == "NWLINK"
Debug-Output "Set registry for NWLINK, KeyParameters = "$(KeyParameters)
SetRegValue $(KeyParameters) {"IPX TDI Provider",$(NoTitle),$(!REG_VT_SZ),"\Device\Streams\NWLINKIPX"}
Endif
FIN_NWWS_Return = +
Return
[FinishInstalling-IPXSPX]
read-syms GeneralConstants
read-syms FileConstants
read-syms IpxSpxConstants
set ParmKey = $($1)
set LinkageKey = $($2)
; set Parameters
SetRegValue $(ParmKey) {$(CardTypeName),$(NoTitle),$(!REG_VT_SZ),$(CardName)}
SetRegValue $(ParmKey) {$(CardInstance),$(NoTitle),$(!REG_VT_DWORD),$(CardInstanceNum)}
SetRegValue $(ParmKey) {"Session Count",$(NoTitle),$(!REG_VT_DWORD),48}
SetRegValue $(ParmKey) {"Window Size",$(NoTitle),$(!REG_VT_DWORD),3}
SetRegValue $(ParmKey) {"Retry Count",$(NoTitle),$(!REG_VT_DWORD),10}
SetRegValue $(ParmKey) {"Retry Delay Timeout",$(NoTitle),$(!REG_VT_DWORD),0}
SetRegValue $(ParmKey) {"Watchdog Abort Timeout",$(NoTitle),$(!REG_VT_DWORD),30}
SetRegValue $(ParmKey) {"Watchdog Listen Timeout",$(NoTitle),$(!REG_VT_DWORD),6}
SetRegValue $(ParmKey) {"Watchdog Verify Timeout",$(NoTitle),$(!REG_VT_DWORD),3}
; set Linkage
SetRegValue $(LinkageKey) {$(BindValueName),$(NoTitle),$(!REG_VT_SZ),"\DEVICE\IPXSPX"}
Shell $(UtilityInf) AddWinsockInfo $(ProductIPXSPXName) "wshnw.dll" "14" "14"
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "OEMNPRNW.INF: AddWinsockInfo ShellCode error "$($ShellCode)
endif
; Check for the pre-alpha Ipx service key if it exists delete it. We are now
; using the key IpxSpx
;
set PreAlphaIpxName = "Ipx"
set PreAlphaIpxService = $(!NTN_ServiceBase)"\"$(PreAlphaIpxName)
OpenRegKey $(!REG_H_LOCAL) "" $(PreAlphaIpxService) $(MAXIMUM_ALLOWED) KeyIpx
Ifstr(i) $(KeyIpx) != ""
CloseRegKey $(KeyIpx)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) $(MAXIMUM_ALLOWED) KeyServices
Ifstr(i) $(KeyServices) == ""
Debug-Output "OEMNPRNW.INF: Delete Ipx, Can't open "$(!NTN_ServiceBase)
Else
DeleteRegTree $(KeyServices) $(PreAlphaIpxName)
FlushRegKey $(KeyServices)
CloseRegKey $(KeyServices)
Endif
Endif
Return
[FinishInstalling-LSL]
Return
[FinishInstalling-RESMGR]
Return
[FinishInstalling-ODILOAD]
Set KeyLinkage = $($2)
SetRegValue $(KeyLinkage) {"OtherDependencies",$(NoTitle),$(!REG_VT_MULTI_SZ),{"+ODI"}}
Return
[FinishInstalling-MUP]
Return
[FinishInstalling-TDI]
Return
[FinishInstalling-SPXAPI]
Return
[FinishInstalling-IPXAPI]
Return
[FinishInstalling-ROUTE]
Return
[FinishInstalling-RECONNECT]
Return
[FinishInstalling-VMLID]
Return
[FinishInstalling-NWPOPUP]
Debug-Output "FinishInstalling-NWPOPUP"
set KeyNwPop = $($0)
FlushRegKey $(KeyNwPop)
; OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)\NwPopUp $(MAXIMUM_ALLOWED) KeyNwPop
Ifstr(i) $(KeyNwPop) != ""
Debug-Output "Opened Key NWPOPUP"
GetRegValue $(KeyNwPop) "Type" ValueTypeList
Debug-Output "TypeList = "$(ValueTypeList)
set ValueType = *($(ValueTypeList), 4)
Debug-Output "Type = "$(ValueType)
set-add ValueType = $(ValueType),256
SetRegValue $(KeyNwPop) {"Type",$(NoTitle),$(!REG_VT_DWORD),$(ValueType)}
; CloseRegKey $(KeyNwPop)
Endif
Endif
Return
[FinishInstalling-ODINSUP]
Return
[ProgressCopyENG]
!p:ProCaption = "NetWare for Windows NT Setup"
!p:ProCancel = "Cancel"
!p:ProCancelMsg = "NetWare 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."
[DoAskSource]
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
Set NetWareDlgText = "Please enter the full path of the NetWare for Windows NT distribution "+
"files. Then choose Continue."
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)
;***************************************************************
; INSTALL SECTIONS
;***************************************************************
[CreateNetWareGroup]
set NetWareGroup = "NetWare"
CreateCommonProgManGroup $(NetWareGroup) ""
RemoveCommonProgManGroup $(NetWareGroup)
CreateCommonProgManGroup $(NetWareGroup) ""
ShowCommonProgManGroup $(NetWareGroup), 1
CreateCommonProgmanItem "NetWare", "DOS Support" "%SystemRoot%\netware.pif" "%SystemRoot%\system32\nwsetup.dll" 1
CreateCommonProgmanItem "NetWare", "Getting Started" "winhlp32 %SystemRoot%\system32\netware\readme.hlp" "" 0
;
; Minimize the group
;
ShowCommonProgManGroup $(NetWareGroup), 6
Exit
[Install-NetWare-Dir]
CreateDir $(!STF_WINDOWSSYSPATH)\NetWare
CreateDir $(!STF_WINDOWSSYSPATH)\NLS
CreateDir $(!STF_WINDOWSSYSPATH)\NLS\English
Exit
[Install-Option]
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
Debug-Output "OEMNPRNW.INF: Language directory to use: LANGUAGE = "$(LANGUAGE)
Debug-Output "OEMNPRNW.INF: Install-FirstFiles: AddCopy = "$(AddCopy)
Debug-Output "OEMNPRNW.INF: Install-FirstFiles: DoCopy = "$(DoCopy)
Debug-Output "OEMNPRNW.INF: STF_WINDOWSPATH = "$(!STF_WINDOWSPATH)
Debug-Output "OEMNPRNW.INF: STF_NTPATH = "$(!STF_NTPATH)
Ifstr(i) $(AddCopy) == "YES"
;
; Add the files to the copy list
;
AddSectionFilesToCopyList Files-FirstFiles $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Readme $(SrcDir) $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-NWSETUP $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-CLEAN $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-Help $(SrcDir)$(!STF_PLATFORM)\nls\english $(!STF_WINDOWSSYSPATH)\nls\english
AddSectionFilesToCopyList Files-Messages $(SrcDir)$(!STF_PLATFORM)\nls\english $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-16bitLibs $(SrcDir)I386\libs16 $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Unicode $(SrcDir)I386\nls $(!STF_WINDOWSSYSPATH)\nls
AddSectionFilesToCopyList Files-System32-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Inf-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-NtRoot-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSPATH)
AddSectionFilesToCopyList Files-NetWare-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-Drivers-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Libs-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\libs32 $(!STF_WINDOWSSYSPATH)
Endif
Ifstr(i) $(DoCopy) == "YES"
;
; Copy files in the copy list
;
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Endif
Exit
[Install-Update]
set STF_VITAL = ""
AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-FirstFiles $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Readme $(SrcDir) $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-NWSETUP $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-CLEAN $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-Help $(SrcDir)$(!STF_PLATFORM)\nls\english $(!STF_WINDOWSSYSPATH)\nls\english
AddSectionFilesToCopyList Files-Messages $(SrcDir)$(!STF_PLATFORM)\nls\english $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-16bitLibs $(SrcDir)I386\libs16 $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Unicode $(SrcDir)I386\nls $(!STF_WINDOWSSYSPATH)\nls
AddSectionFilesToCopyList Files-System32-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-Inf-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-NtRoot-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSPATH)
AddSectionFilesToCopyList Files-NetWare-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)\netware
AddSectionFilesToCopyList Files-Drivers-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\redir $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-Libs-$(!STF_PLATFORM) $(SrcDir)$(!STF_PLATFORM)\libs32 $(!STF_WINDOWSSYSPATH)
;
; Copy files in the copy list
;
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Exit
[Install-CheckFileExists]
Debug-Output "OEMNPRNW.INF: FiletoCheck = "$(FileToCheck)
LibraryProcedure STATUS,$(!LIBHANDLE), CheckFileExistance $(FileToCheck)
Debug-Output "OEMNPRNW.INF: CheckFileExists STATUS = "$(STATUS)
exit
[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_NETWAREODISETTINGS = 905
IDH_NETWARECLIENTINSTALL = 906
IDH_NETWARENDISODI = 907
IDH_NODEADDRESSOVERIDE = 908
IDH_NWIP = 909
IDH_RESMGRCONFIG = 951
[ResMgrDlgENG]
DlgType = "RadioCombination"
DlgTemplate = "RESMGR_CONFIG"
Caption = "Resource Manager Configuration"
CBOptionGreyed = {}
RadioOptionGreyed = {}
HelpContext = $(IDH_RESMGRCONFIG)
Label1 = "Communication Buffers"
ComboListItemsIn = {}
ComboListItemsOut = {}
NotifyFields = {}
EditTextIn = { $(CommunicationBuffers) }
EditTextLim = { 3 }
[IpxCardFrameDlgENG]
DlgType = "RadioCombination"
DlgTemplate = "NEW_IPXFRAME"
Caption = "IPX Configuration"
EditTextIn = ""
EditTextLim = ""
CBOptionsGreyed = {}
HelpContext = $(IDH_NETWAREIPXBIND)
Label1 = "Pick the frame type to bind IPX to"
Label2 = "Driver"
Label3 = "Frame"
ComboListItemsIn = {}
ComboListItemsOut = {}
NotifyFields = {"YES","NO"}
[NdisDlgENG]
IDH_NETWARENDISODI = 907
Help = "&Help"
OK = "OK"
Continue = "Continue"
Cancel = "Cancel"
DlgType = "RadioCombination"
DlgTemplate = "ONELIST"
Caption = "Choose the Driver to Bind with"
Label1 = "Installed NDIS Adapters"
EditTextIn = ""
EditTextLim = ""
CBOptionsGreyed = {}
HelpContext = $(IDH_NETWARENDISODI)
ComboListItemsIn = { NdisTitleList }
ComboListItemsOut = { DefaultTitle }
NotifyFields = { "NO" }
[VMLIDIPXDlgENG]
DlgType = "RadioCombination"
Label1 = "Enter the default frame type to bind to IPX"
Label2 = "Board"
Label3 = "Frame"
DlgTemplate = "IPXFRAME"
Caption = "IPX Bind Parameters"
EditTextIn = ""
EditTextLim = ""
CBOptionsGreyed = {}
RadioOptionsGreyed = {}
HelpContext = $(IDH_NETWAREIPXBIND)
ComboOut = $(FrameListDefault)
ComboListItemsIn = { FrameList }
ComboListItemsOut = { ComboOut }
NotifyFields = { "NO" }
[OdinsupDlgENG]
DlgType = "RadioCombination"
DlgTemplate = "ONELIST"
Caption = "NetWare NDIS over ODI (ODINSUP) Setup"
Label1 = "Installed ODI Adapters"
EditTextIn = ""
EditTextLim = ""
CBOptionsGreyed = {}
HelpContext = $(IDH_NETWARENDISODI)
ComboListItemsIn = { OdiTitleList }
ComboListItemsOut = { DefaultOdiTitle }
NotifyFields = { "NO" }
[Source Media Descriptions]
1 = "NetWare Client for Windows NT Disk 1" , TAGFILE = NTCLNT_1
2 = "NetWare Client for Windows NT Disk 2" , TAGFILE = NTCLNT_2
3 = "NetWare Client for Windows NT MIPS Disk" , TAGFILE = NTCLNT_3
4 = "NetWare Client for Windows NT ALPHA Disk" , TAGFILE = NTCLNT_4
[Files-Inf]
1, oemsetup.inf, SIZE=50000, RENAME=$(!UG_Filename)
[Files-Readme]
1, readme.hlp, SIZE=30000
[Files-FirstFiles]
1, nwsubs.inf, SIZE=30000, DECOMPRESS
[Files-CLEAN]
1, clean.exe, SIZE=50000
[Files-NWSETUP]
1, nwsetup.dll, SIZE=50000
[Files-Help]
1, tokentsm.msg, SIZE=50000, DECOMPRESS
1, ethertsm.msg, SIZE=50000, DECOMPRESS
1, fdditsm.msg, SIZE=50000, DECOMPRESS
1, nwnthelp.hlp, SIZE=30000, DECOMPRESS
1, nwcpl.hlp, SIZE=30000, DECOMPRESS
1, netwarer.dll, SIZE=50000, DECOMPRESS
1, nwcplr.dll, SIZE=50000, DECOMPRESS
[Files-Messages]
1, vipx.msg, SIZE=50000, DECOMPRESS
1, netx.msg, SIZE=50000, DECOMPRESS
[Files-16bitLibs]
1, nwcalls.dll, SIZE=20000, DECOMPRESS
1, nwnet.dll, SIZE=20000, DECOMPRESS
1, nwlocale.dll, SIZE=20000, DECOMPRESS
1, nwncp.dll, SIZE=20000, DECOMPRESS
1, nwclient.dll, SIZE=20000, DECOMPRESS
1, nwipxspx.dll, SIZE=50000, DECOMPRESS
1, netware.drv, SIZE=20000, DECOMPRESS
[Files-Unicode]
1, 1252_uni.001, SIZE=500, DECOMPRESS
1, 437_uni.001, SIZE=500, DECOMPRESS
1, uni_850.001, SIZE=3000, DECOMPRESS
1, uni_mon.001, SIZE=5000, DECOMPRESS
1, uni_437.001, SIZE=3000, DECOMPRESS
1, uni_1252.001, SIZE=3000, DECOMPRESS
1, uni_col.001, SIZE=5000, DECOMPRESS
1, 850_uni.001, SIZE=500, DECOMPRESS
[Files-System32-I386]
1, netware.dll, SIZE=50000, DECOMPRESS
1, nwapi32.dll, SIZE=50000, DECOMPRESS
1, nwfmext.dll, SIZE=50000, DECOMPRESS
1, nwevents.dll, SIZE=20000, DECOMPRESS
1, nwspool.dll, SIZE=30000, DECOMPRESS
1, nwv1_0.dll, SIZE=20000, DECOMPRESS
1, psapi32.dll, SIZE=20000, DECOMPRESS
1, wshnw.dll, SIZE=20000, DECOMPRESS
1, nwcpl.cpl, SIZE=20000, DECOMPRESS
1, ipxapi.dll, SIZE=20000, DECOMPRESS
1, spxapi.dll, SIZE=20000, DECOMPRESS
;1, nwshell.exe, SIZE=2000, DECOMPRESS
1, nwauto.nt, SIZE=1000, DECOMPRESS
1, nwconfig.nt, SIZE=1000, DECOMPRESS
1, vipx.exe, SIZE=50000, DECOMPRESS
1, netx.exe, SIZE=50000, DECOMPRESS
1, vipxvdd.dll, SIZE=50000, DECOMPRESS
1, ipxspx32.dll, SIZE=50000, DECOMPRESS
1, nwdrvvdd.dll, SIZE=50000, DECOMPRESS
1, nwpfctrs.dll, SIZE=50000, DECOMPRESS
1, lslstats.h,SIZE=50000, DECOMPRESS
1, lslstats.ini,SIZE=50000, DECOMPRESS
1, rdrstats.ini,SIZE=50000, DECOMPRESS
1, rdrstats.h,SIZE=50000, DECOMPRESS
1, odistats.ini,SIZE=50000, DECOMPRESS
1, odistats.h,SIZE=50000, DECOMPRESS
[Files-Inf-I386]
1, oemnadna.inf, SIZE=50000, DECOMPRESS
1, oemnadnb.inf, SIZE=50000, DECOMPRESS
1, oemnadnc.inf, SIZE=50000, DECOMPRESS
1, oemnadnd.inf, SIZE=50000, DECOMPRESS
1, odinsup.inf SIZE=30000, DECOMPRESS
1, oemnsvip.inf, SIZE=50000, DECOMPRESS
[Files-NtRoot-I386]
1, netware.pif, SIZE=10000, DECOMPRESS
[Files-NetWare-I386]
1, resmgr.sys, SIZE=50000, DECOMPRESS
1, nwfs.sys, SIZE=120000, DECOMPRESS
1, ipxspx.sys, SIZE=100000, DECOMPRESS
1, odiload.sys, SIZE=50000, DECOMPRESS
1, lsl.sys, SIZE=50000, DECOMPRESS
1, ethertsm.nlm, SIZE=20000, DECOMPRESS
1, tokentsm.nlm, SIZE=20000, DECOMPRESS
1, fdditsm.nlm, SIZE=20000, DECOMPRESS
1, route.sys, SIZE=20000, DECOMPRESS
1, spxapi.sys, SIZE=20000, DECOMPRESS
1, ipxapi.sys, SIZE=20000, DECOMPRESS
1, reconsvc.exe, SIZE=20000, DECOMPRESS
1, vmlid.sys, SIZE=50000, DECOMPRESS
1, nwip.sys, SIZE=50000, DECOMPRESS
1, nwmsgsvc.exe, SIZE=50000, DECOMPRESS
[Files-Drivers-I386]
1, odinsup.sys, SIZE=50000, DECOMPRESS
[Files-Libs-I386]
2, nwcvdd.dll, SIZE=50000, DECOMPRESS
2, calwin32.dll, SIZE=20000, DECOMPRESS
2, netwin32.dll, SIZE=20000, DECOMPRESS
2, locwin32.dll, SIZE=20000, DECOMPRESS
2, ncpwin32.dll, SIZE=20000, DECOMPRESS
2, clnwin32.dll, SIZE=20000, DECOMPRESS
2, supwin32.dll, SIZE=20000, DECOMPRESS
2, nwpsrv32.dll, SIZE=20000, DECOMPRESS