;=============================================================================
;
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒ ƒƒƒ ƒƒƒ ƒƒƒƒƒ ƒ ƒƒƒƒ ƒƒƒƒƒƒƒƒ ƒƒ
;ƒƒƒƒƒ ƒƒ ƒ ƒƒ ƒ ƒƒ ƒƒƒƒƒ ƒ
;ƒƒƒƒ ƒƒƒƒƒƒƒ ƒƒƒ ƒ ƒ ƒƒ ƒ ƒƒƒƒ ƒƒƒ ƒƒ
;ƒƒƒ ƒƒƒƒƒƒƒ ƒƒƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒƒƒ ƒƒƒ ƒƒƒ
;ƒƒ ƒƒƒƒƒƒƒ ƒƒƒ ƒ ƒƒ ƒƒ ƒ ƒƒ ƒƒ ƒƒƒ ƒƒƒƒ
;ƒ ƒ ƒ ƒƒƒƒƒƒƒ ƒ ƒƒƒƒƒƒƒ ƒƒƒ ƒ ƒƒƒƒƒ
;ƒ ƒƒ ƒƒ ƒƒƒƒƒƒƒ ƒ ƒƒƒƒƒƒƒ ƒƒƒƒ ƒƒ ƒ ƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒƒƒ ƒƒƒƒƒƒƒƒƒ ƒƒƒƒƒƒƒƒƒ ƒƒ ƒƒ ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ ƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒƒ ƒƒ ƒƒƒ ƒƒƒ ƒƒ ƒƒ ƒƒƒƒƒƒƒ ƒƒƒ ƒƒ ƒ ƒƒƒ ƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒ ƒ ƒƒ ƒ ƒ ƒƒ ƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒ ƒƒ ƒ ƒ ƒ ƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒ ƒ ƒ ƒƒ ƒƒ ƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒ ƒ ƒƒƒ ƒƒ ƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒ ƒ ƒƒƒƒƒƒ ƒƒ ƒƒƒƒƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒ ƒƒƒƒƒ ƒƒƒ ƒƒ ƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒƒ ƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒ ƒƒ ƒ ƒƒƒ ƒƒ ƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒ ƒƒƒƒ ƒƒ ƒƒƒƒ ƒƒ ƒƒƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒƒ ƒƒƒ ƒƒƒ ƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ ƒƒ ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
;
; Windows NT Install script
; Compaq Netelligent and NetFlex-3 Network Interface Cards.
;
; Original Copyright 1996, 1997 Compaq Computer Corporation
;
; Copyright 1993-1997, Microsoft Corporation
;
;=============================================================================
[Identification]
OptionType = NetAdapter
[PlatformsSupported]
PCI
EISA
[Options]
CpqNF3
;
; File names, etc.
;
[FileConstants]
UtilityInf = "UTILITY.INF"
subroutineinf = "SUBROUTN.INF"
SoftwareType = "driver"
MS_InfName = "oemnadvt.inf"
Exit_Code = 0
NETFLEX3_E_1BYTE = 15798542
NETFLEX3_E_4BYTE = 552669454
NETFLEX3_2_E_4BYTE = 1089540366
;
; EventLog Message Files
;
NetEventDLL = "%SystemRoot%\System32\Netevent.dll;%SystemRoot%\System32\Drivers\NetFlx3.Sys"
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
;
; Product Info
;
Manufacturer = "Compaq"
ProductMajorVersion = "3"
ProductMinorVersion = "5"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
;
; Software
;
ProductSoftwareName = "CpqNF3"
ProductSoftwareImagePath = "\SystemRoot\System32\Drivers\NetFlx3.sys"
NetRuleSoftwareType = "CpqNF3Sys ndisDriver CpqNF3Driver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """CpqNF3Sys"" yes no container"
NetRuleSoftwareClass = {"CpqNF3Driver basic"}
NetRuleSoftwareBindable = {"CpqNF3Driver CpqNF3Adapter non exclusive 100"}
;
; Hardware
;
ProductHardwareName = "CpqNF3"
NetRuleHardwareType = "CpqNF3 CpqNF3Adapter"
NetRuleHardwareBindForm = " yes yes container"
NetRuleHardwareClass = {"CpqNF3Adapter basic"}
;
; Registry Key
;
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
ProductKeyNetRulesName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion\NetRules"
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
NetCardKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\Windows NT\CurrentVersion\NetworkCards"
[GeneralConstants]
from = ""
to = ""
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)
DriverPath = $(!STF_NTPATH)\drivers
;AdapterList = {{}}
AddAdapterCount = 0
CPL_FileName = $(!STF_WINDOWSSYSPATH)\NETFLX3.CPL
[date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
[adapter]
AdapterList = {} ? $(!NETFLEX3_HANDLE) NetFlex3FindAdapter
;---------------------------------------------------------------------------
; 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]
Debug-Output "In [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
; STATUS_NOTSUPPORTED
;
; $($R1): Option List
; $($R2): Option Text List
;------------------------------------------------------------------------
[ReturnOptions]
set Status = STATUS_FAILED
set OptionList = {}
set OptionTextList = {}
set LanguageList = ^(LanguagesSupported, 1)
Debug-Output "Running Return Options"
Ifcontains(i) $($0) in $(LanguageList)
ifstr(i) $($1) == ""
goto returnoptions
endif
set PlatformList = ^(PlatformsSupported, 1)
Ifcontains(i) $($1) in $(PlatformList)
goto returnoptions
else
set Status = STATUS_NOTSUPPORTED
goto finish_ReturnOptions
endif
else
set Status = STATUS_NOLANGUAGE
goto finish_ReturnOptions
endif
returnoptions = +
set OptionList = ^(Options, 1)
set OptionTextList = ^(OptionsText$($0), 1)
set Status = STATUS_SUCCESSFUL
finish_ReturnOptions = +
Debug-Output "Status: "$(Status)
Debug-Output "OptionList: "$(OptionList)
Debug-Output "OptionTextList: "$(OptionTextList)
Return $(Status) $(OptionList) $(OptionTextList)
;------------------------------------------------------------------------
;
; 3. 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]
set Option = $($1)
set SrcDir = $($2)
set AddCopy = $($3)
set DoCopy = $($4)
set DoConfig = $($5)
set LanguageList = ^(LanguagesSupported, 1)
Ifcontains(i) $($0) NOT-IN $(LanguageList)
Return STATUS_NOLANGUAGE
endif
set !DebugOutputControl = 1
Debug-Output "Starting Install option..."
read-syms GeneralConstants
read-syms FileConstants
read-syms DialogConstants$(!STF_LANGUAGE)
; *******************************************************************
; 19 April 1996, PJM
; Removed Helpdir reference as we are no longer respnsible for
; copying generic help files.
; ----------------
; Split-String $(SrcDir), "\", DiskLocInfo
; QueryListSize Size $(DiskLocInfo)
; ifint $(Size) >= 5
; ifstr(i) *($(DiskLocInfo), $(Size)) == "\"
; set HelpDir = $(SrcDir)"..\..\"
; else
; set HelpDir = $(SrcDir)"\..\..\"
; endif
; else
; set HelpDir = $(SrcDir)
; endif
; *******************************************************************
Debug-Output "SrcDir = "$(SrcDir)
Debug-Output "DoCopy = "$(DoCopy)
Debug-Output "Add Copy = "$(AddCopy)
Debug-Output "DoConfig = "$(DoConfig)
Debug-Output "NTN_InstallMode = "$(!NTN_InstallMode)
Debug-Output "NTN_InstallPhase = "$(!NTN_InstallPhase)
Debug-Output "NTN_Origination = "$(!NTN_Origination)
Debug-Output "STF_INSTALL_MODE = "$(!STF_INSTALL_MODE)
Debug-Output "STF_GUI_UNATTENDED = "$(!STF_GUI_UNATTENDED)
Debug-Output "STF_UNATTENDED = "$(!STF_UNATTENDED)
Debug-Output "About to detect NT version"
read-syms NtVer
detect NtVer
Debug-Output "Back from NT version detect"
Debug-Output "Ver ="$(NtVersion)
Split-String $(NtVersion) "{}," TempList
;
; MainVer number will wither be 3 or 4
;
set MainVerNumber = *($(TempList),2)
Debug-Output "MainVerNumber = "$(MainVerNumber)
; debug-output "HelpDir = "$(HelpDir)
Debug-Output "STF_CONTEXTINFNAME is: "$(STF_CONTEXTINFNAME)
Debug-Output $(STF_CONTEXTINFNAME)": STF_CWDIR is: "$(!STF_CWDIR)
Debug-Output $(STF_CONTEXTINFNAME)": STF_LANGUAGE is: "$(!STF_LANGUAGE)
Debug-Output $(STF_CONTEXTINFNAME)": Option = "$(Option)
set-subst LF = "\n"
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
set CommonStatus = STATUS_SUCCESSFUL
EndWait
Begin = +
; Lets see if we can get the INF name from registry. Otherwise we
; will use the STF_CONTEXTINFNAME value....
; SOFTWARE\Compaq\CpqNf3\CurrentVersion\NetRules Key, InfName Value
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) +
$(MAXIMUM_ALLOWED) +
KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
CloseRegKey $(KeyProduct)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
set ShellErrorSection = UtilityInf:GetFileNameFromRegistry
Debug-Output "ShellErrorSection = "$(ShellErrorSection)
goto ShellCodeError
endif
Debug-Output "Inf Name from registry is:"$($R0)
set UG_InfName = $($R0)
set UG_FileName = $(!STF_WINDOWSSYSPATH)\$(UG_InfName)
else
Debug-Output "Inf Name does not exist in the registry"
; use the STF_CONTEXTINFNAME
set UG_FileName = $(STF_CONTEXTINFNAME)
set UG_InfName = $(UG_FileName)
; chop off the path part and save the name of the file in UG_InfName
Split-String $(UG_InfName) "\" TempList
ForListDo $(TempList)
set UG_InfName = $($)
EndForListDo
endif
; the name of the inf file with no path
Debug-Output "UG_InfName = "$(UG_InfName)
; the complete path and name of the inf file
Debug-Output "UG_FileName = "$(UG_FileName)
Debug-Output "Install mode:"$(!NTN_InstallMode)
Ifstr(i) $(!NTN_InstallMode) == deinstall
set StartLabel = removeadapter
else-Ifstr(i) $(!NTN_InstallMode) == Update
set StartLabel = UpgradeSoftware
else-Ifstr(i) $(!NTN_InstallMode) == Bind
set StartLabel = bindingadapter
else-Ifstr(i) $(!NTN_InstallMode) == Configure
set CommonStatus = STATUS_REBOOT
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Debug-Output "Cannot configure the Compaq NetFlex-3 driver software."
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error: cannot get an error string."
goto ShellCodeError
endif
set Error = $($R0)
set from = end
set to = end
goto nonfatal
endif
set CommonStatus = STATUS_REBOOT
set StartLabel = ConfigureAdapter
else
set StartLabel = InstallAdapter
set OEM_ABANDON_OPTIONS = {}
set OEM_ABANDON_SOFTWARE = FALSE
set OEM_ABANDON_ON = TRUE
endif
set from = $(fatal)
set to = $(fatal)
goto $(StartLabel)
;-----------------------------------------------
; Binding section
;-----------------------------------------------
bindingadapter =+
set Error = "Binding: Sorry, not yet implemented."
goto fatal
;-----------------------------------------------
; Removeadapter section
;-----------------------------------------------
removeadapter = +
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error - RemoveSoftwareComponent"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
else
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftwareName), $(!NTN_RegBase)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error - RemoveHardwareComponent"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "The software component has been removed"
AddFileToDeleteList $(UG_FileName)
AddFileToDeleteList $(CPL_FileName)
else
CloseRegKey $(KeyProduct)
endif
endif
goto end
;-----------------------------------------------
; Installation Section
;-----------------------------------------------
InstallAdapter = +
Debug-Output $(STF_CONTEXTINFNAME)": Install Adapter"
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
CloseRegKey $(KeyProduct)
ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
$(ProductVersion)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
goto end
else
; set OldVersionExisted = $(TRUE)
set OldVersionExisted = $(FALSE)
endif
endif
Debug-Output "Old Version Existed: "$(OldVersionExisted)
ifint $(OldVersionExisted) == $(FALSE)
install "Install-Option"
; install "AddIcon"
endif
;
; If the file copy worked, first test what ver of nt is being used, then test custom/express, then test primary/secondary
;
Debug-Output "About to test the install mode"
ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_SUCCESS"
ifstr(i) $(MainVerNumber) == "3"
;NT 3.51 Install
ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
;Unattended install, only install NICS one at a time
Debug-Output "V4 Unattended Install Mode, launching NETFLX3.EXE /I /O /S3 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /O /S3 /N$(UG_FileName)
ifstr(i) $(ExitCode) != "0"
;Netflex App returned a change, New adapter installed
;Need to find last CPQNF3 device installed and overwrite Default values with Adapter
;parameters specified in unattended install script
Set Indx = 0
Set TestParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)$(Indx)"\Parameters"
FindLastNF3LoopHead =+
;Iterate to find last CPQNF3 device
Set-add Indx = $(Indx),1
Set TestParamKeyNameLast = $(TestParamKeyName)
Set TestParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)$(Indx)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(TestParamKeyName) $(MAXIMUM_ALLOWED) KeyParameters
Ifstr $(KeyParameters) != $(KeyNull)
;Found device, keep checking to see if it is the last
CloseRegKey $(KeyParameters)
goto FindLastNF3LoopHead
else
;Device not found, last one found is the last device
OpenRegKey $(!REG_H_LOCAL) "" $(TestParamKeyNameLast) $(MAXIMUM_ALLOWED) KeyParameters
endif
;Get parameters from install script and add them to the registry
Shell $(UtilityInf),AddDefaultNetCardParameters,$(KeyParameters)
CloseRegKey $(KeyParameters)
endif
else
ifstr(i) $(!STF_INSTALL_MODE) == "CUSTOM"
ifstr(i) $(!NTN_InstallPhase) == "primary"
Debug-Output "V3 Custom Primary Install Mode, launching NETFLX3.EXE /I /S3 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /S3 /N$(UG_FileName)
else
Debug-Output "V3 Custom Secondary Install Mode, launching NETFLX3.EXE /I /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /N$(UG_FileName)
endif
else
ifstr(i) $(!NTN_InstallPhase) == "primary"
Debug-Output "V3 Express Primary Install Mode, launching NETFLX3.EXE /I /E /S3 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /E /S3 /N$(UG_FileName)
else
Debug-Output "V3 Express Secondary Install Mode *****!!! This case should never happen !!!*****"
; can't do EXPRESS in secondary phase
endif
endif
endif
else
;NT 4.00 Install
ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
;Unattended install, only install NICS one at a time
Debug-Output "V4 Unattended Install Mode, launching NETFLX3.EXE /I /O /S4 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /O /S4 /N$(UG_FileName)
ifstr(i) $(ExitCode) != "0"
;Netflex App returned a change, New adapter installed
;Need to find last CPQNF3 device installed and overwrite Default values with Adapter
;parameters specified in unattended install script
Set Indx = 0
Set TestParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)$(Indx)"\Parameters"
FindLastNF3LoopHead =+
;Iterate to find last CPQNF3 device
Set-add Indx = $(Indx),1
Set TestParamKeyNameLast = $(TestParamKeyName)
Set TestParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)$(Indx)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(TestParamKeyName) $(MAXIMUM_ALLOWED) KeyParameters
Ifstr $(KeyParameters) != $(KeyNull)
;Found device, keep checking to see if it is the last
CloseRegKey $(KeyParameters)
goto FindLastNF3LoopHead
else
;Device not found, last one found is the last device
OpenRegKey $(!REG_H_LOCAL) "" $(TestParamKeyNameLast) $(MAXIMUM_ALLOWED) KeyParameters
endif
;Get parameters from install script and add them to the registry
Shell $(UtilityInf),AddDefaultNetCardParameters,$(KeyParameters)
CloseRegKey $(KeyParameters)
endif
else
ifstr(i) $(!STF_INSTALL_MODE) == "CUSTOM"
ifstr(i) $(!NTN_InstallPhase) == "primary"
Debug-Output "V4 Custom Primary Install Mode, launching NETFLX3.EXE /I /E /S4 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /E /S4 /N$(UG_FileName)
else
Debug-Output "V4 Custom Secondary Install Mode, launching NETFLX3.EXE /I /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /N$(UG_FileName)
endif
else
ifstr(i) $(!NTN_InstallPhase) == "primary"
Debug-Output "V4 Express Primary Install Mode, launching NETFLX3.EXE /I /E /S4 /N$(UG_FileName)"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /I /E /S4 /N$(UG_FileName)
else
Debug-Output "V4 Express Secondary Install Mode *****!!! This case should never happen !!!*****"
; can't do EXPRESS in secondary phase
endif
endif
endif
endif
ifstr(i) $(ExitCode) != "0"
debug-output "need to reboot"
set CommonStatus = STATUS_SUCCESSFUL
else
debug-output "reboot NOT needed"
set CommonStatus = STATUS_NO_EFFECT
endif
endif
goto successful
;-----------------------------------------------
; Configuration Section
;-----------------------------------------------
ConfigureAdapter = +
Debug-Output $(STF_CONTEXTINFNAME)": Configure Adapter"
Debug-Output "Configure mode, Spawning NETFLX3.EXE /C"
RunProgram ExitCode "Compaq NT Support Software Diskette" "" netflx3.exe /C
ifstr(i) $(ExitCode) != "0"
debug-output "need to reboot"
set CommonStatus = STATUS_REBOOT
else
debug-output "reboot NOT needed"
set CommonStatus = STATUS_NO_EFFECT
endif
goto successful
;-----------------------------------------------
; Upgrade Software section
;-----------------------------------------------
UpgradeSoftware = +
;
; First determine whether we want to do upgrade or update for software
; or hardware component. Then we will determine whether the Mode is
; update or upgrade.
;
; If the same version of the product existed in the registry, we do
; update. Otherwise, we will do a upgrade
;
Debug-Output $(STF_CONTEXTINFNAME)": UpgradeSoftware"
Debug-Output $(STF_CONTEXTINFNAME)": ProductKeyName ="$(ProductKeyName)
Debug-Output $(STF_CONTEXTINFNAME)": !NTN_RegBase ="$(!NTN_RegBase)
;
; Upgrade software component
;
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
set ShellErrorSection = UtilityInf:GetFileNameFromRegistry
goto ShellCodeError
endif
Debug-Output "Inf Name from registry is:"$($R0)
set UG_InfName = $($R0)
Debug-Output "UG_InfName = "$(UG_InfName)
; *******************************************************************
; 19 April 1996, PJM
; Removed Helpdir reference as we are no longer respnsible for
; copying generic help files.
; -----------
; ifstr(i) $(UG_InfName) != ""
; ;
; ; set the HelpDir based on location of the NetFlx3 Directory.
; ;
; Split-String $(SrcDir), "\", DiskLocInfo
; QueryListSize Size $(DiskLocInfo)
; ifint $(Size) >= 5
; ifstr(i) *($(DiskLocInfo), $(Size)) == "\"
; set HelpDir = $(SrcDir)"..\..\"
; else
; set HelpDir = $(SrcDir)"\..\..\"
; endif
; else
; set HelpDir = $(SrcDir)
; endif
; debug-output "HelpDir = "$(HelpDir)
; *******************************************************************
install "Install-Update"
; install "AddIcon"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
goto Fatal
endif
set CommonStatus = STATUS_REBOOT
; Upgrade the version number
;
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
;
; do nothing for update
;
CloseRegKey $(KeyProduct)
else
goto fatalregistry
endif
endif
goto end
;-----------------------------------------------
; Success completion
;-----------------------------------------------
successful = +
;
; If the STF_CONTEXTINFNAME is not equal to the UG_InfName variable that was pulled out of the registry then
; delete the STF_CONTEXINFTNAME because it is just a second copy of UG_InfName that we don't need afterwards.
; It is not possible to stop NCPA from copying the oemsetup.inf to STF_CONTEXINFTNAME when we hit the install section
; so we just erase it. (unless there was no inf name in the registry, then we keep the file)
ifstr(i) $(STF_CONTEXTINFNAME) != $(UG_FileName)
AddFileToDeleteList $(STF_CONTEXTINFNAME)
endif
goto end
;-----------------------------------------------
; Section called when we are abandoning
;-----------------------------------------------
abandon = +
ForListDo $(OEM_ABANDON_OPTIONS)
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
$(ProductSoftwareName), $($)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
EndForListDo
Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
$(ProductSoftwareName), FALSE
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output "ShellCode error"
goto ShellCodeError
endif
set RegistryErrorIndex = $($R0)
Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
goto fatalregistry
endif
endif
goto end
;-----------------------------------------------
; Section used when we need to issue a warning
;-----------------------------------------------
warning = +
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) == "OK"
goto $(to)
else-ifstr(i) $($R1) == "CANCEL"
goto $(from)
else
goto end
endif
nonfatal = +
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), "NONFATAL", $(Error)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) == "OK"
goto $(from)
else
goto end
endif
fatalregistry = +
Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
set Error = $($R0)
goto fatal
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
ShellCodeError = +
Debug-Output $(STF_CONTEXTINFNAME)": Shell error, $(ShellErrorSection)"
set DlgType = "MessageBox"
set STF_MB_TITLE = $(ShellCodeErrorTitle)
set STF_MB_TEXT = $(ShellCodeErrorText)
set STF_MB_TYPE = 1
set STF_MB_ICON = 3
set STF_MB_DEF = 1
ui start "Error Message"
goto setfailed
setfailed = +
set CommonStatus = STATUS_FAILED
ifstr(i) $(OEM_ABANDON_ON) == TRUE
set OEM_ABANDON_ON = FALSE
goto abandon
endif
goto end
end = +
goto term
term = +
Return $(CommonStatus)
[Install-Option]
Debug-Output "In [Install-Option]"
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
ifstr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-Driver $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-DLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-INF $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-APP $(SrcDir) $(!STF_WINDOWSSYSPATH)
endif
ifstr(i) $(DoCopy) == "YES"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
; during an NT install the files must be copied right away
else-ifstr(i) $(!NTN_InstallMode) == "install"
ifstr(i) $(!STF_GUI_UNATTENDED) == "NO"
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
endif
endif
Exit
[Install-Update]
Debug-Output "In [Install-Update]"
set STF_VITAL = ""
set STF_OVERWRITE = "VERIFYSOURCEOLDER"
AddSectionFilesToCopyList Files-Driver $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-DLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-INF $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-APP $(SrcDir) $(!STF_WINDOWSSYSPATH)
set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Exit
[AddIcon]
set ProgGroup = "Administrative Tools"
set AppName = "NetFlex-3 Setup Utility"
set CmdLine = $(!STF_WINDOWSSYSPATH)"\netflx3.exe"
;
; Remove the existing item -- assuming it's in the Administrative Tools
; group
;
RemoveProgmanItem $(ProgGroup) +
$(AppName)
;
; Re-add the item.
;
CreateProgmanItem $(ProgGroup) +
$(AppName) +
$(CmdLine) +
$(CmdLine) +
0
exit
[NtVer]
NtVersion = "" ? $(!LIBHANDLE) GetWindowsNtVersion
[Source Media Descriptions]
1 = "Windows NT Setup Disk #1" , TAGFILE = disk1
2 = "Windows NT Workstation CD-ROM" , TAGFILE = cdrom.w
3 = "Compaq Netelligent Driver Disk", TAGFILE = CPQDISK.NET
[Signature]
FileType = MICROSOFT_FILE
[GetSignature]
read-syms Signature
return $(FileType)
[ProductType]
STF_PRODUCT = Winnt
STF_PLATFORM = I386
[Files-Inf]
3, oemsetup.inf, SIZE=1000, RENAME=$(UG_InfName)
[Files-DLL]
3, NetFlx3.DLL, SIZE=999
[Files-Driver]
3, NetFlx3.SYS, SIZE=999
[Files-APP]
3, NETFLX3.EXE, SIZE=999
3, NETFLX3.HLP, SIZE=999
3, NETFLX3.CPL, SIZE=999
[LanguagesSupported]
ENG
[OptionsTextENG]
NetFlex3 = "Compaq Netelligent/NetFlex-3 Controller"
[FileConstantsENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cance&l"
ProCancelMsg = "Windows NT Networking is not correctly installed. "+
"Are you sure you want to cancel copying files?"
ProCancelCap = "Network Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
FunctionTitle = "Compaq NetFlex-3 Controller Setup"
ProductSoftwareDescription = "Compaq NetFlex-3 NDIS 3.0 Miniport Driver"
ProductHardwareNetFlex3PDescription = "Compaq NetFlex-3/P Controller"
ProductHardwareNetFlex3EDescription = "Compaq NetFlex-3/E Controller"
CANNOT_FIND_ANY_CARD = "Network card is not present in the system."
ProductSoftwareTitle = "Compaq NetFlex-3 Driver"
ProductHardwareNetFlex3PTitle = "NetFlex-3"
ProductHardwareNetFlex3ETitle = "NetFlex-3"
ProductHardwareNetFlex3PSuffix = "/P"
ProductHardwareNetFlex3ESuffix = "/E"
ShellCodeErrorTitle = "Error: "$(FunctionTitle)
ShellCodeErrorText = "Shell Code Error."
[DialogConstantsENG]
Help = "&Help"
Exit = "Cancel"
OK = "OK"
HelpContext = ""
Continue = "Continue"
Cancel = "Cancel"
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.