14. januar 2004 - 22:35
#31
Her er oem filen der anvendes:
;
; Purpose: Netcard setup information file for Windows NT 3.51 / NT 4.0
;
; Author: Tevin Chen
;
; Date: Oct, 2002
;
[Identification]
OptionType = NetAdapter
[PlatformsSupported]
PCI
[Options]
FET
;============================================================================
[FileConstants]
UtilityInf = "UTILITY.INF"
subroutineinf = "SUBROUTN.INF"
SoftwareType = "driver"
Exit_Code = 0
NetEventDLL = "%SystemRoot%\System32\netevent.dll"
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
Manufacturer = "VIA Technologies, Inc."
; Driver Version info
; VERSION.... 3.13
ProductMajorVersion = "3"
ProductMinorVersion = "13"
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
; DEVICE_ID....
; (0x1106 == 4358)
VendorID = 4358
ProductSoftwareName = "FETNDIS"
ProductSoftwareTitle = "VIA Rhine Family Fast Ethernet Adapter Driver"
NT4Driver = "fetnd4.sys"
NT351Driver = "fetnd3.sys"
ProductSoftwareImagePathNT4 = "\SystemRoot\System32\drivers\"$(NT4Driver)
ProductSoftwareImagePathNT351 = "\SystemRoot\System32\drivers\"$(NT351Driver)
NetRuleSoftwareType = "FETSys ndisDriver FETDriver"
NetRuleSoftwareUse = $(SoftwareType)
NetRuleSoftwareBindForm = """FETSys"" yes no container"
NetRuleSoftwareClass = {"FETDriver basic"}
NetRuleSoftwareSWBindable = {"FETDriver FETAdapter non exclusive 100"}
HelpFileName = "fetndh.hlp"
ProductHardwareName = "FETNDIS"
ProductHardwareFETVT3106STitle = "VIA VT6105M Rhine III Management Adapter"
ProductHardwareFETVT3106JTitle = "VIA VT6105 Rhine III Fast Ethernet Adapter"
ProductHardwareFETVT3065Title = "VIA Rhine II Fast Ethernet Adapter"
ProductHardwareFETVT3043Title = "VIA VT86C100A Rhine Fast Ethernet Adapter"
ProductHardwareFETDescription = "VIA Rhine Family Fast Ethernet Adapter"
NetRuleHardwareFETType = "FET FETAdapter"
NetRuleHardwareFETClass = {"FETAdapter basic"}
AdapterFETType = 5 ;; PCI board
HelpFETId = 30
; DEVICE_ID....
; VT3043 (0x30431106 == 809701638)
VT3043CFID = 809701638
; VT3065 (0x30651106 == 811929862)
VT3065CFID = 811929862
; VT3106S (0x30531106 == 810750214)
VT3106SCFID = 810750214
; VT3106J (0x31061106 == 822481158)
VT3106JCFID = 822481158
; SubID....
; VT3106S (0x01061106 == 17174790 )
;VT3106SSubID = 17174790
; VT3106J (0x01051106 == 17109254 )
;VT3106JSubID = 17109254
; VT3065 (0x01021106 == 16912646)
;VT3065SubID = 16912646
; VT3043 (0x01001106 == 16781574)
;VT3043SubID = 16781574
NetRuleHardwareBindForm = " yes yes container"
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
;ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
VT3106SDefaultParamList = { {ReceiveBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{TransmitBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveBurstIndicate,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{TransmitThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{BurstLength,$(NoTitle),$(!REG_VT_DWORD),1},+
{MapRegisters,$(NoTitle),$(!REG_VT_DWORD),32},+
{EarlyReceive,$(NoTitle),$(!REG_VT_DWORD),0},+
{EarlyTransmit,$(NoTitle),$(!REG_VT_DWORD),0},+
{ValidatePacketLen,$(NoTitle),$(!REG_VT_DWORD),0},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),"000000000000"},+
{ConnectionType,$(NoTitle),$(!REG_VT_DWORD),0},+
{NwayForce,$(NoTitle),$(!REG_VT_DWORD),1},+
{FlowCtrl,&(NoTitle),$(!REG_VT_DWORD),0},+
{8021pqtag,$(NoTitle),$(!REG_VT_DWORD),0},+
{VLANID,$(NoTitle),$(!REG_VT_DWORD),0} }
VT3106JDefaultParamList = { {ReceiveBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{TransmitBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveBurstIndicate,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{TransmitThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{BurstLength,$(NoTitle),$(!REG_VT_DWORD),1},+
{MapRegisters,$(NoTitle),$(!REG_VT_DWORD),32},+
{EarlyReceive,$(NoTitle),$(!REG_VT_DWORD),0},+
{EarlyTransmit,$(NoTitle),$(!REG_VT_DWORD),0},+
{ValidatePacketLen,$(NoTitle),$(!REG_VT_DWORD),0},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),"000000000000"},+
{ConnectionType,$(NoTitle),$(!REG_VT_DWORD),0},+
{NwayForce,$(NoTitle),$(!REG_VT_DWORD),1},+
{FlowCtrl,&(NoTitle),$(!REG_VT_DWORD),0} }
VT3065DefaultParamList = { {ReceiveBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{TransmitBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveBurstIndicate,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{TransmitThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{BurstLength,$(NoTitle),$(!REG_VT_DWORD),1},+
{MapRegisters,$(NoTitle),$(!REG_VT_DWORD),32},+
{EarlyReceive,$(NoTitle),$(!REG_VT_DWORD),0},+
{EarlyTransmit,$(NoTitle),$(!REG_VT_DWORD),0},+
{ValidatePacketLen,$(NoTitle),$(!REG_VT_DWORD),0},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),"000000000000"},+
{ConnectionType,$(NoTitle),$(!REG_VT_DWORD),0},+
{NwayForce,$(NoTitle),$(!REG_VT_DWORD),1},+
{HWPhyReset,$(NoTitle),$(!REG_VT_DWORD),0},+
{FlowCtrl,&(NoTitle),$(!REG_VT_DWORD),0} }
VT3043DefaultParamList = { {ReceiveBuffers,$(NoTitle),$(!REG_VT_DWORD),64},+
{TransmitBuffers,$(NoTitle),$(!REG_VT_DWORD),8},+
{ReceiveBurstIndicate,$(NoTitle),$(!REG_VT_DWORD),64},+
{ReceiveThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{TransmitThreshold,$(NoTitle),$(!REG_VT_DWORD),0},+
{BurstLength,$(NoTitle),$(!REG_VT_DWORD),1},+
{MapRegisters,$(NoTitle),$(!REG_VT_DWORD),8},+
{EarlyReceive,$(NoTitle),$(!REG_VT_DWORD),0},+
{EarlyTransmit,$(NoTitle),$(!REG_VT_DWORD),0},+
{ValidatePacketLen,$(NoTitle),$(!REG_VT_DWORD),0},+
{NetworkAddress,$(NoTitle),$(!REG_VT_SZ),"000000000000"},+
{ConnectionType, $(NoTitle),$(!REG_VT_DWORD),0} }
ConnectionTypeParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"enum"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Connection Type"} }
ConnectionTypeEnumList = { {0,$(NoTitle),$(!REG_VT_SZ),"Auto-Negotiation"},+
{1,$(NoTitle),$(!REG_VT_SZ),"100BaseTx Half Duplex"},+
{2,$(NoTitle),$(!REG_VT_SZ),"100BaseTx Full Duplex"},+
{3,$(NoTitle),$(!REG_VT_SZ),"10BaseT Half Duplex"},+
{4,$(NoTitle),$(!REG_VT_SZ),"10BaseT Full Duplex"} }
NetworkAddressParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"edit"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Network Address"},+
{LimitText,$(NoTitle),$(!REG_VT_DWORD),12},+
{Optional,$(NoTitle),$(!REG_VT_DWORD),0} }
TransmitBuffersParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"int"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Transmit Buffers"},+
{Max,$(NoTitle),$(!REG_VT_DWORD),128},+
{Min,$(NoTitle),$(!REG_VT_DWORD),48} }
VT3043TransmitBuffersParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"int"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Transmit Buffers"},+
{Max,$(NoTitle),$(!REG_VT_DWORD),64},+
{Min,$(NoTitle),$(!REG_VT_DWORD),4} }
ReceiveBuffersParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"int"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Receive Buffers"},+
{Max,$(NoTitle),$(!REG_VT_DWORD),128},+
{Min,$(NoTitle),$(!REG_VT_DWORD),64} }
FlowCtrlParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"enum"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"Flow Control"} }
FlowCtrlEnumList = { {0,$(NoTitle),$(!REG_VT_SZ),"Hardware Default"},+
{1,$(NoTitle),$(!REG_VT_SZ),"Disabled"},+
{2,$(NoTitle),$(!REG_VT_SZ),"Enabled"} }
8021pqtagParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"enum"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"802.1p/Q Tagging"} }
DisableEnableEnumList = { {0,$(NoTitle),$(!REG_VT_SZ),"Disabled"},+
{1,$(NoTitle),$(!REG_VT_SZ),"Enabled"} }
VLANIDParamList = { {Type,$(NoTitle),$(!REG_VT_SZ),"int"},+
{ParamDesc,$(NoTitle),$(!REG_VT_SZ),"VLAN ID"},+
{Max,$(NoTitle),$(!REG_VT_DWORD),4094},+
{Min,$(NoTitle),$(!REG_VT_DWORD),0} }
;============================================================================
[GeneralConstants]
Sub = ""
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
NT351Version = "3.51"
NT40Version = "4.0"
;============================================================================
[date]
Now = {} ? $(!LIBHANDLE) GetSystemDate
;============================================================================
[Identify]
read-syms Identification
set Status = STATUS_SUCCESSFUL
set Identifier = $(OptionType)
set Media = #("Source Media Descriptions", 1, 1)
Return $(Status) $(Identifier) $(Media)
;============================================================================
[ReturnOptions]
set Status = STATUS_FAILED
set OptionList = {}
set OptionTextList = {}
set LanguageList = ^(LanguagesSupported, 1)
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 = +
Return $(Status) $(OptionList) $(OptionTextList)
;============================================================================
[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-subst LF = "\n"
read-syms GeneralConstants
read-syms FileConstants
set NetRuleSoftwareBindable = $($R1)
read-syms DialogConstants$(!STF_LANGUAGE)
ifstr(i) $(!NTN_Origination) == "NCPA"
set Continue = "OK"
endif
read-syms FileConstants$(!STF_LANGUAGE)
detect date
set-title $(Function$(Option)Title)
set to = Begin
set from = Begin
set CommonStatus = STATUS_SUCCESSFUL
EndWait
;----------------------------------------------------------------------------
Begin = +
; Get the version of NT from registry (for NT3.51/NT4.0)
set CurrentVersionValue = ""
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows NT\CurrentVersion" $(!REG_KEY_READ) KeyNt
ifstr(i) $(KeyNt) != ""
GetRegValue $(KeyNt) "CurrentVersion" CurrentVersionValue
CloseRegKey $(KeyNt)
endif
set TargetVersion = *($(CurrentVersionValue),4)
set TargetOS = ""
ifstr $(TargetVersion) == $(NT351Version)
set TargetOS = "NT351"
else-ifstr $(TargetVersion) == $(NT40Version)
set TargetOS = "NT4"
else
set Error = "This driver does not support Windows NT version "*($(CurrentVersionValue),4)" !"
goto fatal
endif
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
Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
Endif
set Error = $($R0)
set from = end
set to = end
goto nonfatalinfo
Else
set StartLabel = configureadapter
Endif
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)
;----------------------------------------------------------------------------
installadapter = +
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
Shell $(UtilityInf), CardExistedDlg
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R1) != "OK"
set CommonStatus = STATUS_USERCANCEL
goto end
endif
set OldVersionExisted = $(TRUE)
Endif
Endif
ifstr(i) $(DoCopy) == "YES"
Shell $(UtilityInf), 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)
endif
Goto installproduct
;----------------------------------------------------------------------------
configureadapter = +
Ifstr(i) $(KeyProduct) == $(KeyNull)
OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
Ifstr $(KeyProduct) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
Endif
Endif
Shell $(UtilityInf) FindService, $(KeyProduct)
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
Goto ShellCodeError
Endif
Ifstr(i) $($R0) != NO_ERROR
Goto fatalregistry
endif
set KeyParameters = $($R2)
CloseRegKey $($R1)
Ifstr $(KeyParameters) == $(KeyNull)
set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
goto fatalregistry
endif
set OldVersionExisted = $(TRUE)
set ValueName = ""
set ValueData = ""
set ValueList = {}
set PropKeyNameList = {}
set PropKeyDescList = {}
set KeyEnumValueList = {}
set KeyEnumDescList = {}
set DispTypeList = {}
OpenRegKey $(KeyParameters) "" "UI" $(MAXIMUM_ALLOWED) H_UI
ifstr $(H_UI) == $(KeyNull)
set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
CloseRegKey $(KeyParameters)
goto fatalregistry
endif
set UIKeyList = {}
EnumRegKey $(H_UI) UIKeyList
ForListDo $(UIKeyList)
set UIKeyName = *($($), 1)
set PropKeyNameList = >( $(PropKeyNameList), $(UIKeyName) )
OpenRegKey $(H_UI) "" $(UIKeyName) $(MAXIMUM_ALLOWED) H_UIKey
ifstr $(H_UIKey) == $(KeyNull)
set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
CloseRegKey $(H_UI)
goto fatalregistry
endif
EnumRegValue $(H_UIKey) ValueList
ForListDo $(ValueList)
set ValueName = *($($), 1)
set ValueData = *($($), 4)
ifstr(i) $(ValueName) == "Type"
set DisplayType = $(ValueData)
set DispTypeList = >( $(DispTypeList), $(DisplayType) )
endif
ifstr(i) $(ValueName) == "ParamDesc"
set DisplayDesc = $(ValueData)
set PropKeyDescList = >( $(PropKeyDescList), $(DisplayDesc) )
endif
ifstr(i) $(ValueName) == "Max"
set MaxLimit = $(ValueData)
endif
ifstr(i) $(ValueName) == "Min"
set MinLimit = $(ValueData)
endif
EndForListDo
ifstr(i) $(DisplayType) == "int"
set EnumValueStr = $(MinLimit)","$(MaxLimit)
set KeyEnumValueList = >( $(KeyEnumValueList), $(EnumValueStr) )
set KeyEnumDescList = >( $(KeyEnumDescList), "" )
else-ifstr(i) $(DisplayType) == "edit"
set KeyEnumValueList = >( $(KeyEnumValueList), "" )
set KeyEnumDescList = >( $(KeyEnumDescList), "" )
else-ifstr(i) $(DisplayType) == "enum"
OpenRegKey $(H_UIKey) "" "enum" $(!REG_KEY_READ) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE
CloseRegKey $(H_UIKey)
goto fatalregistry
endif
EnumRegValue $(H_Enum) EnumList
set EnumValueStr = ""
set EnumDescStr = ""
set flag = $(FALSE)
ForListDo $(EnumList)
set EnumValue = *($($), 1)
set EnumDesc = *($($), 4)
ifint $(flag) == $(TRUE)
set EnumValueStr = $(EnumValueStr)","$(EnumValue)
set EnumDescStr = $(EnumDescStr)","$(EnumDesc)
else
set EnumValueStr = $(EnumValue)
set EnumDescStr = $(EnumDesc)
set flag = $(TRUE)
endif
EndForListDo
set KeyEnumValueList = >( $(KeyEnumValueList), $(EnumValueStr) )
set KeyEnumDescList = >( $(KeyEnumDescList), $(EnumDescStr) )
else
; Add Error Handling Code Here
endif
EndForListDo
EnumRegValue $(KeyParameters) ValueList
set CurrKeyValueList = {}
ForListDo $(PropKeyNameList)
set KeyName = $($)
ForListDo $(ValueList)
set ValueName = *($($), 1)
set ValueData = *($($), 4)
ifstr $(ValueName) == $(KeyName)
set CurrKeyValueList = >($(CurrKeyValueList), $(ValueData))
endif
EndForListDo
EndForListDo
;shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) STATUS $(CurrKeyValueList)
LoadLibrary "" $(!STF_WINDOWSSYSPATH)"\ntutil.dll" PropHandle
LibraryProcedure SetResult, $(PropHandle), ShowProp, $(PropKeyDescList), +
$(CurrKeyValueList), +
$(KeyEnumValueList), +
$(KeyEnumDescList), +
$(DispTypeList), +
$(HelpFileName)
FreeLibrary $(PropHandle)
ifstr $(SetResult) == "PROPERTY_UI_USER_CANCEL"
set CommonStatus = STATUS_USERCANCEL
goto end
endif
ifstr $(SetResult) == $(CurrKeyValueList)
set CommonStatus = STATUS_USERCANCEL
goto end
endif
ifstr(i) $(!NTN_InstallMode) == configure
goto updateparameters
endif
;----------------------------------------------------------------------------
installproduct =+
StartWait
; DEVICE_ID....
; 65535
; search device ID for 3043/3065/3106J/3106S
set AdapterList65 = {}
set AdapterList43 = {}
set AdapterList106J = {}
set AdapterList106S = {}
set NoAdapter = $(TRUE)
; find 3043 adapters
set-div DeviceID = $(VT3043CFID) 65535
Shell $(UtilityInf), GetPCIInformation, $(VendorID) $(DeviceID)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) != {}
set AdapterList43 = $($R0)
set NoAdapter = $(FALSE)
endif
; find 3065 adapters
set-div DeviceID = $(VT3065CFID) 65535
Shell $(UtilityInf), GetPCIInformation, $(VendorID) $(DeviceID)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) != {}
set AdapterList65 = $($R0)
set NoAdapter = $(FALSE)
endif
; find 3106J adapters
set-div DeviceID = $(VT3106JCFID) 65535
Shell $(UtilityInf), GetPCIInformation, $(VendorID) $(DeviceID)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) != {}
set AdapterList106J = $($R0)
set NoAdapter = $(FALSE)
endif
; find 3106S adapters
set-div DeviceID = $(VT3106SCFID) 65535
Shell $(UtilityInf), GetPCIInformation, $(VendorID) $(DeviceID)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
ifstr(i) $($R0) != {}
set AdapterList106S = $($R0)
set NoAdapter = $(FALSE)
endif
; no adapters was found
ifint $(NoAdapter) == $(TRUE)
set Error = $(CANNOT_FIND_ANY_CARD)
set CommonStatus = USER_CANCEL
set from = end
goto nonfatal
endif
Ifstr(i) $(DoCopy) == "YES"
Shell $(UtilityInf), 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)
Endif
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
; Chinghua - setting default values if user re-install the driver
ifint $(OldVersionExisted) == $(TRUE)
; Update InfName and InfOption
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Ncpa" $(MAXIMUM_ALLOWED) H_Ncpa
ifstr $(H_Ncpa) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(H_Ncpa),"InfReturn", InfReturnList
set InfReturnValue = *( $(InfReturnList), 4 )
Split-String $(InfReturnValue) "," DestinationList
set InfFileName = *( $(DestinationList), 1 )
CloseRegKey $(H_Ncpa)
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName)"\NetRules" $(MAXIMUM_ALLOWED) H_NetRules
ifstr $(H_NetRules) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
SetRegValue $(H_NetRules) {InfName,$(NoTitle),$(!REG_VT_SZ),$(InfFileName)}
SetRegValue $(H_NetRules) {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}
CloseRegKey $(H_NetRules)
; setting default value for 3106S ****************************
ForListDo $(AdapterList106S)
set BusNum = *( $($), 1 )
set DeviceNum = *( $($), 2 )
set Sub = "VT3106S"
set Description = $(ProductHardware$(Option)Description)
set Product = $(ProductHardwareName)
OpenRegKey $(!REG_H_LOCAL) +
"" +
"SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards" +
$(!REG_KEY_READ) +
IE_KeyNetcards
EnumRegKey $(IE_KeyNetcards) IE_KeyNameList
ForListDo $(IE_KeyNameList)
set IE_KeyName = *( $($), 1 )
OpenRegKey $(IE_KeyNetcards) "" $(IE_KeyName) $(!REG_KEY_READ) IE_Card
ifstr $(IE_Card) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_Card),"ProductName", ProductNameInfo
set CardProductName = *( $(ProductNameInfo), 4 )
ifstr(i) $(CardProductName) == $(Product)
GetRegValue $(IE_Card), "ServiceName", ServiceNameInfo
set ServiceName = *( $(ServiceNameInfo), 4 )
OpenRegKey $(!REG_H_LOCAL) +
"" +
$(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters" +
$(!REG_KEY_READWRITE) +
IE_KeyService
ifstr $(IE_KeyService) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_KeyService), "BusNumber", BusInfo
GetRegValue $(IE_KeyService), "SlotNumber", SlotInfo
set CardBusNum = *( $(BusInfo), 4 )
set CardSlotNum = *( $(SlotInfo), 4 )
ifint $(CardBusNum) == $(BusNum)
ifint $(CardSlotNum) == $(DeviceNum)
; Update InfName and InfOption
OpenRegKey $(IE_Card) "" "NetRules" $(MAXIMUM_ALLOWED) H_NetRules
ifstr $(H_NetRules) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
SetRegValue $(H_NetRules) {InfName,$(NoTitle),$(!REG_VT_SZ),$(InfFileName)}
SetRegValue $(H_NetRules) {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}
CloseRegKey $(H_NetRules)
; Set default value
set NewValueList = $($(Sub)DefaultParamList)
set ParamPath = $(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
Shell $(UtilityInf), AddValueList, $(KeyParam), $(NewValueList)
; for 3106S UI registry >>>>>>>>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(KeyParam) {"UI",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_UI
ifstr $(H_UI) == $(KeyNull)
OpenRegKey $(KeyParam) "" "UI" $(MAXIMUM_ALLOWED) H_UI
ifstr $(H_UI) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(KeyParam)
goto fatalregistry
endif
endif
; for 3106S ConnectionType registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ConnectionType",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
OpenRegKey $(H_UI) "" "ConnectionType" $(MAXIMUM_ALLOWED) H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeParamList)
Shell $(UtilityInf), AddValueList, $(H_ConnectionType), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3106S ConnectionType Enum registry
CreateRegKey $(H_ConnectionType) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_ConnectionType) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_ConnectionType)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_ConnectionType)
; for 3106S NetworkAddress registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"NetworkAddress",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
OpenRegKey $(H_UI) "" "NetworkAddress" $(MAXIMUM_ALLOWED) H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(NetworkAddressParamList)
Shell $(UtilityInf), AddValueList, $(H_NetworkAddress), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_NetworkAddress)
; for 3106S TransmitBuffers registry >>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"TransmitBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "TransmitBuffers" $(MAXIMUM_ALLOWED) H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(TransmitBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_TransmitBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_TransmitBuffers)
; for 3106S ReceiveBuffers registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ReceiveBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "ReceiveBuffers" $(MAXIMUM_ALLOWED) H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ReceiveBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_ReceiveBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_ReceiveBuffers)
; for 3106S FlowCtrl registry >>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"FlowCtrl",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_FlowCtrl
ifstr $(H_FlowCtrl) == $(KeyNull)
OpenRegKey $(H_UI) "" "FlowCtrl" $(MAXIMUM_ALLOWED) H_FlowCtrl
ifstr $(H_FlowCtrl) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(FlowCtrlParamList)
Shell $(UtilityInf), AddValueList, $(H_FlowCtrl), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3106S FlowCtrl Enum registry
CreateRegKey $(H_FlowCtrl) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_FlowCtrl) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_FlowCtrl)
goto fatalregistry
endif
endif
set NewValueList = $(FlowCtrlEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_FlowCtrl)
; for 3106S 8021pqtag registry >>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"8021pqtag",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_8021pqtag
ifstr $(H_8021pqtag) == $(KeyNull)
OpenRegKey $(H_UI) "" "8021pqtag" $(MAXIMUM_ALLOWED) H_8021pqtag
ifstr $(H_8021pqtag) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(8021pqtagParamList)
Shell $(UtilityInf), AddValueList, $(H_8021pqtag), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3106S 8021pqtag Enum registry
CreateRegKey $(H_8021pqtag) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_8021pqtag) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_8021pqtag)
goto fatalregistry
endif
endif
set NewValueList = $(DisableEnableEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_8021pqtag)
; for 3106S VLANID registry >>>>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"VLANID",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_VLANID
ifstr $(H_VLANID) == $(KeyNull)
OpenRegKey $(H_UI) "" "VLANID" $(MAXIMUM_ALLOWED) H_VLANID
ifstr $(H_VLANID) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(VLANIDParamList)
Shell $(UtilityInf), AddValueList, $(H_VLANID), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_VLANID)
CloseRegKey $(H_UI)
CloseRegKey $(KeyParam)
; Update Software Title
set ParamPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$(IE_KeyName)
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
SetRegValue $(KeyParam) {Title,$(NoTitle),$(!REG_VT_SZ),"["$(IE_KeyName)"] "$(ProductHardware$(Option)$(Sub)Title)}
CloseRegKey $(KeyParam)
; Update Version Number
set ParamPath = "SOFTWARE\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
SetRegValue $(KeyParam) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)}
SetRegValue $(KeyParam) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)}
CloseRegKey $(KeyParam)
endif
endif
CloseRegKey $(IE_KeyService)
endif
CloseRegKey $(IE_Card)
EndForListDo
CloseRegKey $(IE_KeyNetcards)
EndForListDo
; setting default value for 3106J ****************************
ForListDo $(AdapterList106J)
set BusNum = *( $($), 1 )
set DeviceNum = *( $($), 2 )
set Sub = "VT3106J"
set Description = $(ProductHardware$(Option)Description)
set Product = $(ProductHardwareName)
OpenRegKey $(!REG_H_LOCAL) +
"" +
"SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards" +
$(!REG_KEY_READ) +
IE_KeyNetcards
EnumRegKey $(IE_KeyNetcards) IE_KeyNameList
ForListDo $(IE_KeyNameList)
set IE_KeyName = *( $($), 1 )
OpenRegKey $(IE_KeyNetcards) "" $(IE_KeyName) $(!REG_KEY_READ) IE_Card
ifstr $(IE_Card) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_Card),"ProductName", ProductNameInfo
set CardProductName = *($(ProductNameInfo), 4)
ifstr(i) $(CardProductName) == $(Product)
GetRegValue $(IE_Card), "ServiceName", ServiceNameInfo
set ServiceName = *($(ServiceNameInfo), 4)
OpenRegKey $(!REG_H_LOCAL) +
"" +
$(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters" +
$(!REG_KEY_READWRITE) +
IE_KeyService
ifstr $(IE_KeyService) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_KeyService), "BusNumber", BusInfo
GetRegValue $(IE_KeyService), "SlotNumber", SlotInfo
set CardBusNum = *( $(BusInfo), 4 )
set CardSlotNum = *( $(SlotInfo), 4 )
ifint $(CardBusNum) == $(BusNum)
ifint $(CardSlotNum) == $(DeviceNum)
; Update InfName and InfOption
OpenRegKey $(IE_Card) "" "NetRules" $(MAXIMUM_ALLOWED) H_NetRules
ifstr $(H_NetRules) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
SetRegValue $(H_NetRules) {InfName,$(NoTitle),$(!REG_VT_SZ),$(InfFileName)}
SetRegValue $(H_NetRules) {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}
CloseRegKey $(H_NetRules)
; Set default value
set NewValueList = $($(Sub)DefaultParamList)
set ParamPath = $(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
Shell $(UtilityInf), AddValueList, $(KeyParam), $(NewValueList)
; for 3106J UI registry >>>>>>>>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(KeyParam) {"UI",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_UI
ifstr $(H_UI) == $(KeyNull)
OpenRegKey $(KeyParam) "" "UI" $(MAXIMUM_ALLOWED) H_UI
ifstr $(H_UI) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(KeyParam)
goto fatalregistry
endif
endif
; for 3106J ConnectionType registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ConnectionType",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
OpenRegKey $(H_UI) "" "ConnectionType" $(MAXIMUM_ALLOWED) H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeParamList)
Shell $(UtilityInf), AddValueList, $(H_ConnectionType), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3106J ConnectionType Enum registry
CreateRegKey $(H_ConnectionType) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_ConnectionType) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_ConnectionType)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_ConnectionType)
; for 3106J NetworkAddress registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"NetworkAddress",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
OpenRegKey $(H_UI) "" "NetworkAddress" $(MAXIMUM_ALLOWED) H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(NetworkAddressParamList)
Shell $(UtilityInf), AddValueList, $(H_NetworkAddress), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_NetworkAddress)
; for 3106J TransmitBuffers registry >>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"TransmitBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "TransmitBuffers" $(MAXIMUM_ALLOWED) H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(TransmitBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_TransmitBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_TransmitBuffers)
; for 3106J ReceiveBuffers registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ReceiveBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "ReceiveBuffers" $(MAXIMUM_ALLOWED) H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ReceiveBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_ReceiveBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_ReceiveBuffers)
; for 3106J FlowCtrl registry >>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"FlowCtrl",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_FlowCtrl
ifstr $(H_FlowCtrl) == $(KeyNull)
OpenRegKey $(H_UI) "" "FlowCtrl" $(MAXIMUM_ALLOWED) H_FlowCtrl
ifstr $(H_FlowCtrl) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(FlowCtrlParamList)
Shell $(UtilityInf), AddValueList, $(H_FlowCtrl), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3106J FlowCtrl Enum registry
CreateRegKey $(H_FlowCtrl) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_FlowCtrl) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_FlowCtrl)
goto fatalregistry
endif
endif
set NewValueList = $(FlowCtrlEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_FlowCtrl)
CloseRegKey $(KeyParam)
; Update Software Title
set ParamPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$(IE_KeyName)
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
SetRegValue $(KeyParam) {Title,$(NoTitle),$(!REG_VT_SZ),"["$(IE_KeyName)"] "$(ProductHardware$(Option)$(Sub)Title)}
CloseRegKey $(KeyParam)
; Update Version Number
set ParamPath = "SOFTWARE\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
SetRegValue $(KeyParam) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)}
SetRegValue $(KeyParam) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)}
CloseRegKey $(KeyParam)
endif
endif
CloseRegKey $(IE_KeyService)
endif
CloseRegKey $(IE_Card)
EndForListDo
CloseRegKey $(IE_KeyNetcards)
EndForListDo
; setting default value for 3065 *****************************
ForListDo $(AdapterList65)
set BusNum = *( $($), 1 )
set DeviceNum = *( $($), 2 )
set Sub = "VT3065"
set Description = $(ProductHardware$(Option)Description)
set Product = $(ProductHardwareName)
OpenRegKey $(!REG_H_LOCAL) +
"" +
"SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards" +
$(!REG_KEY_READ) +
IE_KeyNetcards
EnumRegKey $(IE_KeyNetcards) IE_KeyNameList
ForListDo $(IE_KeyNameList)
set IE_KeyName = *( $($), 1 )
OpenRegKey $(IE_KeyNetcards) "" $(IE_KeyName) $(MAXIMUM_ALLOWED) IE_Card
ifstr $(IE_Card) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_Card), "ProductName", ProductNameInfo
set CardProductName = *( $(ProductNameInfo), 4 )
ifstr(i) $(CardProductName) == $(Product)
GetRegValue $(IE_Card), "ServiceName", ServiceNameInfo
set ServiceName = *( $(ServiceNameInfo), 4 )
OpenRegKey $(!REG_H_LOCAL) +
"" +
$(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters" +
$(!REG_KEY_READWRITE) +
IE_KeyService
ifstr $(IE_KeyService) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
GetRegValue $(IE_KeyService), "BusNumber", BusInfo
GetRegValue $(IE_KeyService), "SlotNumber", SlotInfo
set CardBusNum = *( $(BusInfo), 4 )
set CardSlotNum = *( $(SlotInfo), 4 )
ifint $(CardBusNum) == $(BusNum)
ifint $(CardSlotNum) == $(DeviceNum)
; Update InfName and InfOption
OpenRegKey $(IE_Card) "" "NetRules" $(MAXIMUM_ALLOWED) H_NetRules
ifstr $(H_NetRules) == $(KeyNull)
Set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
Goto fatalregistry
endif
SetRegValue $(H_NetRules) {InfName,$(NoTitle),$(!REG_VT_SZ),$(InfFileName)}
SetRegValue $(H_NetRules) {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}
CloseRegKey $(H_NetRules)
; Set default value
set NewValueList = $($(Sub)DefaultParamList)
set ParamPath = $(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters"
OpenRegKey $(!REG_H_LOCAL) "" $(ParamPath) $(!REG_KEY_WRITE) KeyParam
Shell $(UtilityInf), AddValueList, $(KeyParam), $(NewValueList)
; for 3065 UI registry >>>>>>>>>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(KeyParam) {"UI",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_UI
ifstr $(H_UI) == $(KeyNull)
OpenRegKey $(KeyParam) "" "UI" $(MAXIMUM_ALLOWED) H_UI
ifstr $(H_UI) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(KeyParam)
goto fatalregistry
endif
endif
; for 3065 ConnectionType registry >>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ConnectionType",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
OpenRegKey $(H_UI) "" "ConnectionType" $(MAXIMUM_ALLOWED) H_ConnectionType
ifstr $(H_ConnectionType) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeParamList)
Shell $(UtilityInf), AddValueList, $(H_ConnectionType), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
; for 3065 ConnectionType Enum registry
CreateRegKey $(H_ConnectionType) {"enum",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_Enum
ifstr $(H_Enum) == $(KeyNull)
OpenRegKey $(H_ConnectionType) "" "enum" $(MAXIMUM_ALLOWED) H_Enum
ifstr $(H_Enum) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_ConnectionType)
goto fatalregistry
endif
endif
set NewValueList = $(ConnectionTypeEnumList)
Shell $(UtilityInf), AddValueList, $(H_Enum), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_Enum)
CloseRegKey $(H_ConnectionType)
; for 3065 NetworkAddress registry >>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"NetworkAddress",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
OpenRegKey $(H_UI) "" "NetworkAddress" $(MAXIMUM_ALLOWED) H_NetworkAddress
ifstr $(H_NetworkAddress) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(NetworkAddressParamList)
Shell $(UtilityInf), AddValueList, $(H_NetworkAddress), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_NetworkAddress)
; for 3065 TransmitBuffers registry >>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"TransmitBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "TransmitBuffers" $(MAXIMUM_ALLOWED) H_TransmitBuffers
ifstr $(H_TransmitBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(TransmitBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_TransmitBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_TransmitBuffers)
; for 3065 ReceiveBuffers registry >>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"ReceiveBuffers",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
OpenRegKey $(H_UI) "" "ReceiveBuffers" $(MAXIMUM_ALLOWED) H_ReceiveBuffers
ifstr $(H_ReceiveBuffers) == $(KeyNull)
set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY
CloseRegKey $(H_UI)
goto fatalregistry
endif
endif
set NewValueList = $(ReceiveBuffersParamList)
Shell $(UtilityInf), AddValueList, $(H_ReceiveBuffers), $(NewValueList)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto ShellCodeError
endif
CloseRegKey $(H_ReceiveBuffers)
; for 3065 FlowCtrl registry >>>>>>>>>>>>>>>>>>>>>>>
CreateRegKey $(H_UI) {"FlowCtrl",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" H_FlowCtrl
ifstr $(H_FlowCtrl) == $(KeyNull)
OpenRegKey $(H_UI) "" "FlowCtrl" $(MAXIMUM_ALLOWED) H_FlowCtrl
ifstr $(H