;***********************************************************************
; Intel(R) PRO/DSL 2100 PCI ADSL adapter driver Windows NT Setup File.
; $Revision: 21 $
;***********************************************************************
[Identification]
OptionType = NetAdapter
;***********************************************************************
[PlatformsSupported]
PCI
;***********************************************************************
[Options]
ProDsl21PPP
ProDsl21LAN
;***********************************************************************
[FileConstants]
InfName = "OEMINTEL.INF"
UtilityInf = "UTILITY.INF"
ParamInf = "NCPARAM.INF"
subroutineinf = "SUBROUTN.INF"
P21PPP = "p21cn4w.sys"
P21LAN = "p21cn4l.sys"
Exit_Code = 0
NetEventDLL = "%SystemRoot%\System32\netevent.dll"
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
Manufacturer = "Intel"
ProductMajorVersion = "1"
ProductMinorVersion = "2"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
SoftwareName = "ProDsl21"
ProductSoftwareImagePathPPP = "%SystemRoot%\System32\drivers\"$(P21PPP)
ProductSoftwareImagePathLAN = "%SystemRoot%\System32\drivers\"$(P21LAN)
NetRuleSoftwareTypePPP = "ProDsl21Sys ProDsl21Driver"
NetRuleSoftwareTypeLAN = "ProDsl21Sys ndisDriver ProDsl21Driver"
ProductHardwareName = $(SoftwareName)
DeviceMap = "HARDWARE\DEVICEMAP"
TapiDevices = "TAPI DEVICES"
TapiDeviceKey = $(ProductHardwareName)
TapiMediaType = "ADSL"
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"+
$(SoftwareName)"\CurrentVersion"
ProDslEXE = "ProDsl.EXE"
ProDslHLP = "ProDsl.HLP"
DslHelpHLP = "DslHelp.HLP"
ProDslDLL = "ProDsl.DLL"
DslFileLocation = "c:\intel\dslsetup"
LaMesaName = "2100"
LaMesaVer = "1.2.0.0"
EnableDHCPPath1 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"1"
EnableDHCPPath2 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"2"
EnableDHCPPath3 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"3"
EnableDHCPPath4 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"4"
EnableDHCPPath5 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"5"
EnableDHCPPath6 = "System\CurrentControlSet\Services\"+
$(SoftwareName)"6"
EnableDHCP = "EnableDHCP"
DefaultDHCP = 1
; FIXME - Set to zero before release
DebugFlags = 0
;***********************************************************************
[GeneralConstants]
from = ""
to = ""
ExitCodeOk = 0
ExitCodeCancel = 1
ExitCodeFatal = 2
KeyNull = ""
MAXIMUM_ALLOWED = 33554432
RegistryErrorIndex = NO_ERROR
KeyProduct = ""
KeyParameters = ""
KeyServiceName = ""
TRUE = 1
FALSE = 0
NoTitle = 0
ExitState = "Active"
OldVersionExisted = $(FALSE)
DriverPath = $(!STF_NTPATH)\drivers
[VendorDeviceIDs]
{32902, 20481} ; 0x8086, 0x5001 ; "we need subvendor/subdevice support!"
; { 4814, 1} ; 0x12CE, 0x0001
[SoftwareCurrentVersion]
; HKLM\SOFTWARE\[Mfg]\[Product]\CurrentVersion
{SoftwareType, $(NoTitle), $(!REG_VT_SZ), "driver"}
{MajorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductMajorVersion)}
{MinorVersion, $(NoTitle), $(!REG_VT_DWORD), $(ProductMinorVersion)}
{Title, $(NoTitle), $(!REG_VT_SZ), $(ProductSoftwareTitle)}
{Description, $(NoTitle), $(!REG_VT_SZ), $(ProductSoftwareDescription)}
{ServiceName, $(NoTitle), $(!REG_VT_SZ), $(SoftwareName)}
{InstallDate, $(NoTitle), $(!REG_VT_DWORD), *($(Now),1)}
[SoftwareNetBindRules]
; HKLM\SOFTWARE\[Mfg]\[Product]\CurrentVersion\NetRules
{type, $(NoTitle), $(!REG_VT_SZ), $(LocalSoftwareType)}
{use, $(NoTitle), $(!REG_VT_SZ), "driver"}
{bindform, $(NoTitle), $(!REG_VT_SZ), """"$(SoftwareName)"Sys"" yes no container"}
{class, $(NoTitle), $(!REG_VT_MULTI_SZ),{$(SoftwareName)"Driver basic"}}
{bindable, $(NoTitle), $(!REG_VT_MULTI_SZ),{$(SoftwareName)"Driver "$(SoftwareName)"Adapter non exclusive 100"}}
{InfOption, $(NoTitle), $(!REG_VT_SZ), $(Option)}
[NetworkCardValues]
; HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\[x]
{Manufacturer, $(NoTitle), $(!REG_VT_SZ), $(Manufacturer)}
{Title, $(NoTitle), $(!REG_VT_SZ), "["$(AdapterNumber)"] "$(ProductHardware$(Option)Title)}
{Description, $(NoTitle), $(!REG_VT_SZ), $(ProductHardware$(Option)Description)" [Slot "$(SlotNumber)"]"}
{ProductName, $(NoTitle), $(!REG_VT_SZ), $(ProductHardwareName)}
{ServiceName, $(NoTitle), $(!REG_VT_SZ), $(SoftwareName)$(AdapterNumber)}
{InstallDate, $(NoTitle), $(!REG_VT_DWORD), *($(Now),1)}
[HardwareNetBindRules]
; HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\[x]\NetRules
{type, $(NoTitle), $(!REG_VT_SZ), $(SoftwareName)" "$(SoftwareName)"Adapter"}
{bindform, $(NoTitle), $(!REG_VT_SZ), """"$(SoftwareName)$(AdapterNumber)""" yes yes container"}
{class, $(NoTitle), $(!REG_VT_MULTI_SZ),{$(SoftwareName)"Adapter basic"}}
{InfOption, $(NoTitle), $(!REG_VT_SZ), $(Option)}
[ProDsl21LANParameters]
; HKLM\SYSTEM\CurrentControlSet\Services\[miniport instance]\Parameters
{AdapterNumber, $(NoTitle), $(!REG_VT_DWORD), $(AdapterNumber) }
{Baud, $(NoTitle), $(!REG_VT_DWORD), 3 }
{BusNumber, $(NoTitle), $(!REG_VT_DWORD), $(BusNumber) }
{BusType, $(NoTitle), $(!REG_VT_DWORD), 5 }
{DeviceName, $(NoTitle), $(!REG_VT_SZ), $(ProductHardwareName)}
{Rfc1483Mode, $(NoTitle), $(!REG_VT_DWORD), 0 }
{Rfc1483VCI, $(NoTitle), $(!REG_VT_DWORD), 1 }
{Rfc1483VPI, $(NoTitle), $(!REG_VT_DWORD), 1 }
{SlotNumber, $(NoTitle), $(!REG_VT_DWORD), $(SlotNumber) }
{TxPower, $(NoTitle), $(!REG_VT_DWORD), 0 }
; {AlwaysConnect, $(NoTitle), $(!REG_VT_DWORD), 1 } ; temp
; {AutoRetrainMode,$(NoTitle),$(!REG_VT_DWORD), 1 } ; temp
[ProDsl21PPPParameters]
; HKLM\SYSTEM\CurrentControlSet\Services\[miniport instance]\Parameters
{AdapterNumber, $(NoTitle), $(!REG_VT_DWORD), $(AdapterNumber) }
{AddressList, $(NoTitle), $(!REG_VT_MULTI_SZ),{$(AdapterNumber)" 1 0"}}
{Baud, $(NoTitle), $(!REG_VT_DWORD), 3 }
{BusNumber, $(NoTitle), $(!REG_VT_DWORD), $(BusNumber) }
{BusType, $(NoTitle), $(!REG_VT_DWORD), 5 }
{DeviceName, $(NoTitle), $(!REG_VT_SZ), $(ProductHardwareName)}
{Rfc2364VCI, $(NoTitle), $(!REG_VT_DWORD), 1 }
{Rfc2364VPI, $(NoTitle), $(!REG_VT_DWORD), 1 }
{SlotNumber, $(NoTitle), $(!REG_VT_DWORD), $(SlotNumber) }
{StripHDLC, $(NoTitle), $(!REG_VT_DWORD), 0 }
{TxPower, $(NoTitle), $(!REG_VT_DWORD), 0 }
;*******************************************************************************
; Detect sections. These sections are called using the detect command.
;*******************************************************************************
[Date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
;*******************************************************************************
; Returns information to Setup about the type of driver or drivers that
; can be installed by this INF file.
;*******************************************************************************
[Identify]
Return STATUS_SUCCESSFUL NetAdapter ""
;*******************************************************************************
; This section returns information to the Setup program, listing the
; names of any drivers that can be installed by this INF file. It also
; returns the text strings for each driver (in the requested language)
; to be used in the dialog box that asks the user to select the driver
; to install.
;*******************************************************************************
[ReturnOptions]
Set Status = STATUS_FAILED
Set OptionList = {}
Set OptionTextList = {}
Set LanguageList = ^(LanguagesSupported, 1)
IfContains(i) $($0) in $(LanguageList)
IfStr(i) $($1) == ""
GoTo SetOptions
EndIf
Set PlatformList = ^(PlatformsSupported, 1)
IfContains(i) $($1) in $(PlatformList)
GoTo SetOptions
Else
Set Status = STATUS_NOTSUPPORTED
GoTo ExitReturnOptions
EndIf
Else
Set Status = STATUS_NOLANGUAGE
GoTo ExitReturnOptions
EndIf
SetOptions = +
Set OptionList = ^(Options, 1)
Set OptionTextList = ^(OptionsText$($0), 1)
Set Status = STATUS_SUCCESSFUL
ExitReturnOptions = +
Return $(Status) $(OptionList) $(OptionTextList)
;*******************************************************************************
; If the [ReturnOptions] section returns successfully, indicating the
; language is supported, Setup displays a dialog box from which the user
; can select a driver to install. If the user proceeds with the
; installation, Setup calls the [InstallOption] section.
;*******************************************************************************
[InstallOption]
Set Status = STATUS_FAILED
Set Option = $($1)
Set SrcDir = $($2)
Set RasDir = $($2)
Set AddCopy = $($3)
Set DoCopy = $($4)
Set DoConfig = $($5)
Set LanguageList = ^(LanguagesSupported, 1)
IfContains(i) $($0) NOT-IN $(LanguageList)
Return STATUS_NOLANGUAGE
EndIf
;
; FIXME - make sure this flag is disabled before shipping
; must goto end at any point after this to disable debugging correcly
;
Set OldDebugControl = $(!DebugOutputControl)
Set !G:DebugOutputControl = 0
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)$(Option)
Set to = Begin
Set from = Begin
Set CommonStatus = STATUS_SUCCESSFUL
;***********************************************************************
Begin = +
Set ActivateDetection = FALSE
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 StartLabel = ConfigureAdapter
Set ActivateDetection = TRUE
Set CommonStatus = STATUS_REBOOT
IfStr(i) $(ProductKeyName) == $(!NTN_RegBase)
Debug-Output $(InfName)": Cannot configure the driver software."
Shell "Utility.Inf",RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
GoTo ShellCodeError
EndIf
Set Error = $($R0)
Set from = end
Set to = end
GoTo NonFatalInfo
EndIf
Else
Set StartLabel = InstallAdapter
Set ActivateDetection = TRUE
Set OEM_ABANDON_OPTIONS = {}
Set OEM_ABANDON_SOFTWARE = FALSE
Set OEM_ABANDON_ON = TRUE
EndIf
Debug-Output $(InfName)": =================================================="
Debug-Output $(InfName)": STF_CWDIR is: "$(!STF_CWDIR)
Debug-Output $(InfName)": STF_LANGUAGE is: "$(!STF_LANGUAGE)
Debug-Output $(InfName)": Option is: "$(Option)
Debug-Output $(InfName)": !STF_NCDETECT is: "$(!STF_NCDETECT)
Debug-Output $(InfName)": !STF_NCOPTION is: "$(!STF_NCOPTION)
Debug-Output $(InfName)": !STF_NCDETCARD is: "$(!STF_NCDETCARD)
Debug-Output $(InfName)": !STF_NCDETINFO is: "$(!STF_NCDETINFO)
Debug-Output $(InfName)": =================================================="
Set DetectedCard = FALSE
IfStr(i) $(ActivateDetection) != TRUE
GoTo $(StartLabel)
EndIf
Debug-Output $(InfName)": Calling Param_SetDefaults"
Shell $(ParamInf) Param_SetDefaults {}
IfStr(i) $(!STF_NCDETECT) == YES
IfStr(i) $(!STF_NCOPTION) == $(Option)
Set DetectedCard = TRUE
Debug-Output $(InfName)": Setting DetectedCard to TRUE"
EndIf
EndIf
; Shell "" DebugConfiguration "After parameter querying"
Set from = FatalError
Set to = FatalError
GoTo $(StartLabel)
;*******************************************************************************
; Called when the user clicks the Add button in the NCPA.
;*******************************************************************************
InstallAdapter = +
;-----------------------------------------------------------------------
; NT 3.50 & 3.51 are not supported, so give user the bad news
;-----------------------------------------------------------------------
OpenRegKey $(!REG_H_LOCAL) "" +
"SOFTWARE\Microsoft\Windows NT\CurrentVersion" +
$(!REG_KEY_READ) hKeyWinNT
GetRegValue $(hKeyWinNT) "CurrentVersion" CurrentVersion
Set WinNTVersion = *($(CurrentVersion), 4)
CloseRegKey $(hKeyWinNT)
ifcontains(i) $(WinNTVersion) in {"3.50", "3.51"}
Shell $(subroutineinf) SetupMessage $(!STF_LANGUAGE) "STATUS" +
"NT 3.50 and NT 3.51 are not supported."
Set CommonStatus = STATUS_USERCANCEL
goto end
EndIf
; find a card we support
Set BusDevFuncList = {}
ForListDo ^(VendorDeviceIDs, 1)
Shell "Utility.Inf", GetPCIInformation, *($($), 1), *($($), 2)
ForListDo $($R0)
Set BusDevFuncList = >($(BusDevFuncList), $($))
EndForListDo
EndForListDo
; Check for an empty adapter list and abort with error if empty.
IfStr $(BusDevFuncList) == {}
Shell "Subroutn.Inf" SetupMessage $(!STF_LANGUAGE) "STATUS" +
"No supported adapters were found in the system. "+
"Install the adapter in another PCI slot and try again."
Set CommonStatus = STATUS_USERCANCEL
goto end
EndIf
;-----------------------------------------------------------------------
; Search through the bus/slot/function list looking for previously
; installed adapters that match. A match is found by searching through
; the installed miniport instances and matching on bus/slot. If a match
; is found, assume that the adapter is already setup and remove the
; adapter from the bus/slot/function list.
;-----------------------------------------------------------------------
Set NewBusDevFuncList = {}
ForListDo $(BusDevFuncList)
Set BusNumber = *($($), 1)
Set SlotNumber = *($($), 2)
Shell "Utility.Inf", IsNetCardAlreadyInstalled, $(BusNumber), +
$(SlotNumber), "", "", "YES"
IfStr $($R1) != "YES"
Set NewBusDevFuncList = >($(NewBusDevFuncList), $($))
EndIf
EndForListDo
Set BusDevFuncList = $(NewBusDevFuncList)
; Check for an empty adapter list. If the list is empty, it means that
; all detected adapters already have a NetworkCard entry in the
; registry, or some rogue NetworkCard is pretending to be the software
; key for this adapter. In any case, we're done. The user can remove
; the rogue NetworkCard and reinstall with this software if they want.
IfStr $(BusDevFuncList) == {}
Set CommonStatus = STATUS_USERCANCEL
goto end
EndIf
;-----------------------------------------------------------------------
; Create the software component (service) if it doesn't already exist.
;-----------------------------------------------------------------------
OpenRegKey $(!REG_H_LOCAL) "" $(SoftwareKeyName) $(!REG_KEY_READ) hKey
IfStr $(hKey) == ""
; The software component didn't exist...Let's create it.
IfStr(i) $(Option) == "ProDsl21LAN"
Set LocalImagePath = $(ProductSoftwareImagePathLAN)
Else
Set LocalImagePath = $(ProductSoftwareImagePathPPP)
EndIf
Shell "Utility.Inf", AddSoftwareComponent, $(Manufacturer), +
$(SoftwareName), +
$(SoftwareName), +
$(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
$(LocalImagePath), "kernelautostart", "NDIS", {}, "",+
$(NetEventDLL)
Set hKeyCurrentVersion = $($R1)
Set hKeyNetRule = $($R2)
; Insert other details to the software component's current
; version key.
Shell "Utility.Inf", AddValueList, $(hKeyCurrentVersion), +
^(SoftwareCurrentVersion, 1)
IfStr(i) $(Option) == "ProDsl21LAN"
Set LocalSoftwareType = $(NetRuleSoftwareTypeLAN)
Else
Set LocalSoftwareType = $(NetRuleSoftwareTypePPP)
EndIf
; Insert the net bind rules.
Shell "Utility.Inf", AddValueList, $(hKeyNetRule), +
^(SoftwareNetBindRules, 1)
EndIf
CloseRegKey $(hKey)
QueryListSize ListSize BusDevFuncList
Debug-Output $(InfName)": Found $(ListSize) uninstalled adapters"
;-----------------------------------------------------------------------
; For each detected adapter, create a hardware component (miniport
; instance).
;-----------------------------------------------------------------------
ForListDo $(BusDevFuncList)
; Get Bus and Slot from PCI device information
Set BusNumber = *($($), 1)
Set SlotNumber = *($($), 2)
; Create a new miniport instance, AKA hardware component.
Shell "Utility.Inf", AddHardwareComponent, $(SoftwareName), +
$(STF_CONTEXTINFNAME), $(SoftwareKeyName)
Set hKeyNetCard = $($R1)
Set hKeyNetRule = $($R2)
Set hKeyParameter = $($R3)
Set AdapterNumber = $($R4)
; Insert other details to the NetworkCard key.
Shell "Utility.Inf", AddValueList, $(hKeyNetCard), +
^(NetworkCardValues, 1)
; Add the miniport parameters.
IfStr(i) $(Option) == "ProDsl21LAN"
Shell "Utility.Inf", AddValueList, $(hKeyParameter), +
^(ProDsl21LANParameters, 1)
Else
Shell "Utility.Inf", AddValueList, $(hKeyParameter), +
^(ProDsl21PPPParameters, 1)
Endif
; Insert the net bind rules.
Shell "Utility.Inf", AddValueList, $(hKeyNetRule), +
^(HardwareNetBindRules, 1)
; Install unattended answer file overrides if running in
; unattended mode.
IfStr(i) $(!STF_GUI_UNATTENDED) == "YES"
Shell "Utility.Inf", AddDefaultNetCardParameters, +
$(hKeyParameter)
EndIf
EndForListDo
;-----------------------------------------------------------------------
; Install the driver, and support files
;-----------------------------------------------------------------------
Install "Install-Option"
;-----------------------------------------------------------------------
; Setup Product Version
;-----------------------------------------------------------------------
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Intel\DslSetup\ProductVersion" $(!REG_KEY_SET_VALUE) KeyVersion
IfStr $(KeyVersion) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {"SOFTWARE\Intel\DslSetup\ProductVersion",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyVersion
Endif
SetRegValue $(KeyVersion) {$(LaMesaName), 0, $(!REG_VT_SZ), $(LaMesaVer)}
CloseRegKey $(KeyVersion)
;-----------------------------------------------------------------------
; set up to run our application in the Windows\CurrentVersion\Run key
;-----------------------------------------------------------------------
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" $(!REG_KEY_SET_VALUE) KeyWinRun
SetRegValue $(KeyWinRun) {$(ProDslEXE), 0, $(!REG_VT_SZ), $(ProDslEXE)}
CloseRegKey $(KeyWinRun)
;-----------------------------------------------------------------------
; Default DHCP support
;-----------------------------------------------------------------------
; I don't know how to do while loop, so try about 6 adapters than give up
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath1) $(!REG_KEY_SET_VALUE) KeyDHCP
; IfStr $(KeyDHCP) == $(KeyNull)
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath2) $(!REG_KEY_SET_VALUE) KeyDHCP
; IfStr $(KeyDHCP) == $(KeyNull)
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath3) $(!REG_KEY_SET_VALUE) KeyDHCP
; IfStr $(KeyDHCP) == $(KeyNull)
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath4) $(!REG_KEY_SET_VALUE) KeyDHCP
; IfStr $(KeyDHCP) == $(KeyNull)
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath5) $(!REG_KEY_SET_VALUE) KeyDHCP
; IfStr $(KeyDHCP) == $(KeyNull)
; Set hDHCPPath = $(EnableDHCPPath6)
; OpenRegKey $(!REG_H_LOCAL) "" $(EnableDHCPPath6) $(!REG_KEY_SET_VALUE) KeyDHCP
; Endif
; Endif
; Endif
; Endif
; Endif
;
; CreateRegKey $(KeyDHCP) {"Parameters\Tcpip",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyTcpip
; SetRegValue $(KeyTcpip) {$(EnableDHCP), 0, $(!REG_VT_DWORD), $(DefaultDHCP)}
; CloseRegKey $(KeyTcpip)
; CloseRegKey $(KeyDHCP)
;-----------------------------------------------------------------------
; upgrade the common control dll if need be
;-----------------------------------------------------------------------
RunProgram ExitCode "" "" $(SrcDir)\401com~1.exe /r:n /q:a
;-----------------------------------------------------------------------
; check for TCP/IP, we will pretty much ALWAYS want TCP installed
;-----------------------------------------------------------------------
set KeyService = $(KeyNull)
set DeleteFlag = 0
set DeleteFlagInfo = {}
set TCPIPInstalled = FALSE
Debug-Output $(InfName)": before checking, Tcp/Ip handle is "$(KeyService)
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Services\Tcpip" $(!REG_KEY_READ) KeyService
Debug-Output $(InfName)": Tcp/Ip handle is "$(KeyService)
Ifstr(i) $(KeyService) != $(KeyNull)
GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo
set DeleteFlag = *($(DeleteFlagInfo), 4)
ifint $(DeleteFlag) != 1
set TCPIPInstalled = TRUE
endif
CloseRegKey $(KeyService)
endif
IfStr(i) $(TCPIPInstalled) == FALSE
Debug-Output $(InfName)": TCP/IP is not installed"
; start a TCPIP install
Set PREV_SRCDIR = $(!STF_SRCDIR_OVERRIDE)
Set !STF_SRCDIR_OVERRIDE = ""
Set BbIndex = 2
read-syms Billboard$(BbIndex)$(!STF_LANGUAGE)
Shell "subroutn.inf" PushBillboard NETSTATUSDLG $(Status)
Set BillboardVisible = 1
Debug-Output $(InfName)": before calling tcp/ip install"
set AddCopy = YES
set DoCopy = YES
set DoConfig = YES
set InvokedByRas = NO
set SaveNTN_InstallMode = $(!NTN_InstallMode)
set SaveSTF_INSTALL_MODE = $(!STF_INSTALL_MODE)
set !NTN_InstallMode = install
set !STF_INSTALL_MODE = EXPRESS
Shell "oemnxptc.inf" InstallOption $(!STF_LANGUAGE) TC $(!STF_SRCDIR) $(AddCopy) $(DoCopy) $(DoConfig) $(InvokedByRas)
set !NTN_InstallMode = $(SaveNTN_InstallMode)
set !STF_INSTALL_MODE = $(SaveSTF_INSTALL_MODE)
set !STF_SRCDIR_OVERRIDE = $(PREV_SRCDIR)
Debug-Output $(InfName)": OKAY! We installed Tcp/Ip"
IfInt $(BillboardVisible) != 0
Shell "subroutn.inf" PopBillboard
Set BillboardVisible = 0
Endif
Else
Debug-Output $(InfName)": OKAY! Tcp/Ip is installed"
EndIf
Debug-Output $(InfName)": after calling tcp/ip install"
Debug-Output $(InfName)": !STF_SRCDIR is: "$(!STF_SRCDIR)
Debug-Output $(InfName)": !STF_SRCDIR_OVERRIDE is: "$(!STF_SRCDIR_OVERRIDE)
GoTo WriteParameters
;***********************************************************************
; called when the user hits the Properties Button in the Network Adapter page
; we don't support this right now
;***********************************************************************
ConfigureAdapter = +
Debug-Output "$(InfFile) $(Option): Configureadapter"
set Error = "Cannot configure the software component"
goto FatalError
;***********************************************************************
; This section just takes care of setting up our tapi registration and
; calling RAS setup if need be, then calling RAS configuration
;***********************************************************************
WriteParameters = +
Debug-Output $(InfName)": Writing TAPI Parameters"
; skip out of the rest of the install if its the 1483 driver
IfStr(i) $(Option) == "ProDsl21LAN"
Debug-Output $(InfName)": Assuming rfc1483, skipping tapi setup"
GoTo SuccessfulOption
EndIf
; Skip TAPI/RAS setup if already installed.
IfStr(i) $(!NTN_InstallMode) == configure
GoTo SuccessfulOption
EndIf
; Create the HARDWARE\DEVICEMAP\TAPI DEVICES\ProDsl21 key
OpenRegKey $(!REG_H_LOCAL) "" "HARDWARE\DEVICEMAP" $(MAXIMUM_ALLOWED) BaseKey
shell "" HtCreateRegKey $(BaseKey) "TAPI DEVICES\ProDsl21"
IfStr(i) $($R0) != NO_ERROR
Debug-Output $(InfName)": Error creating registry key!"
GoTo FatalRegistry
EndIf
Set TapiDeviceKey = $($R1)
Set NewValueList = {+
{Address,$(NoTitle),$(!REG_VT_MULTI_SZ),{$(AdapterNumber)" 1 0"}},+
{"Media Type",$(NoTitle),$(!REG_VT_SZ),$(TapiMediaType)}}
Shell "Utility.Inf", AddValueList, $(TapiDeviceKey), $(NewValueList)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": ShellCode error."
GoTo ShellCodeError
EndIf
Set RegistryErrorIndex = $($R0)
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
Debug-Output $(InfName)": Registry error: Add value list"
GoTo FatalRegistry
EndIf
CloseRegKey $(TapiDeviceKey)
CloseRegKey $(BaseKey)
; if RAS is not installed, then shell ras setup INF file to install RAS
; else invoke RAS to allow user to configure RAS
Read-Syms InvokeRasDlg$(!STF_LANGUAGE)
Shell "oemnsvra.inf" CheckRasInstalled
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), +
"STATUS", $(InvokeRasError)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
GoTo ShellCodeError
EndIf
GoTo RASSetup
EndIf
Set RasInstalled = $($R0)
Debug-Output $(InfName)": Is RAS Installed? "$(RasInstalled)
; display a message to the user that RAS setup will now be invoked
IfStr(i) $(RasInstalled) == FALSE
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "STATUS", +
$(InvokeRasSetupMsg)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
GoTo RASSetup
EndIf
Else
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "STATUS", +
$(InvokeRasConfigMsg)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
GoTo RASSetup
EndIf
EndIf
; FIXME - RAS INF will not locate the files if it is spawned here.
RASSetup =+
Set AddCopy = YES
Set DoCopy = YES
Set DoConfig = YES
IfStr(i) $(RasInstalled) == TRUE
Set SaveNTN_InstallMode = $(!NTN_InstallMode)
Set !NTN_InstallMode = configure
EndIf
Set PREV_SRCDIR = $(!STF_SRCDIR_OVERRIDE)
Set !STF_SRCDIR_OVERRIDE = ""
Shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" $(RasDir) $(AddCopy) $(DoCopy) $(DoConfig)
set !STF_SRCDIR_OVERRIDE = $(PREV_SRCDIR)
IfStr(i) $(RasInstalled) == TRUE
Set !NTN_InstallMode = $(SaveNTN_InstallMode)
EndIf
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "STATUS", +
$(InvokeRasError)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
GoTo ShellCodeError
EndIf
GoTo SuccessfulOption
EndIf
; check for a service pack only if we actually installed RAS
IfStr(i) $(RasInstalled) == FALSE
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion" $(!REG_KEY_READ) hKeySPVersion
GetRegValue $(hKeySPVersion) "CSDVersion" SPString
IfInt $(RegLastError) == 0
Set !ServicePack = *($(SPString), 4)
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "STATUS", +
$(InstallSPMessage)$(!ServicePack).
EndIf
CloseRegKey $(BaseKey)
EndIf
GoTo SuccessfulOption
;***********************************************************************
BindingAdapter =+
Set Error = "Binding: Sorry, not yet implemented."
GoTo FatalError
;***********************************************************************
RemoveAdapter = +
IfStr(i) $(Option) == "ProDsl21PPP"
Read-Syms RemoveRasDlg$(!STF_LANGUAGE)
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "STATUS", +
$(RemoveRasSetupMsg)
EndIf
;-----------------------------------------------------------------------
; Delete the hardware component (miniport instance). If this is the
; last instance, the software component will be deleted as well.
;-----------------------------------------------------------------------
Shell "Utility.Inf", RemoveHardwareComponent, $(Manufacturer), +
$(SoftwareName), $(!NTN_RegBase)
; remove our tapi devices entry we created to allow RAS to find us
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\RAS\TAPI DEVICES" $(MAXIMUM_ALLOWED) BaseKey
IfStr $(BaseKey) != $(KeyNull)
DeleteRegTree $(BaseKey) $(SoftwareName)
EndIf
CloseRegKey $(BaseKey)
; remove our run entry
OpenRegKey $(!REG_H_LOCAL) "" +
"SOFTWARE\Microsoft\Windows\CurrentVersion\Run" +
$(!REG_KEY_SET_VALUE) KeyWinRun
DeleteRegValue $(KeyWinRun) $(ProDslEXE)
CloseRegKey $(KeyWinRun)
; remove our registry entries
RunProgram ExitCode "" "" $(!STF_WINDOWSPATH)\$(ProDslEXE) /UNREGISTER
; get rid of the other files we installed
AddFileToDeleteList $(!STF_WINDOWSPATH)\$(ProDslEXE)
AddFileToDeleteList $(!STF_WINDOWSPATH)\$(ProDslHLP)
AddFileToDeleteList $(!STF_WINDOWSPATH)\$(DslHelpHLP)
AddFileToDeleteList $(!STF_WINDOWSPATH)\DSLDHCP.EXE
AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\$(ProDslDLL)
AddFileToDeleteList $(DslFileLocation)\SUPPORT.TXT
AddFileToDeleteList $(DslFileLocation)\NTREADME.WRI
; remove our directory with a non fatal action if it fails
; RemoveDir $(DslFileLocation)
IfStr(i) $(Option) == "ProDsl21LAN"
AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\drivers\$(P21LAN)
Else
AddFileToDeleteList $(!STF_WINDOWSSYSPATH)\drivers\$(P21PPP)
EndIf
GoTo end
;***********************************************************************
UpgradeSoftware = +
; Upgrade software component
;
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) != $(KeyNull)
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": ShellCode error"
goto ShellCodeError
endif
set !UG_Filename = $($R0)
Debug-Output $(InfName)": !UG_Filename = "$(!UG_Filename)
ifstr(i) $(!UG_Filename) != ""
install "Install-Update"
ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
goto fatal
endif
endif
; Upgrade the version number
;
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)}
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)}
;
; do nothing for update
;
CloseRegKey $(KeyProduct)
;-----------------------------------------------------------------------
; Setup Product Version
;-----------------------------------------------------------------------
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Intel\DslSetup\ProductVersion" $(!REG_KEY_SET_VALUE) KeyVersion
IfStr $(KeyVersion) == $(KeyNull)
CreateRegKey $(!REG_H_LOCAL) {"SOFTWARE\Intel\DslSetup\ProductVersion",0,GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyVersion
SetRegValue $(KeyVersion) {$(LaMesaName), 0, $(!REG_VT_SZ), $(LaMesaVer)}
CloseRegKey $(KeyVersion)
Endif
else
;
; Cannot Open software key, goto ERROR
;
goto fatalregistry
endif
;
; NOTE: if we ever support more than one adapter, we will need to
; enumerate all netcards installed of this type and update them
;
goto end
;
; End of Upgrade Software
;
;***********************************************************************
SuccessfulOption = +
GoTo end
;***********************************************************************
Abandon = +
ForListDo $(OEM_ABANDON_OPTIONS)
Shell "Utility.Inf", RemoveHardwareComponent, $(Manufacturer), +
$(SoftwareName), $($)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": ShellCode error"
GoTo ShellCodeError
EndIf
Set RegistryErrorIndex = $($R0)
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
GoTo FatalRegistry
EndIf
EndForListDo
IfStr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
Shell "Utility.Inf", RemoveSoftwareComponent, $(Manufacturer), +
$(SoftwareName), FALSE
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
Debug-Output $(InfName)": ShellCode error"
GoTo ShellCodeError
EndIf
Set RegistryErrorIndex = $($R0)
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
GoTo FatalRegistry
EndIf
EndIf
GoTo end
;***********************************************************************
WarningMsg = +
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)
EndIf
GoTo end
;***********************************************************************
NonFatalInfo = +
Set Severity = STATUS
Set CommonStatus = STATUS_USERCANCEL
IfStr(i) $(Error) == ""
Set Severity = NONFATAL
Shell "Utility.Inf" 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)
EndIf
GoTo end
;***********************************************************************
FatalRegistry = +
Shell "Utility.Inf" RegistryErrorString $(RegistryErrorIndex)
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
GoTo ShellCodeError
EndIf
Set Error = $($R0)
GoTo FatalError
;***********************************************************************
FatalError = +
IfStr(i) $(Error) == ""
Shell "Utility.Inf" 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 = +
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 = +
Set !DebugOutputControl = $(OldDebugControl)
Return $(CommonStatus)
;***********************************************************************
[HtCreateRegKey]
Debug-Output $(InfName)": Entering [HtCreateRegKey]"
Set ECR_Result = NO_ERROR
Set ECR_BaseKeyHandle = $($0)
Set ECR_NewPath = $($1)
Set KeyNull = ""
Set MAXIMUM_ALLOWED = 33554432
Debug-Output $(InfName)": HtCreateRegKey - ECR_BaseKeyHandle = "$(ECR_BaseKeyHandle)
Debug-Output $(InfName)": ECR_NewPath = "$(ECR_NewPath)
Debug-Output $(InfName)": MAXIMUM_ALLOWED = "$(MAXIMUM_ALLOWED)
Debug-Output $(InfName)": KeyNull = "$(KeyNull)
OpenRegKey $(ECR_BaseKeyHandle) "" $(ECR_NewPath) $(MAXIMUM_ALLOWED) +
ECR_BaseKey
Debug-Output $(InfName)": ECR_BaseKey = "$(ECR_BaseKey)
Debug-Output $(InfName)": OpenRegKey returned "$($R0)
IfStr $(ECR_BaseKey) == $(KeyNull)
Debug-Output $(InfName)": ECR_BaseKey == KeyNull"
Else
Debug-Output $(InfName)": ECR_BaseKey != KeyNull"
Set ECR_KeyHandle = $(ECR_BaseKey)
GoTo ECR_Return
EndIf
Set ECR_TmpPath = ""
Split-String $(ECR_NewPath) "\" ECR_PList
Debug-Output $(InfName)": ECR_PList = "$(ECR_PList)
ForListDo $(ECR_PList)
IfStr(i) $($) != "\"
IfInt $(#) == 1
Set ECR_TmpPath = $($)
Else
Set ECR_TmpPath = $(ECR_TmpPath)"\"$($)
EndIf
Debug-Output $(InfName)": Determining if "$(ECR_TmpPath)" exists"
OpenRegKey $(ECR_BaseKeyHandle) "" $(ECR_TmpPath) $(MAXIMUM_ALLOWED) ECR_BaseKey
IfStr $(ECR_BaseKey) == $(KeyNull)
Debug-Output $(InfName)": Creating "$(ECR_TmpPath)
CreateRegKey $(ECR_BaseKeyHandle) {$(ECR_TmpPath),0,GenericClass} "" $(MAXIMUM_ALLOWED) "" ECR_KeyHandle
IfStr(i) $(ECR_KeyHandle) == $(KeyNull)
Set ECR_Result = $($R0)
GoTo ECR_Return
EndIf
EndIf
EndIf
EndForListDo
ECR_Return = +
Return $(ECR_Result) $(ECR_KeyHandle)
;***********************************************************************
[DebugConfiguration]
Debug-Output $(!p:InfName)": **CONFIGURATION STATE: "$($0)
; Debug-Output $(!p:InfName)": InterruptNumber is "$(!p:InterruptNumber)
Debug-Output $(!p:InfName)": RamBaseAddress is "$(!p:RamBaseAddress)
Return
;***********************************************************************
[Install-Option]
Set STF_VITAL = ""
IfStr(i) $(AddCopy) == "YES"
AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-ProDslManagerNT $(SrcDir) $(!STF_WINDOWSPATH)
AddSectionFilesToCopyList Files-ProDslManagerSYS $(SrcDir) $(!STF_WINDOWSSYSPATH)
; create the directory c:\intel\dslsetup $(DslFileLocation) (not fatal if fails)
CreateDir "c:\Intel"
CreateDir "c:\Intel\DslSetup"
; copy to the new directory
AddSectionFilesToCopyList Files-ProDslSupport $(SrcDir) $(DslFileLocation)
EndIf
IfStr(i) $(DoCopy) == "YES"
Set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
EndIf
Exit
;***********************************************************************
[Install-Update]
Set STF_VITAL = ""
Set STF_OVERWRITE = "VERIFYSOURCEOLDER"
AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
AddSectionFilesToCopyList Files-ProDslManagerNT $(SrcDir) $(!STF_WINDOWSPATH)
AddSectionFilesToCopyList Files-ProDslManagerSYS $(SrcDir) $(!STF_WINDOWSSYSPATH)
AddSectionFilesToCopyList Files-ProDslSupport $(SrcDir) $(DslFileLocation)
;
; Copy over this .INF file.
;
AddSectionFilesToCopyList Files-ProDSLNT4INF $(SrcDir) $(!STF_WINDOWSSYSPATH)
;
; We have renamed P21DHCP.EXE -> DSLDHCP.EXE. Be good citizens and remove the old
; file
;
AddFileToDeleteList $(!STF_WINDOWSPATH)\P21DHCP.EXE
Set !STF_NCPA_FLUSH_COPYLIST = TRUE
CopyFilesInCopyList
Exit
;***********************************************************************
[Source Media Descriptions]
1 = "Intel(R) PRO/DSL 2100 Modem CD-ROM"
;***********************************************************************
[ProductType]
STF_PRODUCT = Winnt
STF_PLATFORM = I386
;***********************************************************************
[Files-ProDsl21PPP]
1, P21CN4W.SY_, SIZE=189180, RENAME=P21CN4W.SYS
[Files-ProDsl21LAN]
1, P21CN4L.SY_, SIZE=189180, RENAME=P21CN4L.SYS
[Files-ProDslManagerNT]
1, PRODSL.EX_, SIZE=50000, RENAME=$(ProDslEXE)
1, $(ProDslHLP), SIZE=50000
1, $(DslHelpHLP),SIZE=50000
1, DSLDHCP.EX_, SIZE=50000, RENAME=DSLDHCP.EXE
[Files-ProDslManagerSYS]
1, PRODSL.DL_, SIZE=50000, RENAME=$(ProDslDLL)
[Files-ProDslSupport]
1, SUPPORT.TXT, SIZE=50000
1, NTREADME.WRI, SIZE=50000
[Files-ProDSLNT4INF]
1, OEMSETUP.INF, SIZE=50000, RENAME=$(!UG_Filename)
;***********************************************************************
[LanguagesSupported]
ENG
;***********************************************************************
[OptionsTextENG]
ProDsl21PPP = "Intel(R) PRO/DSL 2100 Modem for PPP"
ProDsl21LAN = "Intel(R) PRO/DSL 2100 Modem for Bridged Ethernet (1483)"
;***********************************************************************
[FileConstantsENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
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:"
FunctionTitleProDsl21PPP = "Intel(R) PRO/DSL 2100 Modem Setup"
FunctionTitleProDsl21LAN = "Intel(R) PRO/DSL 2100 Modem Setup"
ProductSoftwareDescription = "Intel(R) PRO/DSL Driver"
ProductHardwareProDsl21PPPDescription = "Intel(R) PRO/DSL 2100 Modem - PPP"
ProductHardwareProDsl21LANDescription = "Intel(R) PRO/DSL 2100 Modem - Bridged Ethernet (1483)"
; shows in devices
ProductSoftwareTitle = "Intel(R) PRO/DSL 2100 Modem"
ProductHardwareProDsl21PPPTitle = "Intel(R) PRO/DSL 2100 Modem - PPP"
ProductHardwareProDsl21LANTitle = "Intel(R) PRO/DSL 2100 Modem - Bridged Ethernet (1483)"
ShellCodeErrorTitle = "Error: "$(FunctionTitle)$(Option))
ShellCodeErrorText = "Shell Code Error."
;***********************************************************************
[DialogConstantsENG]
Help = "&Help"
Exit = "&Cancel"
OK = "&OK"
HelpContext = ""
Continue = "Continue"
Cancel = "Cancel"
;***********************************************************************
[InvokeRasDlgENG]
InvokeRasSetupMsg = "Intel(R) PRO/DSL Modem setup is complete. "+
"Remote Access Services (RAS) must now be installed. "+
"Please configure the Intel(R) PRO/DSL Modem port in RAS "+
"setup to enable you to use RAS over the "+
"Intel(R) PRO/DSL 2100 Modem."
InstallSPMessage = "For your system to function properly, you MUST re-apply "
InvokeRasConfigMsg = "Intel(R) PRO/DSL Modem setup is complete. "+
"Remote Access Services (RAS) setup must now be configured. "+
"Please configure the Intel(R) PRO/DSL Modem port in RAS "+
"setup to enable you to use RAS over the "+
"Intel(R) PRO/DSL 2100 Modem."
InvokeRasError = "Intel(R) PRO/DSL Modem setup encountered an error "+
"while invoking the RAS setup INF file (OEMNSVRA.INF). "+
"Please make sure that the file is present in the "+
"System32 directory."
[RemoveRasDlgENG]
RemoveRasSetupMsg = "Remote Access Services (RAS) may no longer be needed. If you see "+
"a message stating there are no more RAS ports configured, you may "+
"safely remove RAS from the Services Tab in the Network Control Panel."
[Billboard2ENG]
Status = "Intel(R) PRO/DSL 2100 Setup is installing the TCP/IP transport..."
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.