;***************************************************************************** ;* Copyright (c) 1996-98 Digi International Inc., All Rights Reserved ;* ;* This software contains proprietary and confidential information of Digi ;* International Inc. By accepting transfer of this copy, Recipient agrees ;* to retain this software in confidence, to prevent disclosure to others, ;* and to make no use of this software other than that for which it was ;* delivered. This is an unpublished copyrighted work of Digi International ;* Inc. Except as permitted by federal law, 17 USC 117, copying is strictly ;* prohibited. ;* ;* Restricted Rights Legend ;* ;* Use, duplication, or disclosure by the Government is subject to ;* restrictions set forth in sub-paragraph (c)(1)(ii) of The Rights in ;* Technical Data and Computer Software clause at DFARS 252.227-7031 or ;* subparagraphs (c)(1) and (2) of the Commercial Computer Software - ;* Restricted Rights at 48 CFR 52.227-19, as applicable. ;* ;* Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343 ;* ;***************************************************************************** [Identification] OptionType = NetAdapter InstallVersion = 3"."2"."13 [GlobalConstants] Manufacturer = "Digi" TYPECHECK_NONE = "NoValueTypeCheck" [GlobalRegistryConstants] KEY_DIGIROOT = $(!NTN_SoftwareBase)"\"$(Manufacturer) KEY_NETWORKCARDS = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards" KEY_SERVICEGROUPORDER = "SYSTEM\CurrentControlSet\Control\ServiceGroupOrder" [GlobalPathConstants] SYSTEM32_DIR = "%SystemRoot%\System32" DRIVER_DIR = $(SYSTEM32_DIR)"\drivers" IoLogMsgDLLPath = $(SYSTEM32_DIR)"\IoLogMsg.dll" [DetectionConstants] DETECTDLL_PATH = $(!STF_WINDOWSSYSPATH)"\DigiDtct.dll" [UpdateConstants] UPDATEDLL_PATH = $(!STF_WINDOWSSYSPATH)"\DigiInf.dll" [DriverPackageConstants] PackageSoftwareName = "WAN Links" PackageKeyName = $(KEY_DIGIROOT)"\"$(PackageSoftwareName)"\CurrentVersion" PackageInstalledOptionsKeyName = $(PackageKeyName)"\InstalledOptions" PackageOptionInstalledKeyName = $(PackageInstalledOptionsKeyName)"\"$(Option) PackageOptionDiagKeyName = $(PackageOptionInstalledKeyName) PackageConfigMapKey = $(PackageKeyName)"\Config" [DriverConstants] SoftwareType = "driver" ProductMajorVersion = 3 ProductMinorVersion = 2 ProductBuildNumber = 13 ProductVersion = 3"."2"."13 NetRuleSoftwareUse = $(SoftwareType) NetRuleMiniportUse = $(SoftwareType) NetRuleHardwareBindForm = " yes yes container" DStreamsDependOnGroup = "DIGIDS" DStreamsBeforeGroup = "NDIS" OptionsThatNeedStreams = {"Sync570"} StreamsDevice = "DigiSOH" MiniPortDependOnGroup = "" [DriverConstants-SyncPort] ProductSoftwareName = "DigiDxb" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiDxb.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "DigiDxbSys DigiDxbDriver" NetRuleSoftwareBindForm = """DigiDxbDriver"" yes no container" NetRuleSoftwareClass = {"DigiDxbDriver basic"} NetRuleSoftwareBindable = {"DigiDxbDriver DigiDxbAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiDxb" NetRuleHardwareType = "DigiDxb DigiDxbAdapter" NetRuleHardwareClass = {"DigiDxbAdapter basic"} MiniPortDriverName = "" [DriverConstants-Houston] ProductSoftwareName = "DigiDxb" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiDxb.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "DigiDxbSys DigiDxbDriver" NetRuleSoftwareBindForm = """DigiDxbDriver"" yes no container" NetRuleSoftwareClass = {"DigiDxbDriver basic"} NetRuleSoftwareBindable = {"DigiDxbDriver DigiDxbAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiDxb" NetRuleHardwareType = "DigiDxb DigiDxbAdapter" NetRuleHardwareClass = {"DigiDxbAdapter basic"} MiniPortDriverName = "" [DriverConstants-London] ProductSoftwareName = "DigiDxb" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiDxb.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "DigiDxbSys DigiDxbDriver" NetRuleSoftwareBindForm = """DigiDxbDriver"" yes no container" NetRuleSoftwareClass = {"DigiDxbDriver basic"} NetRuleSoftwareBindable = {"DigiDxbDriver DigiDxbAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiDxb" NetRuleHardwareType = "DigiDxb DigiDxbAdapter" NetRuleHardwareClass = {"DigiDxbAdapter basic"} MiniPortDriverName = "" [DriverConstants-Chaska] ProductSoftwareName = "DigiDxb" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiDxb.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "DigiDxbSys DigiDxbDriver" NetRuleSoftwareBindForm = """DigiDxbDriver"" yes no container" NetRuleSoftwareClass = {"DigiDxbDriver basic"} NetRuleSoftwareBindable = {"DigiDxbDriver DigiDxbAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiDxb" NetRuleHardwareType = "DigiDxb DigiDxbAdapter" NetRuleHardwareClass = {"DigiDxbAdapter basic"} MiniPortDriverName = "" [DriverConstants-Clydesdale] ProductSoftwareName = "DigiDxb" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiDxb.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "DigiDxbSys DigiDxbDriver" NetRuleSoftwareBindForm = """DigiDxbDriver"" yes no container" NetRuleSoftwareClass = {"DigiDxbDriver basic"} NetRuleSoftwareBindable = {"DigiDxbDriver DigiDxbAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiDxb" NetRuleHardwareType = "DigiDxb DigiDxbAdapter" NetRuleHardwareClass = {"DigiDxbAdapter basic"} MiniPortDriverName = "" [DriverConstants-Streams] ProductSoftwareName = "DigiSOH" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiSOH.sys" Review = 1 Hidden = 0 NetRuleSoftwareType = "" NetRuleSoftwareBindForm = "" NetRuleSoftwareClass = {} NetRuleSoftwareBindable = {} ServiceType = "kernelautostart" Group = "DIGIDS" DependOnGroup = {} DependsOn = {"+DIGIMP"} ProductHardwareName = "DigiSOH" NetRuleHardwareType = "" NetRuleHardwareClass = {} MiniportAdapterKey = "MiniportAdapters" MiniPortDependOnGroup = "DIGIMP" PerfLoadIni = "sohctrs.ini" PerfUnload = $(ProductSoftwareName) PerfLibrary = "sohperf.dll" PerfEventLog = "SohPerf" PerfOpen = "OpenSohPerformanceData" PerfCollect = "CollectSohPerformanceData" PerfClose = "CloseSohPerformanceData" [DriverConstants-Sync570] ProductSoftwareName = "Dg570mp" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\Dg570mp.sys" Review = 1 Hidden = 1 NetRuleSoftwareType = "Dg570mpSys Dg570mpDriver" NetRuleSoftwareBindForm = """Dg570mpDriver"" yes no container" NetRuleSoftwareClass = {"Dg570mpDriver basic"} NetRuleSoftwareBindable = {"Dg570mpDriver Dg570mpAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "DIGIMP" DependOnGroup = {} DependsOn = {} ProductHardwareName = "Dg570mp" NetRuleHardwareType = "Dg570mp Dg570mpAdapter" NetRuleHardwareClass = {"Dg570mpAdapter basic"} [DriverConstants-PCI] ProductSoftwareName = "DigiPci" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiPci.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "" NetRuleSoftwareUse = "" NetRuleSoftwareBindForm = "" NetRuleSoftwareClass = {} NetRuleSoftwareBindable = {} ServiceType = "kernel" Group = "Base" DependOnGroup = {} DependsOn = {} ProductHardwareName = "DigiPci" NetRuleHardwareType = "" NetRuleHardwareClass = {} CircuitName = "" LineServiceKeyName = "" MediaType = "" [DriverConstants-FR] ProductSoftwareName = "DigiLan" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiLan.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiLanSys ndisDriver DigiLanDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """DigiLanDriver"" yes no container" NetRuleSoftwareClass = {"DigiLanDriver basic"} NetRuleSoftwareBindable = {"DigiLanDriver DigiLanAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "NDIS" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiLan" NetRuleHardwareType = "DigiLan DigiLanAdapter" NetRuleHardwareClass = {"DigiLanAdapter basic"} CircuitName = "DLCI" LineServiceKeyName = "FRService" MediaType = "FR" [DriverConstants-X25L] ProductSoftwareName = "DigiLan" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiLan.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiLanSys ndisDriver DigiLanDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """DigiLanDriver"" yes no container" NetRuleSoftwareClass = {"DigiLanDriver basic"} NetRuleSoftwareBindable = {"DigiLanDriver DigiLanAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "NDIS" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiLan" NetRuleHardwareType = "DigiLan DigiLanAdapter" NetRuleHardwareClass = {"DigiLanAdapter basic"} CircuitName = "Channel" LineServiceKeyName = "X25Service" MediaType = "X25" [DriverConstants-X25] ProductSoftwareName = "DigiWanX" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiWanX.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiWanXSys DigiWanXDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """"DigiWanXDriver""" yes no container" NetRuleSoftwareClass = {"DigiWanXDriver basic"} NetRuleSoftwareBindable = {"DigiWanXDriver DigiWanXAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "NDIS" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiWanX" NetRuleHardwareType = "DigiWanX DigiWanXAdapter" NetRuleHardwareClass = {"DigiWanXAdapter basic"} CircuitName = "Channel" LineServiceKeyName = "X25Service" MediaType = "X25" [DriverConstants-SNA] ProductSoftwareName = "DigiSNA" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiSNA.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiSNASys ndisDriver DigiSNADriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """DigiSNADriver"" yes no container" NetRuleSoftwareClass = {"DigiSNADriver basic"} NetRuleSoftwareBindable = {"DigiSNADriver DigiSNAAdapter non exclusive 100"} ServiceType = "kernel" Group = "Extended Base" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiSNA" NetRuleHardwareType = "DigiSNA DigiSNAAdapter" NetRuleHardwareClass = {"DigiSNAAdapter basic"} CircuitName = "" LineServiceKeyName = "SNAService" MediaType = "SNA" [DriverConstants-PPP] ProductSoftwareName = "DigiPPP" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiPPP.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiPPPSys DigiPPPDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """"DigiPPPDriver""" yes no container" NetRuleSoftwareClass = {"DigiPPPDriver basic"} NetRuleSoftwareBindable = {"DigiPPPDriver DigiPPPAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "NDIS" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiPPP" NetRuleHardwareType = "DigiPPP DigiPPPAdapter" NetRuleHardwareClass = {"DigiPPPAdapter basic"} CircuitName = "" LineServiceKeyName = "PPPService" MediaType = "PPP" [DriverConstants-ISDN] ProductSoftwareName = "DigiIsdn" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiIsdn.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiIsdnSys DigiIsdnDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """"DigiIsdnDriver""" yes no container" NetRuleSoftwareClass = {"DigiIsdnDriver basic"} NetRuleSoftwareBindable = {"DigiIsdnDriver DigiIsdnAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "NDIS" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiIsdn" NetRuleHardwareType = "DigiIsdn DigiIsdnAdapter" NetRuleHardwareClass = {"DigiIsdnAdapter basic"} CircuitName = "" LineServiceKeyName = "ISDN" MediaType = "ISDN" [DriverConstants-ASYN] ProductSoftwareName = "DigiAsyn" ProductKeyName = $(KEY_DIGIROOT)"\"$(ProductSoftwareName)"\CurrentVersion" ProductSoftwareImagePath = $(DRIVER_DIR)"\DigiAsyn.sys" Review = 0 Hidden = 1 NetRuleSoftwareType = "DigiAsynSys DigiAsynDriver" NetRuleSoftwareUse = $(SoftwareType) NetRuleSoftwareBindForm = """"DigiAsynDriver""" yes no container" NetRuleSoftwareClass = {"DigiAsynDriver basic"} NetRuleSoftwareBindable = {"DigiAsynDriver DigiAsynAdapter non exclusive 100"} ServiceType = "kernelautostart" Group = "Extended Base" DependOnGroup = {"+DIGIDS"} DependsOn = {} ProductHardwareName = "DigiAsyn" NetRuleHardwareType = "DigiAsyn DigiAsynAdapter" NetRuleHardwareClass = {"DigiAsynAdapter basic"} CircuitName = "" LineServiceKeyName = "ASYN" MediaType = "" [WriteConfigData] StartWait RunProgram Result "" "" RUNDLL32.EXE "syssetup,SetupInfObjectInstallAction DefaultInstall 128 DigiCfg.inf" ifstr(i) $(Result) != "ERROR" set RunProgramWorked = 1 else set RunProgramWorked = 0 endif ifint $(RunProgramWorked) == 0 goto Exit endif set Success = 1 Exit = + EndWait Return $(Success) [DetectionFilesList] "Detection Files" = Files-Detect, $(!STF_WINDOWSSYSPATH) "Detection Drivers" = Files-Detect-Driver, $(!STF_WINDOWSSYSPATH)"\drivers" [CopyDetectionFiles] set SrcDir = $($0) set Success = 0 set DescList = ^(DetectionFilesList, 0) ForListDo $(DescList) set Desc = $($) set Section = #(DetectionFilesList, $(Desc), 1) set DstDir = #(DetectionFilesList, $(Desc), 2) set FileList = ^($(Section), 2) ForListDo $(FileList) LibraryProcedure Result $(!NCPA_HANDLE) CopySingleFile $(!STF_HWND) $(SrcDir)"\"$($) $(DstDir)"\"$($) EndForListDo EndForListDo set Success = 1 Exit = + Return $(Success) [Install-AddFiles] ifstr(i) $(AddCopy) == "YES" Ifcontains $(Section)$(SrcDir)$(DstDir) not-in $(!DIGI_FileSectionsToCopyCoalesceList) set !DIGI_FileSectionsToCopyCoalesceList = >($(!DIGI_FileSectionsToCopyCoalesceList), $(Section)$(SrcDir)$(DstDir)) AddSectionFilesToCopyList $(Section) $(SrcDir) $(DstDir) else endif endif Exit [Install-CopyFiles] ifstr(i) $(DoCopy) == "YES" set STF_VITAL = "" set STF_OVERWRITE = "VERIFYSOURCEOLDER" set !STF_NCPA_FLUSH_COPYLIST = 1 CopyFilesInCopyList set !DIGI_FileSectionsToCopyCoalesceList = {}; endif Exit [CoreFilesList-Houston] "Redistributable Files" = Files-Redistributable, $(!STF_WINDOWSSYSPATH) "Config Files All" = Files-Config, $(!STF_WINDOWSSYSPATH) "Config Files" = Files-Config-Houston, $(!STF_WINDOWSSYSPATH) "Diag Files" = Files-Diags-Houston, $(!STF_WINDOWSSYSPATH) "Modem Files" = Files-Modem, $(!STF_WINDOWSPATH)"\INF" "Firmware Files" = Files-Firmware-Houston, $(!STF_WINDOWSSYSPATH)"\drivers" "Driver Files" = Files-Driver-Houston, $(!STF_WINDOWSSYSPATH)"\drivers" [CoreFilesList-London] "Redistributable Files" = Files-Redistributable, $(!STF_WINDOWSSYSPATH) "Config Files All" = Files-Config, $(!STF_WINDOWSSYSPATH) "Config Files" = Files-Config-London, $(!STF_WINDOWSSYSPATH) "Diag Files" = Files-Diags-London, $(!STF_WINDOWSSYSPATH) "Modem Files" = Files-Modem, $(!STF_WINDOWSPATH)"\INF" "Firmware Files" = Files-Firmware-London, $(!STF_WINDOWSSYSPATH)"\drivers" "Driver Files" = Files-Driver-London, $(!STF_WINDOWSSYSPATH)"\drivers" [CoreFilesList-Chaska] "Redistributable Files" = Files-Redistributable, $(!STF_WINDOWSSYSPATH) "Config Files All" = Files-Config, $(!STF_WINDOWSSYSPATH) "Config Files" = Files-Config-Chaska, $(!STF_WINDOWSSYSPATH) "Diag Files" = Files-Diags-Chaska, $(!STF_WINDOWSSYSPATH) "Modem Files" = Files-Modem, $(!STF_WINDOWSPATH)"\INF" "Firmware Files" = Files-Firmware-Chaska, $(!STF_WINDOWSSYSPATH)"\drivers" "Driver Files" = Files-Driver-Chaska, $(!STF_WINDOWSSYSPATH)"\drivers" [CoreFilesList-Clydesdale] "Redistributable Files" = Files-Redistributable, $(!STF_WINDOWSSYSPATH) "Config Files All" = Files-Config, $(!STF_WINDOWSSYSPATH) "Config Files" = Files-Config-Clydesdale, $(!STF_WINDOWSSYSPATH) "Diag Files" = Files-Diags-Clydesdale, $(!STF_WINDOWSSYSPATH) "Firmware Files" = Files-Firmware-Clydesdale, $(!STF_WINDOWSSYSPATH)"\drivers" "Driver Files" = Files-Driver-Clydesdale, $(!STF_WINDOWSSYSPATH)"\drivers" "SNA Driver Files" = Files-SNA-Driver-Clydesdale, $(!STF_WINDOWSSYSPATH) "SNA Config Files" = Files-SNA-Config-Clydesdale, $(!STF_WINDOWSSYSPATH) [CoreFilesList-Sync570] "Redistributable Files" = Files-Redistributable, $(!STF_WINDOWSSYSPATH) "Config Files All" = Files-Config, $(!STF_WINDOWSSYSPATH) "Config Files" = Files-Config-Sync570, $(!STF_WINDOWSSYSPATH) "Diag Files" = Files-Diags-Sync570, $(!STF_WINDOWSSYSPATH) "Driver Files" = Files-Driver-Sync570, $(!STF_WINDOWSSYSPATH)"\drivers" "SNA Driver Files" = Files-SNA-Driver-Sync570, $(!STF_WINDOWSSYSPATH) "SNA Config Files" = Files-SNA-Config-Sync570, $(!STF_WINDOWSSYSPATH) "PerfMon Files" = Files-PERFMON-Streams, $(!STF_WINDOWSSYSPATH) [CopyCoreFiles] set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set Success = 0 shell "" ClearRemoveList set DescList = ^(CoreFilesList-$(Option), 0) ForListDo $(DescList) set Desc = $($) set Section = #(CoreFilesList-$(Option), $(Desc), 1) set DstDir = #(CoreFilesList-$(Option), $(Desc), 2) Install Install-AddFiles ifstr(i) $(Section) != "Files-Redistributable" shell "" AddSectionFilesToRemoveList $(Section) $(DstDir) endif EndForListDo set MiscDeleteList = ^(DetectionFilesList, 0) ForListDo $(MiscDeleteList) set Desc = $($) set Section = #(DetectionFilesList, $(Desc), 1) set DstDir = #(DetectionFilesList, $(Desc), 2) shell "" AddSectionFilesToRemoveList $(Section) $(DstDir) EndForListDo set MiscDeleteList = ^(MiscDeleteFileList, 0) ForListDo $(MiscDeleteList) set Desc = $($) set Section = #(MiscDeleteFileList, $(Desc), 1) set DstDir = #(MiscDeleteFileList, $(Desc), 2) shell "" AddSectionFilesToRemoveList $(Section) $(DstDir) EndForListDo read-syms $(Option)-Strings-$(!STF_LANGUAGE) read-syms Generic-Strings-$(!STF_LANGUAGE) read-syms InstallProgress-Strings-$(!STF_LANGUAGE) Install Install-CopyFiles ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS" ifstr(i) "UNABLE_COPY_FILE" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_COPY_FILE" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif endif set Success = 1 Exit = + Return $(Success) [Install-DiagShortcuts] CreateCommonProgManGroup $(IconGroupName), "" ShowCommonProgManGroup $(IconGroupName), 1 RemoveCommonProgManItem $(IconGroupName), $(IconDiagName) CreateCommonProgManItem $(IconGroupName), $(IconDiagName), """"$(!STF_WINDOWSSYSPATH)"\SxbDiag.exe""", "" 0 CreateCommonProgManItem $(IconGroupName), $(IconDiagHelp), """"$(!STF_WINDOWSSYSPATH)"\SxbDiag.hlp""", "" 0 ShowCommonProgManGroup $(IconGroupName), 6 Exit [Remove-DiagShortcuts] CreateCommonProgManGroup $(IconGroupName), "" ShowCommonProgManGroup $(IconGroupName), 1 RemoveCommonProgManItem $(IconGroupName), $(IconDiagName) RemoveCommonProgManItem $(IconGroupName), $(IconDiagHelp) ShowCommonProgManGroup $(IconGroupName), 6 RemoveCommonProgManGroup $(IconGroupName) Exit [InstallDiags] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set Success = 0 set OptionsThatNeedDiags = { + "Houston", + "London", + "Chaska", + "Clydesdale", + "Sync570", + } Ifcontains $(Option) in $(OptionsThatNeedDiags) read-syms IconInfo$(!STF_LANGUAGE) Install Install-DiagShortcuts endif set Success = 1 Exit = + Return $(Success) [RemoveDiags] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set Success = 0 read-syms IconInfo$(!STF_LANGUAGE) Install Remove-DiagShortcuts set Success = 1 Exit = + Return $(Success) [OldDriverConstants] OldManufacturer = "DigiBoard" OldProductSoftwareName = "DigiSxb" OldProductKeyNameList = { $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(OldProductSoftwareName)"\CurrentVersion", + $(!NTN_SoftwareBase)"\"$(OldManufacturer)"\"$(OldProductSoftwareName)"\CurrentVersion" } [GetPackageKey] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms DriverPackageConstants set KeyPackage = "" OpenRegKey $(!REG_H_LOCAL) "" $(PackageKeyName) 33554432 KeyPackage ifstr $(KeyPackage) != "" goto Exit endif Exit = + Return $(KeyPackage) [IsPackageInstalled] shell "" GetExistingSoftwareVersion set Installed = $($R0) Return $(Installed) [IsOptionInstalled] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Option = $($0) read-syms DriverPackageConstants set Installed = 0 shell "utility.inf" IsRefCountEqualZero $(PackageOptionInstalledKeyName) shell "" Boolean-Not $($R1) set Installed = $($R0) Return $(Installed) [NumericVersion] set StrVersion = $($0) Split-String $(StrVersion) "." ComponentList set IntVersion = 0 ForListDo $(ComponentList) ifstr(i) $($) != "." set-mul IntVersion = $(IntVersion), 256 set-add IntVersion = $(IntVersion), $($) endif EndForListDo Return $(IntVersion) [GetExistingSoftwareVersion] read-syms Identification set Success = 0 set Version = $(InstallVersion) shell "" GetPackageKey set KeyPackage = $($R0) ifstr $(KeyPackage) == "" goto Error endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyPackage) "SoftwareVersion" ifint $($R0) == 1 set Version = $($R1) goto Exit endif goto Error Exit = + set Success = 1 Error = + shell "" CloseOpenRegKey $(KeyPackage) Return $(Success) $(Version) [GetSourceDir] set SrcDir = $($0) set Status = "STATUS_FAILED" set UserDir = $(SrcDir) shell "utility.inf" DoAskSource $(!STF_CWDDIR) $(SrcDir) "NO" ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif set Status = $($R0) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" ifstr(i) "ASK_SOURCE_FAIL" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "ASK_SOURCE_FAIL" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif endif set UserDir = $($R1) set !STF_SRCDIR_OVERRIDE = $(UserDir) Exit = + Return $(Status) $(UserDir) [AdapterDataMap] AdapterDataMap = { + { "Houston", "PCI", 4431, 29, 82, 1, "DigiHoustonT1Single" }, + { "Houston", "PCI", 4431, 29, 83, 2, "DigiHoustonT1Dual" }, + { "Houston", "PCI", 4431, 29, 80, 1, "DigiHoustonE1Single" }, + { "Houston", "PCI", 4431, 29, 81, 2, "DigiHoustonE1Dual" }, + { "London", "PCI", 4431, 36, 49, 4, "DigiLondonST" }, + { "London", "PCI", 4431, 36, 48, 4, "DigiLondonU" }, + { "Chaska", "PCI", 4431, 35, 97, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 99, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 101, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 103, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 105, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 107, 4, "DigiChaska4" }, + { "Chaska", "PCI", 4431, 35, 96, 8, "DigiChaska8" }, + { "Chaska", "PCI", 4431, 35, 98, 8, "DigiChaska8" }, + { "Chaska", "PCI", 4431, 35, 100, 8, "DigiChaska8" }, + { "Chaska", "PCI", 4431, 35, 102, 8, "DigiChaska8" }, + { "Chaska", "PCI", 4431, 35, 104, 8, "DigiChaska8" }, + { "Chaska", "PCI", 4431, 35, 106, 8, "DigiChaska8" }, + { "Clydesdale", "PCI", 4431, 34, 0, 2, "DigiClydeNonCsu2" }, + { "Clydesdale", "PCI", 4431, 33, 0, 4, "DigiClydeNonCsu4" }, + { "Clydesdale", "PCI", 4431, 32, 0, 2, "DigiClydeNonCsu6032" }, + { "Clydesdale", "PCI", 4431, 31, 0, 4, "DigiClydeNonCsu6034" }, + { "Sync570", "PCI", 4431, 20498, 0, 2, "DigiSync570Port2Pci" }, + { "Sync570", "PCI", 4431, 20499, 0, 4, "DigiSync570Port4Pci" }, + { "Sync570", "ISA", 0, 0, 0, 2, "DigiSync570Port2Isa" }, + { "Sync570", "ISA", 0, 0, 0, 4, "DigiSync570Port4Isa" }, + } [ResetInfOption] set Option = $($0) set VendorID = $($1) set PciID = $($2) set SubPciID = $($3) set Success = 0 set RealOption = $(Option) set OptionsThatGetReset = { "DigiRAS", "PowerSync" } Ifcontains $(Option) in $(OptionsThatGetReset) read-syms AdapterDataMap ForListDo $(AdapterDataMap) set MapVendorID = *($($), 3) ifint $(MapVendorID) == $(VendorID) set MapPciID = *($($), 4) set MapSubPciID = *($($), 5) ifint $(MapPciID) == $(PciID) set _B1 = 1 else set _B1 = 0 endif ifint $(MapSubPciID) == $(SubPciID) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-And $(_B1) $(_B2) ifint $($R0) == 1 set RealOption = *($($), 1) goto Exit endif endif EndForListDo goto Error endif Exit = + set Success = 1 Error = + Return $(Success) $(RealOption) [FirmwareImageNames] set Option = $($0) set BusName = $($1) set BiosImage = "N/A" set FepImage = "N/A" set OptionsThatHaveBiosImages = { + } Ifcontains $(Option) in $(OptionsThatHaveBiosImages) set BiosImage = #(Files-Firmware-$(Option), BIOS$(BusName), 2) endif set OptionsThatHaveFepImages = { + "Houston", + "London", + "Chaska", + "Clydesdale", + } Ifcontains $(Option) in $(OptionsThatHaveFepImages) set FepImage = #(Files-Firmware-$(Option), FEP$(BusName), 2) endif Exit = + Return $(BiosImage) $(FepImage) [CalculateNumberOfLines] set Option = $($0) set BusName = $($1) set VendorID = $($2) set PciID = $($3) set SubPciID = $($4) set Identity = $($5) set NumberOfLines = 1 read-syms AdapterDataMap ForListDo $(AdapterDataMap) set MapOption = *($($), 1) set MapBusName = *($($), 2) ifstr(i) $(MapOption) == $(Option) set _B1 = 1 else set _B1 = 0 endif ifstr(i) $(MapBusName) == $(BusName) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-And $(_B1) $(_B2) ifint $($R0) == 1 ifstr(i) $(BusName) == "PCI" set MapVendorID = *($($), 3) ifint $(MapVendorID) == $(VendorID) set MapPciID = *($($), 4) set MapSubPciID = *($($), 5) ifint $(MapPciID) == $(PciID) set _B1 = 1 else set _B1 = 0 endif ifint $(MapSubPciID) == $(SubPciID) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-And $(_B1) $(_B2) ifint $($R0) == 1 set NumberOfLines = *($($), 6) goto Exit endif endif else set MapIdentity = *($($), 7) ifstr(i) $(Identity) == $(MapIdentity) set NumberOfLines = *($($), 6) goto Exit endif endif endif EndForListDo Exit = + Return $(NumberOfLines) [GetAdapterEnum] set Option = $($0) set BusName = $($1) set VendorID = $($2) set PciID = $($3) set SubPciID = $($4) set AdapterEnum = "" read-syms AdapterDataMap ForListDo $(AdapterDataMap) set MapOption = *($($), 1) set MapBusName = *($($), 2) ifstr(i) $(MapOption) == $(Option) set _B1 = 1 else set _B1 = 0 endif ifstr(i) $(MapBusName) == $(BusName) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-And $(_B1) $(_B2) ifint $($R0) == 1 ifstr(i) $(BusName) == "PCI" set MapVendorID = *($($), 3) ifint $(MapVendorID) == $(VendorID) set MapPciID = *($($), 4) set MapSubPciID = *($($), 5) ifint $(MapPciID) == $(PciID) set _B1 = 1 else set _B1 = 0 endif ifint $(MapSubPciID) == $(SubPciID) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-And $(_B1) $(_B2) ifint $($R0) == 1 set AdapterEnum = *($($), 7) goto Exit endif endif else set AdapterEnum = *($($), 7) goto Exit endif endif EndForListDo Exit = + Return $(AdapterEnum) [InstallMode] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms Identification read-syms DriverPackageConstants read-syms InstallMessages-$(!STF_LANGUAGE) set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set DoConfig = $($4) StartWait set Status = "STATUS_FAILED" set DeleteInfOnExit = 0 set KeyPackage = "" set KeyInstalledOptions = "" set KeyOptionInstalled = "" set IncrementedPackageRefCount = 0 set IncrementedInstalledOptionRefCount = 0 set InstalledDriverList = {} set InstalledAdapterList = {} shell "" GetExistingSoftwareVersion set OnDiskVersion = $($R1) shell "" NumericVersion $(OnDiskVersion) set IntOnDiskVersion = $($R0) shell "" NumericVersion $(InstallVersion) set IntInstallVersion = $($R0) ifint $(IntInstallVersion) > $(IntOnDiskVersion) shell "" MessageBox $(UpdateNowTitle) $(UpdateNow) 3 4 1 ifstr(i) $($R0) == "YES" shell "" UpdateMode $(Option) $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) set Status = $($R0) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Error endif else shell "" StatusMessage $(UpdateLater) set Status = "STATUS_USERCANCEL" goto Exit endif endif ifint $(IntInstallVersion) < $(IntOnDiskVersion) shell "" StatusMessage $(NewerInstalled) goto Exit endif shell "" GetRegValueByName $(TYPECHECK_NONE) $(PackageKeyName)"\NetRules" "InfName" ifint $($R0) == 1 set InfName = $($R1) set InfPath = $(!STF_WINDOWSSYSPATH)"\"$(InfName) ifstr(i) $(InfPath) != $(STF_CONTEXTINFNAME) shell $(InfPath) InstallOption $(!STF_LANGUAGE) $(Option) $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif set Status = $($R0) set DeleteInfOnExit = 1 goto Exit endif endif shell "" IsPackageInstalled ifint $($R0) == 0 shell "utility.inf" InstallSoftwareProduct $(Manufacturer) $(PackageSoftwareName) $(STF_CONTEXTINFNAME) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set KeyPackage = $($R1) set KeyNetRules = $($R2) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyPackage) "SoftwareVersion" $(InstallVersion) ifint $($R0) == 0 goto Error endif shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyPackage) "Hidden" 1 ifint $($R0) == 0 goto Error endif shell "" CloseOpenRegKey $(KeyPackage) shell "" CloseOpenRegKey $(KeyNetRules) ifstr $(SrcDir) == "" shell "" GetSourceDir $(SrcDir) ifstr $($R0) != "STATUS_SUCCESSFUL" set Status = $($R0) ifint 0 == 0 goto Error endif endif set SrcDir = $($R1) endif shell "" CopyDetectionFiles $(SrcDir) ifint $($R0) == 0 goto Error endif shell "" AddService "PCI" ifint $($R0) == 0 goto Error endif set InstalledDriverList = >($(InstalledDriverList), "PCI") shell "" AddGroupToServiceGroupOrder $(DStreamsDependOnGroup) $(DStreamsBeforeGroup) ifint $($R0) == 0 goto Error endif endif GetBusInfo = + shell "" GetBusData $(Option) $(ProductHardwareDescription) ifint $($R0) == 0 goto Error endif set BusName = $($R1) set BusType = $($R2) set BusNumber = $($R3) shell "" Find$(BusName) $(BusType) $(BusNumber) $(Option) set AdapterData = $($R0) ifstr $(AdapterData) == {} shell "" SetupMessage "FATAL" $(NoNetworkCard) goto Error endif set BusNumber = 0 set SlotNumber = 0 set IOBaseAddress = 0 set MemoryAddress = 0 set InterruptNumber = 0 set VendorID = 0 set PciID = 0 set SubVendorID = 0 set SubPciID = 0 set RevisionID = 0 set CardID = 0 set BusNumber = *($(AdapterData), 1) set SlotNumber = *($(AdapterData), 2) ifstr $(BusName) == "ISA" set IOBaseAddress = *($(AdapterData), 3) set MemoryAddress = *($(AdapterData), 4) set InterruptNumber = *($(AdapterData), 5) set Identity = *($(AdapterData), 6) else-ifstr $(BusName) == "PCI" set VendorID = *($(AdapterData), 3) set PciID = *($(AdapterData), 4) set SubVendorID = *($(AdapterData), 5) set SubPciID = *($(AdapterData), 6) set RevisionID = *($(AdapterData), 7) endif shell "" ResetInfOption $(Option) $(VendorID) $(PciID) $(SubPciID) ifint $($R0) == 0 goto Error endif set Option = $($R1) read-syms DriverPackageConstants read-syms DriverConstants-$(Option) shell "" IsOptionInstalled $(Option) ifint $($R0) == 1 goto InstallAdapter endif InstallSoftware = + ifstr(i) $(DoCopy) == "YES" shell "" GetSourceDir $(SrcDir) ifstr $($R0) != "STATUS_SUCCESSFUL" set Status = $($R0) ifint 0 == 0 goto Error endif endif set SrcDir = $($R1) shell "" CopyCoreFiles $(Option) $(SrcDir) $(AddCopy) $(DoCopy) ifint $($R0) == 0 goto Error endif endif shell "" MakeRegKey $(!REG_H_LOCAL) { $(PackageInstalledOptionsKeyName), 0, "GenericClass" } set KeyInstalledOptions = $($R0) ifstr $(KeyInstalledOptions) == "" ifint 0 == 0 goto Error endif endif shell "" MakeRegKey $(!REG_H_LOCAL) { $(PackageOptionInstalledKeyName), 0, "GenericClass" } set KeyOptionInstalled = $($R0) ifstr $(KeyOptionInstalled) == "" ifint 0 == 0 goto Error endif endif shell "" SetRefCountByKey $(KeyOptionInstalled) 0 ifint $($R0) == 0 goto Error endif shell "" WriteConfigData ifstr(i) $(DoCopy) == "YES" shell "" InstallDiags $(Option) $(SrcDir) $(AddCopy) $(DoCopy) ifint $($R0) == 0 goto Error endif endif InstallDriver = + ifcontains(i) $(Option) in $(OptionsThatNeedStreams) shell "" AddStreamsService ifint $($R0) == 0 goto Error endif endif shell "" AddService $(Option) ifint $($R0) == 0 goto Error endif InstallAdapter = + shell "utility.inf" IncrementRefCount $(PackageKeyName) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set IncrementedPackageRefCount = 1 shell "utility.inf" IncrementRefCount $(PackageOptionInstalledKeyName) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set IncrementedInstalledOptionRefCount = 1 set HardwareParametersValueList = {} set HardwareParametersValueList = >($(HardwareParametersValueList), { "BusName", 0, $(!REG_VT_SZ), $(BusName) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "BusType", 0, $(!REG_VT_DWORD), $(BusType) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "BusNumber", 0, $(!REG_VT_DWORD), $(BusNumber) }) ifstr $(BusName) == "ISA" set HardwareParametersValueList = >($(HardwareParametersValueList), { "IOBaseAddress", 0, $(!REG_VT_DWORD), $(IOBaseAddress) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "MemoryMappedBaseAddress", 0, $(!REG_VT_DWORD), $(MemoryAddress) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "InterruptNumber", 0, $(!REG_VT_DWORD), $(InterruptNumber) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "Identity", 0, $(!REG_VT_SZ), $(Identity) }) else-ifstr $(BusName) == "PCI" set HardwareParametersValueList = >($(HardwareParametersValueList), { "SlotNumber", 0, $(!REG_VT_DWORD), $(SlotNumber) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "VendorId", 0, $(!REG_VT_DWORD), $(VendorID) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "PciId", 0, $(!REG_VT_DWORD), $(PciID) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "SubVendorId", 0, $(!REG_VT_DWORD), $(SubVendorID) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "SubDeviceId", 0, $(!REG_VT_DWORD), $(SubPciID) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "RevisionId", 0, $(!REG_VT_DWORD), $(RevisionID) }) endif shell "" FirmwareImageNames $(Option) $(BusName) set BiosImage = $($R0) set FepImage = $($R1) set HardwareParametersValueList = >($(HardwareParametersValueList), { "FepImagePath", 0, $(!REG_VT_SZ), $(FepImage) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "BiosImagePath", 0, $(!REG_VT_SZ), $(BiosImage) }) shell "" CalculateNumberOfLines $(Option) $(BusName) $(VendorID) $(PciID) $(SubPciID) $(Identity) set NumberOfLines = $($R0) set HardwareParametersValueList = >($(HardwareParametersValueList), { "NumberOfLines", 0, $(!REG_VT_DWORD), $(NumberOfLines) }) set HardwareParametersValueList = >($(HardwareParametersValueList), { "Option", 0, $(!REG_VT_SZ), $(Option) }) shell "" AddAdapter $(Option) $(Option) "" "" {} {} $(HardwareParametersValueList) ifint $($R0) == 0 goto Error endif set AdapterNumber = $($R1) set AdapterServiceName = $(ProductHardwareName)$(AdapterNumber) set InstalledAdapterList = >($(InstalledAdapterList), { $(Option), $(AdapterNumber) }) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyHardwareParameters = $($R0) ifstr $(KeyHardwareParameters) == "" ifint 0 == 0 goto Error endif endif shell "" ConfigureAdapter-$(Option) $(SrcDir) $(Option) $(KeyHardwareParameters) $(AdapterServiceName) set Status = $($R0) ifstr(i) $(Status) == "STATUS_USERCANCEL" goto Error endif ifstr(i) $(Status) == "STATUS_FAILED" goto Error endif goto Exit Error = + ifint $(IncrementedInstalledOptionRefCount) == 1 shell "utility.inf" DecrementRefCount $(PackageOptionInstalledKeyName) endif shell "utility.inf" IsRefCountEqualZero $(PackageOptionInstalledKeyName) ifint $($R1) == 1 DeleteRegTree $(!REG_H_LOCAL) $(PackageOptionInstalledKeyName) endif ifint $(IncrementedPackageRefCount) == 1 shell "utility.inf" DecrementRefCount $(PackageKeyName) endif shell "utility.inf" IsRefCountEqualZero $(PackageKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(PackageSoftwareName) shell "" RemoveGroupFromServiceGroupOrder $(DStreamsDependOnGroup) shell "" RemoveDiags $(Option) $(SrcDir) $(AddCopy) $(DoCopy) set DeleteInfOnExit = 1 endif ForListDo $(InstalledAdapterList) set Type = *($($), 1) set AdapterNumber = *($($), 2) read-syms DriverConstants-$(Type) ifcontains(i) $(Option) in $(OptionsThatNeedStreams) shell "" RemoveAdapterFromMiniportAdapters $(ProductHardwareName)$(AdapterNumber) endif shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(KEY_NETWORKCARDS)"\"$(AdapterNumber) EndForListDo ForListDo $(InstalledDriverList) set Type = $($) read-syms DriverConstants-$(Type) shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) "FALSE" EndForListDo shell "" RemoveFilesInRemoveList set ManufacturerKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer) OpenRegKey $(!REG_H_LOCAL) "" $(ManufacturerKeyName) 33554432 KeyManufacturer ifstr $(KeyManufacturer) != "" EnumRegKey $(KeyManufacturer) DigiProductList CloseRegKey $(KeyManufacturer) QueryListSize NumDigiProducts $(DigiProductList) ifint $(NumDigiProducts) == 0 DeleteRegTree $(!REG_H_LOCAL) $(ManufacturerKeyName) endif endif Exit = + ifint $(DeleteInfOnExit) == 1 LibraryProcedure Result $(!LIBHANDLE) DelFile $(STF_CONTEXTINFNAME) endif shell "" CloseOpenRegKey $(KeyPackage) shell "" CloseOpenRegKey $(KeyInstalledOptions) shell "" CloseOpenRegKey $(KeyOptionInstalled) shell "" CloseOpenRegKey $(KeyHardwareParameters) EndWait Return $(Status) [UpdateAllFiles] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms Identification read-syms DriverPackageConstants set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set Success = 0 set FileListSectionsToUpdate = { + DetectionFilesList, + CoreFilesList-Houston, + CoreFilesList-London, + CoreFilesList-Chaska, + CoreFilesList-Clydesdale, + CoreFilesList-Sync570, + } ForListDo $(FileListSectionsToUpdate) set FileListSection = $($) set DescList = ^($(FileListSection), 0) ForListDo $(DescList) set Desc = $($) set Section = #($(FileListSection), $(Desc), 1) set DstDir = #($(FileListSection), $(Desc), 2) Install Install-AddFiles EndForListDo EndForListDo read-syms UpdateProgress-Strings-$(!STF_LANGUAGE) Install Install-CopyFiles ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS" ifstr(i) "UNABLE_COPY_FILE" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_COPY_FILE" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif endif shell "" GetRegValueByName $(TYPECHECK_NONE) $(PackageKeyName)"\NetRules" "InfName" ifint $($R0) == 0 goto Exit endif set InfName = $($R1) set InfPath = $(!STF_WINDOWSSYSPATH)"\"$(InfName) LibraryProcedure Result $(!NCPA_HANDLE) CopySingleFile $(!STF_HWND) $(STF_CONTEXTINFNAME) $(InfPath) set Success = 1 Exit = + Return $(Success) [UpdateMode] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms Identification read-syms DriverPackageConstants read-syms InstallMessages-$(!STF_LANGUAGE) read-syms UpdateMessages-$(!STF_LANGUAGE) set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set DoConfig = $($4) set Status = "STATUS_USERCANCEL" shell "" GetExistingSoftwareVersion set OnDiskVersion = $($R1) shell "" NumericVersion $(OnDiskVersion) set IntOnDiskVersion = $($R0) shell "" NumericVersion $(InstallVersion) set IntInstallVersion = $($R0) ifint $(IntInstallVersion) == $(IntOnDiskVersion) shell "" StatusMessage $(AlreadyUpdated) goto Exit endif ifint $(IntInstallVersion) < $(IntOnDiskVersion) shell "" StatusMessage $(NewerInstalled) goto Exit endif shell "" MessageBox $(UpdateWarningTitle) $(UpdateWarning) 3 2 1 ifstr(i) $($R0) != "YES" shell "" StatusMessage $(UpdateLater) set Status = "STATUS_USERCANCEL" goto Exit endif set Status = "STATUS_FAILED" shell "" UpdateAllFiles $(Option) $(SrcDir) $(AddCopy) $(DoCopy) ifint $($R0) == 0 goto Exit endif shell "" WriteConfigData shell "subroutn.inf" PopBillboard read-syms UpdateConstants LoadLibrary "x" $(UPDATEDLL_PATH) DIGIHANDLE LibraryProcedure Result $(DIGIHANDLE) Update $(!STF_HWND) $(Option) FreeLibrary $(DIGIHANDLE) set Status = "STATUS_SUCCESSFUL" Exit = + Return $(Status) [MiscDeleteFileList] "Generated Files" = Files-Delete, $(!STF_WINDOWSSYSPATH) [RemoveFiles] set FileList = $($0) ForListDo $(FileList) set CurrentPath = $($) LibraryProcedure Result $(!LIBHANDLE) CheckFileExistance $(CurrentPath) ifstr(i) $(Result) == "YES" LibraryProcedure Result $(!LIBHANDLE) DelFile $(CurrentPath) ifstr(i) $(Result) != "SUCCESS" shell "" DirectoryFromPath $(CurrentPath) set Directory = $($R0) shell "" BaseFromPath $(CurrentPath) set Base = $($R0) set BackupPath = $(Directory)$(Base)".old" LibraryProcedure Result $(!LIBHANDLE) CheckFileExistance $(BackupPath) ifstr(i) $(Result) == "YES" LibraryProcedure Result $(!LIBHANDLE) DelFile $(BackupPath) endif LibraryProcedure Result $(!LIBHANDLE) RenFile $(CurrentPath) $(BackupPath) AddFileToDeleteList $(BackupPath) endif endif EndForListDo Return [AddSingleFileToRemoveList] set Path = $($0) set !DIGI_RemoveFilesList = >($(!DIGI_RemoveFilesList), $(Path)) Return [AddSectionFilesToRemoveList] set Section = $($0) set Dir = $($1) Ifcontains $(Section)$(Dir) not-in $(!DIGI_FileSectionsToRemoveCoalesceList) set !DIGI_FileSectionsToRemoveCoalesceList = >($(!DIGI_FileSectionsToRemoveCoalesceList), $(Section)$(Dir)) set FileList = ^($(Section), 2) ForListDo $(FileList) shell "" AddSingleFileToRemoveList $(Dir)"\"$($) EndForListDo else endif Return [RemoveFilesInRemoveList] shell "" RemoveFiles $(!DIGI_RemoveFilesList) shell "" ClearRemoveList Return [ClearRemoveList] set !DIGI_RemoveFilesList = {}; set !DIGI_FileSectionsToRemoveCoalesceList = {}; Return [RemoveServices] read-syms GlobalConstants set Line = $($0) set AdapterServiceName = $($1) set KeyParameters = "" set KeyLine = "" shell "" OpenServiceParamKey $(AdapterServiceName) set KeyParameters = $($R0) ifstr $(KeyParameters) == "" goto Exit endif OpenRegKey $(KeyParameters) "" $(Line) 33554432 KeyLine ifstr $(KeyLine) == "" goto Exit endif set LineServices = {} shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyLine) "LineServices" ifint $($R0) == 1 set LineServices = $($R1) endif ForListDo $(LineServices) set Service = $($) shell "" "Remove-"$(Service) $(Line) $(KeyLine) $(AdapterServiceName) EndForListDo Exit = + shell "" CloseOpenRegKey $KeyParameters shell "" CloseOpenRegKey $KeyLine Return [DeinstallMode] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms Identification set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set DoConfig = $($4) read-syms DriverPackageConstants read-syms DriverConstants-$(Option) read-syms InstallMessages-$(!STF_LANGUAGE) set Status = "STATUS_FAILED" set KeyAdapter = "" set KeyNetRules = "" set KeyProduct = "" set KeyDigiRoot = "" ifstr(i) $(ProductKeyName) == $(!NTN_RegBase) shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) goto CheckProductList endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) 33554432 KeyAdapter ifstr $(KeyAdapter) == "" goto Exit endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyAdapter) "ServiceName" set ServiceName = $($R1) OpenRegKey $(KeyAdapter) "" "NetRules" 33554432 KeyNetRules ifstr $(KeyNetRules) == "" goto Exit endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyNetRules) "InfOption" ifstr(i) $($R1) == $(Option) set OptionMatch = 1 else set OptionMatch = 0 endif set Option = $($R1) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) 33554432 KeyAdapter ifstr $(KeyAdapter) == "" goto Exit endif shell "" OpenServiceParamKey $(ServiceName) set KeyParameters = $($R0) ifstr $(KeyParameters) == "" goto Exit endif shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyParameters) "NumberOfLines" set NumberOfLines = $($R1) set LineNumber = 0 goto Continue_RemoveLineServices Top_RemoveLineServices = + shell "" NumberToName $(LineNumber) set LineName = $($R0) shell "" RemoveServices $(LineName) $(ServiceName) set-add LineNumber = $(LineNumber), 1 Continue_RemoveLineServices = + ifint $(LineNumber) < $(NumberOfLines) goto Top_RemoveLineServices endif Break_RemoveLineServices = + ifcontains(i) $(Option) in $(OptionsThatNeedStreams) shell "" RemoveAdapterFromMiniportAdapters $(ServiceName) endif shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(!NTN_RegBase) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif shell "utility.inf" DecrementRefCount $(PackageOptionInstalledKeyName) shell "utility.inf" IsRefCountEqualZero $(PackageOptionInstalledKeyName) ifint $($R1) == 1 DeleteRegTree $(!REG_H_LOCAL) $(PackageOptionInstalledKeyName) endif shell "utility.inf" DecrementRefCount $(PackageKeyName) shell "utility.inf" IsRefCountEqualZero $(PackageKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(PackageSoftwareName) "FALSE" read-syms DriverConstants-PCI shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) "FALSE" shell "" RemoveGroupFromServiceGroupOrder $(DStreamsDependOnGroup) shell "" RemoveDiags $(Option) $(SrcDir) $(AddCopy) $(DoCopy) set FileListSectionsToDelete = { + DetectionFilesList, + MiscDeleteFileList, + CoreFilesList-Houston, + CoreFilesList-London, + CoreFilesList-Chaska, + CoreFilesList-Clydesdale, + CoreFilesList-Sync570, + } ForListDo $(FileListSectionsToDelete) set FileListSection = $($) set DescList = ^($(FileListSection), 0) ForListDo $(DescList) set Desc = $($) set Section = #($(FileListSection), $(Desc), 1) set DstDir = #($(FileListSection), $(Desc), 2) ifstr(i) $(Section) != "Files-Redistributable" shell "" AddSectionFilesToRemoveList $(Section) $(DstDir) endif EndForListDo EndForListDo shell "" AddSingleFileToRemoveList $(STF_CONTEXTINFNAME) shell "" RemoveFilesInRemoveList endif CheckProductList = + OpenRegKey $(!REG_H_LOCAL) "" $(KEY_DIGIROOT) 33554432 KeyDigiRoot ifstr $(KeyDigiRoot) != "" EnumRegKey $(KeyDigiRoot) DigiProductList QueryListSize NumDigiProducts $(DigiProductList) ifint $(NumDigiProducts) == 0 DeleteRegTree $(!REG_H_LOCAL) $(KEY_DIGIROOT) endif endif set Status = "STATUS_SUCCESSFUL" Exit = + shell "" CloseOpenRegKey $(KeyAdapter) shell "" CloseOpenRegKey $(KeyNetRules) shell "" CloseOpenRegKey $(KeyProduct) shell "" CloseOpenRegKey $(KeyDigiRoot) Return $(Status) [NumberToName] set Num = $($0) set Name = "" set Name = $(Name)$(Num) Exit = + Return $(Name) [ConfigureAdapter] set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) set CfgDllPath = $($4) set CfgDllEntry = $($5) set Status = "STATUS_FAILED" set NeedBindingReview = 0 set OldLineConfigList = {} shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyParameters) "NumberOfLines" set NumberOfLines = $($R1) set LineNumber = 0 goto Continue_GetOldLineConfigs Top_GetOldLineConfigs = + shell "" NumberToName $(LineNumber) set LineName = $($R0) set OldLineServices = {} OpenRegKey $(KeyParameters) "" $(LineName) 33554432 KeyLine ifstr $(KeyLine) == "" shell "" MakeRegKey $(KeyParameters) { $(LineName), 0, "GenericClass" } set KeyLine = $($R0) set OldLineServices = { "None" } else shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyLine) "LineServices" set OldLineServices = $($R1) ForListDo $(OldLineServices) set Service = $($) shell "" "SetUp-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) EndForListDo endif CloseRegKey $(KeyLine) set OldLineConfigList = >($(OldLineConfigList), { $(LineName), $(OldLineServices) }) set-add LineNumber = $(LineNumber), 1 Continue_GetOldLineConfigs = + ifint $(LineNumber) < $(NumberOfLines) goto Top_GetOldLineConfigs endif Break_GetOldLineConfigs = + shell "subroutn.inf" PopBillboard LoadLibrary "x" $(CfgDllPath) DIGIHANDLE LibraryProcedure Result $(DIGIHANDLE) $(CfgDllEntry) $(!STF_HWND) $(Option) $(AdapterServiceName) FreeLibrary $(DIGIHANDLE) ifstr(i) $(Result) != "OK" read-syms InstallMessages-$(!STF_LANGUAGE) ifstr(i) $(Result) == "Cancel" set Status = "STATUS_USERCANCEL" ifstr(i) $(!NTN_InstallMode) == "Install" shell "" SetupMessage "FATAL" $(UserCanceledInstall) endif else shell "" SetupMessage "FATAL" $(CfgDllFailed) endif goto Exit endif shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyParameters) "NumberOfLines" set NewNumberOfLines = $($R1) ifint $(NewNumberOfLines) > $(NumberOfLines) set NumberOfLines = $(NewNumberOfLines) endif set LineNumber = 0 goto Continue_GetNewLineConfigs Top_GetNewLineConfigs = + shell "" NumberToName $(LineNumber) set LineName = $($R0) set OldLineServices = { "None" } ForListDo $(OldLineConfigList) set OldLineName = *($($), 1) ifstr(i) $(LineName) == $(OldLineName) set OldLineServices = *($($), 2) endif EndForListDo OpenRegKey $(KeyParameters) "" $(LineName) 33554432 KeyLine shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyLine) "LineServices" set NewLineServices = $($R1) ForListDo $(NewLineServices) set Service = $($) Ifcontains(i) $(Service) not-in $(OldLineServices) shell "" "Add-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) $(LineNumber) $(SrcDir) $(Option) set NeedBindingReview = 1 endif EndForListDo ForListDo $(OldLineServices) set Service = $($) Ifcontains(i) $(Service) not-in $(NewLineServices) shell "" "Remove-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) set NeedBindingReview = 1 endif EndForListDo ForListDo $(NewLineServices) set Service = $($) shell "" "Config-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) $(Option) ifint $($R1) == 1 set NeedBindingReview = 1 endif shell "" "CleanUp-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) $(Result) EndForListDo ForListDo $(OldLineServices) set Service = $($) shell "" "CleanUp-"$(Service) $(LineName) $(KeyLine) $(AdapterServiceName) $(Result) EndForListDo CloseRegKey $(KeyLine) set-add LineNumber = $(LineNumber), 1 Continue_GetNewLineConfigs = + ifint $(LineNumber) < $(NumberOfLines) goto Top_GetNewLineConfigs endif Break_GetNewLineConfigs = + set Status = "STATUS_SUCCESSFUL" Exit = + Return $(Status) $(NeedBindingReview) [ConfigureMode] set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set DoConfig = $($4) set Status = "STATUS_FAILED" ifstr(i) $(ProductKeyName) == $(!NTN_RegBase) goto Error_CannotConfig endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) 33554432 KeySoftware ifstr $(KeySoftware) == "" goto Error_CannotConfig endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeySoftware) "ServiceName" set AdapterServiceName = $($R1) CloseRegKey $(KeySoftware) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyParameters = $($R0) ifstr $(KeyParameters) == "" goto Error_CannotConfig endif shell "" ConfigureAdapter-$(Option) $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) set Status = $($R0) CloseRegKey $(KeyParameters) goto Exit Error_CannotConfig = + ifstr(i) "CANNOT_CONFIGURE_SOFTWARE" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "CANNOT_CONFIGURE_SOFTWARE" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif set Status = "STATUS_USERCANCEL" Exit = + Return $(Status) [GetBindings] set Key = $($0) shell "" DefaultGetRegValueByKey $(!REG_VT_MULTI_SZ) $(Key) "Bind" {} set BindList = $($R0) shell "" DefaultGetRegValueByKey $(!REG_VT_MULTI_SZ) $(Key) "Route" {} set RouteList = $($R0) shell "" DefaultGetRegValueByKey $(!REG_VT_MULTI_SZ) $(Key) "Export" {} set ExportList = $($R0) Exit = + Return $(BindList) $(RouteList) $(ExportList) [BindMode] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Option = $($0) set SrcDir = $($1) set AddCopy = $($2) set DoCopy = $($3) set DoConfig = $($4) set OptionsThatNeedSpecialBindings = { "SyncPort" } Ifcontains $(Option) not-in $(OptionsThatNeedSpecialBindings) goto Exit endif set Status = "STATUS_FAILED" read-syms DriverConstants-$(Option) StartWait shell "" InstallSNMP $(Option) set Installed = $($R0) ifint $(Installed) == 1 shell "" ConfigSNMP $(Option) endif set TCPIPUsageList = {} set IPXUsageList = {} set EthernetUsageList = {} shell "" EnumAdapters { "FR", "X25L" } 0 set AdapterDataList = $($R0) ForListDo $(AdapterDataList) set ServiceName = *($($), 1) shell "" OpenServiceParamKey $(ServiceName) set KeyService = $($R0) shell "" GetRegValueByKey $(TYPECHECK_NONE) $(KeyService) "TCPIP" set TCPIPUsageList = >($(TCPIPUsageList), $($R1)) shell "" GetRegValueByKey $(TYPECHECK_NONE) $(KeyService) "IPX" set IPXUsageList = >($(IPXUsageList), $($R1)) shell "" GetRegValueByKey $(TYPECHECK_NONE) $(KeyService) "Ethernet" set EthernetUsageList = >($(EthernetUsageList), $($R1)) EndForListDo CloseRegKey $(KeyService) set TypeList = { "TCPIP", "IPX", "Ethernet" } set TCPIPServiceList = { "Tcpip", "NetBT" } set IPXServiceList = { "NwlnkIpx" } set EthernetServiceList = { "Nbf", "AppleTalk", "DLC" } OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) 33554432 KeyServiceRoot EnumRegKey $(KeyServiceRoot) ServicesList ForListDo $(ServicesList) set Service = *($($), 1) set KeyBind = "" set KeyDisabledBind = "" Ifcontains(i) $(Service) in $(HardwareList) goto NextService endif OpenRegKey $(KeyServiceRoot) "" $(Service)"\Linkage" 33554432 KeyBind ifstr $(KeyBind) == "" goto NextService endif OpenRegKey $(KeyBind) "" "Disabled" 33554432 KeyDisabledBind ifstr $(KeyDisabledBind) == "" goto NextService endif shell "" GetBindings $(KeyBind) set BindList = $($R0) set RouteList = $($R1) set ExportList = $($R2) shell "" GetBindings $(KeyDisabledBind) set DisabledBindList = $($R0) set DisabledRouteList = $($R1) set DisabledExportList = $($R2) ifstr $(BindList) == {} ifstr $(DisabledBindList) == {} goto NextService endif endif set NewBindList = {} set NewRouteList = {} set NewExportList = {} set NewDisabledBindList = {} set NewDisabledRouteList = {} set NewDisabledExportList = {} ForListDo $(BindList) set Activate = 1 Split-String $($) "_\" BindComponentList ForListDo $(AdapterDataList) set AdapterName = *($($), 1) set AdapterIndex = $(#) Ifcontains(i) $(AdapterName) in $(BindComponentList) ForListDo $(TypeList) set Protocol = $($) set Usage = *($($(Protocol)UsageList), $(AdapterIndex)) ifint $(Usage) == 0 Ifcontains(i) $(Service) in $($(Protocol)ServiceList) set Activate = 0 else ForListDo $($(Protocol)ServiceList) Ifcontains(i) $($) in $(BindComponentList) set Activate = 0 endif EndForListDo Endif endif EndForListDo endif EndForListDo set BindValue = *($(BindList), $(#)) set RouteValue = *($(BindList), $(#)) set ExportValue = *($(BindList), $(#)) ifint $(Activate) == 1 set NewBindList = >($(NewBindList), $(BindValue)) set NewRouteList = >($(NewRouteList), $(RouteValue)) set NewExportList = >($(NewExportList), $(ExportValue)) else set NewDisabledBindList = >($(NewDisabledBindList), $(BindValue)) set NewDisabledRouteList = >($(NewDisabledRouteList), $(RouteValue)) set NewDisabledExportList = >($(NewDisabledExportList), $(ExportValue)) endif EndForListDo ForListDo $(DisabledBindList) set Activate = 0 Split-String $($) "_\" BindComponentList ForListDo $(AdapterDataList) set AdapterName = *($($), 1) set AdapterIndex = $(#) Ifcontains(i) $(AdapterName) in $(BindComponentList) ForListDo $(TypeList) set Protocol = $($) set Usage = *($($(Protocol)UsageList), $(AdapterIndex)) ifint $(Usage) > 0 Ifcontains(i) $(Service) in $($(Protocol)ServiceList) set Activate = 1 else ForListDo $($(Protocol)ServiceList) Ifcontains(i) $($) in $(BindComponentList) set Activate = 1 endif EndForListDo Endif endif EndForListDo endif EndForListDo set BindValue = *($(DisabledBindList), $(#)) set RouteValue = *($(DisabledRouteList), $(#)) set ExportValue = *($(DisabledExportList), $(#)) ifint $(Activate) == 1 set NewBindList = >($(NewBindList), $(BindValue)) set NewRouteList = >($(NewRouteList), $(BindValue)) set NewExportList = >($(NewExportList), $(ExportValue)) else set NewDisabledBindList = >($(NewDisabledBindList), $(BindValue)) set NewDisabledRouteList = >($(NewDisabledRouteList), $(RouteValue)) set NewDisabledExportList = >($(NewDisabledExportList), $(ExportValue)) endif EndForListDo set BindValueList = { + { "Bind", 0, $(!REG_VT_MULTI_SZ), $(NewBindList) }, + { "Route", 0, $(!REG_VT_MULTI_SZ), $(NewRouteList) }, + { "Export", 0, $(!REG_VT_MULTI_SZ), $(NewExportList) } } shell "" SetValuesFromList $(KeyBind) $(BindValueList) set DisabledBindValueList = { + { "Bind", 0, $(!REG_VT_MULTI_SZ), $(NewDisabledBindList) }, + { "Route", 0, $(!REG_VT_MULTI_SZ), $(NewDisabledRouteList) }, + { "Export", 0, $(!REG_VT_MULTI_SZ), $(NewDisabledExportList) } } shell "" SetValuesFromList $(KeyDisabledBind) $(DisabledBindValueList) NextService = + shell "" CloseOpenRegKey $(KeyDisabledBind) shell "" CloseOpenRegKey $(KeyBind) EndForListDo shell "" CloseOpenRegKey $(KeyServiceRoot) EndWait Exit = + set Status = "STATUS_SUCCESSFUL" Return $(Status) [EnumAdapters] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set ProductTypeList = $($0) set WantAdapterKeys = $($1) set ProductNameList = {} ForListDo $(ProductTypeList) read-syms DriverConstants-$($) set ProductNameList = >($(ProductNameList), $(ProductHardwareName)) EndForListDo set AdapterDataList = {} OpenRegKey $(!REG_H_LOCAL) "" $(KEY_NETWORKCARDS) 33554432 KeyNetCards ifstr $(KeyNetCards) != "" EnumRegKey $(KeyNetCards) KeyNameList ForListDo $(KeyNameList) set NetCardNum = *($($), 1) OpenRegKey $(KeyNetCards) "" $(NetCardNum) 33554432 KeyNetCard ifstr $(KeyNetCard) != "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyNetCard) "ProductName" set ProductName = $($R1) Ifcontains(i) $(ProductName) in $(ProductNameList) shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyNetCard) "ServiceName" set ServiceName = $($R1) ifint $(WantAdapterKeys) == 0 CloseRegKey $(KeyNetCard) set KeyNetCard = "" endif set AdapterData = { $(ServiceName), $(NetCardNum), $(KeyNetCard) } set AdapterDataList = >($(AdapterDataList), $(AdapterData)) else CloseRegKey $(KeyNetCard) endif endif EndForListDo CloseRegKey $(KeyNetCards) endif Exit = + Return $(AdapterDataList) [FindAdapter] read-syms GlobalConstants read-syms GlobalRegistryConstants set ProductHardwareName = $($0) set Success = 0 set AdapterNumber = "" OpenRegKey $(!REG_H_LOCAL) "" $(KEY_NETWORKCARDS) 33554432 KeyNetCards ifstr $(KeyNetCards) != "" EnumRegKey $(KeyNetCards) NetworkCardList ForListDo $(NetworkCardList) ifint $(Success) == 0 set NetworkCardKeyName = *($($), 1) OpenRegKey $(KeyNetCards) "" $(NetworkCardKeyName) 33554432 NetworkCardKey ifstr $(NetworkCardKey) != "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(NetworkCardKey) "ProductName" set ProductName = $($R1) ifstr(i) $(ProductName) == $(ProductHardwareName) set AdapterNumber = $(NetworkCardKeyName) set Success = 1 endif endif endif EndForListDo endif Exit = + Return $(Success) $(AdapterNumber) [AddAdapter] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Option = $($1) set StringsOverride = $($2) set AdapterNumberStartingPoint = $($3) set AdditionalNetCardValues = $($4) set AdditionalAdapterRules = $($5) set AdditionalParameters = $($6) read-syms DriverConstants-$(Type) read-syms $(Type)-Strings-$(!STF_LANGUAGE) read-syms Generic-Strings-$(!STF_LANGUAGE) ifstr $(StringsOverride) != "" read-syms $(StringsOverride) endif set Success = 0 set AdapterNumber = 0 set KeyNetCard = "" set KeyAdapterRules = "" set KeyParameters = "" set HardwareInstalled = 0 shell "utility.inf" AssignAdapterNumber "" $(AdapterNumberStartingPoint) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set AssignedAdapterNumber = $($R1) shell "utility.inf" AddHardwareComponent + $(ProductHardwareName) + $(STF_CONTEXTINFNAME) + $(ProductKeyName) + "" + "" + $(AssignedAdapterNumber) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set KeyNetCard = $($R1) set KeyAdapterRules = $($R2) set KeyParameters = $($R3) set AdapterNumber = $($R4) set AdapterServiceName = $($R5) set HardwareInstalled = 1 set NewAdapterTitle = "["$(AdapterNumber)"] "$(AdapterTitle) shell "" SetRefCountByKey $(KeyNetCard) 1 ifint $($R0) == 0 goto Error endif shell "" GetElapsedTime set CurrentTime = $($R0) set NetCardValueList = { + { "Manufacturer", 0, $(!REG_VT_SZ), $(Manufacturer) }, + { "Title", 0, $(!REG_VT_SZ), $(NewAdapterTitle) }, + { "Description", 0, $(!REG_VT_SZ), $(AdapterDescription) }, + { "ProductName", 0, $(!REG_VT_SZ), $(ProductHardwareName) }, + { "ServiceName", 0, $(!REG_VT_SZ), $(AdapterServiceName) }, + { "InstallDate", 0, $(!REG_VT_DWORD), $(CurrentTime) } } shell "" SetValuesFromList $(KeyNetCard) $(NetCardValueList) ifint $($R0) == 0 goto Error endif shell "" SetValuesFromList $(KeyNetCard) $(AdditionalNetCardValues) ifint $($R0) == 0 goto Error endif set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)"""" set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm) set AdapterRulesValueList = { + { "type", 0, $(!REG_VT_SZ), $(NetRuleHardwareType) }, + { "bindform", 0, $(!REG_VT_SZ), $(TempBindForm) }, + { "class", 0, $(!REG_VT_MULTI_SZ), $(NetRuleHardwareClass) }, + { "InfOption", 0, $(!REG_VT_SZ), $(Option) } } shell "" SetValuesFromList $(KeyAdapterRules) $(AdapterRulesValueList) ifint $($R0) == 0 goto Error endif shell "" SetValuesFromList $(KeyAdapterRules) $(AdditionalAdapterRules) ifint $($R0) == 0 goto Error endif set DeviceName = $(AdapterServiceName) ifcontains(i) $(Option) in $(OptionsThatNeedStreams) set DeviceName = $(StreamsDevice) endif set ParametersValueList = { + { "ServiceName", 0, $(!REG_VT_SZ), $(AdapterServiceName) }, + { "Device", 0, $(!REG_VT_SZ), $(DeviceName) }, + { "VAdapterNum", 0, $(!REG_VT_SZ), $(AdapterNumber) } } shell "" SetValuesFromList $(KeyParameters) $(ParametersValueList) ifint $($R0) == 0 goto Error endif shell "" SetValuesFromList $(KeyParameters) $(AdditionalParameters) ifint $($R0) == 0 goto Error endif set Success = 1 goto Exit Error = + ifint $(HardwareInstalled) == 1 shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(KEY_NETWORKCARDS)"\"$(AdapterNumber) endif Exit = + set KeyCloseList = { $(KeyNetCard), $(KeyAdapterRules), $(KeyParameters) } shell "" CloseOpenRegKeyList $(KeyCloseList) Return $(Success) $(AdapterNumber) [SetParams] set AdapterParametersKey = $($0) set DLCI = $($1) set DLCIList = $($2) set KeyPVCList = $($3) set KeyNetCard = $($4) read-syms GlobalConstants set Success = 0 set NeedBindingReview = 0 ForListDo $(DLCIList) ifint $(DLCI) == $($) set ItemNumber = $(#) endif EndForListDo set KeyPVC = *($(KeyPVCList), $(ItemNumber)) shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyPVC) "Desc" set Desc = $($R1) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyNetCard) "Title" $(Desc) set ValueNameList = { "TCPIP", "IPX", "Ethernet" } ForListDo $(ValueNameList) set ValueName = $($) shell "" GetRegValueByKey $(TYPECHECK_NONE) $(KeyPVC) $(ValueName) ifint $($R1) != 0 set PVCHasConnections = 1 else set PVCHasConnections = 0 endif shell "" GetRegValueByKey $(TYPECHECK_NONE) $(AdapterParametersKey) $(ValueName) ifint $($R1) != 0 set AdapterHasConnections = 1 else set AdapterHasConnections = 0 endif shell "" Boolean-Xor $(PVCHasConnections) $(AdapterHasConnections) ifint $($R0) == 1 set NeedBindingReview = 1 endif EndForListDo shell "" CopyRegTree $(KeyPVC) $(AdapterParametersKey) ifint $($R0) == 0 goto Exit endif set Success = 1 Exit = + Return $(Success) $(NeedBindingReview) [CreateVirtualAdapters] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Line = $($1) set AdapterNameNumber = $($2) set Option = $($3) read-syms DriverConstants-$(Type) set Success = 0 set NeedBindingReview = 0 set KeyParams = "" shell "" OpenServiceParamKey $(AdapterNameNumber) set KeyParams = $($R0) ifstr $(KeyParams) == "" ifstr(i) "UNABLE_ACCESS_SOFTWARE_REG" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_ACCESS_SOFTWARE_REG" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif endif set Key = "" set KeySubPVCList = {} OpenRegKey $(KeyParams) "" $(LineServiceKeyName)\$(Line) 33554432 Key ifstr $(Key) == "" ifstr(i) "UNABLE_ACCESS_SOFTWARE_REG" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_ACCESS_SOFTWARE_REG" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif endif set DLCIList = {} EnumRegKey $(Key) SubKeyList ForListDo $(SubKeyList) set SubKeyName = *($($), 1) OpenRegKey $(Key) "" $(SubKeyName) 33554432 KeySubPVC shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeySubPVC) $(CircuitName) ifint $($R0) == 0 goto NextSubKey1 endif set DLCI = $($R1) set DLCIList = >($(DLCIList), $(DLCI)) set KeySubPVCList = >($(KeySubPVCList), $(KeySubPVC)) NextSubKey1 = + EndForListDo set ProcessedDLCIList = {} shell "" EnumAdapters { $(Type) } 1 set AdapterDataList = $($R0) ForListDo $(AdapterDataList) set ServiceName = *($($), 1) set NetCardNum = *($($), 2) set KeyNetworkCard = *($($), 3) set KeyVirtualAdapterService = "" shell "" OpenServiceParamKey $(ServiceName) set KeyVirtualAdapterService = $($R0) shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "Adapter" ifint $($R0) == 0 goto NextNetCard endif set AdapterName = $($R1) ifstr(i) $(AdapterName) != $(AdapterNameNumber) goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "Line" ifint $($R0) == 0 goto NextNetCard endif set AdapterLine = $($R1) ifstr(i) $(AdapterLine) != $(Line) goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyVirtualAdapterService) $(CircuitName) ifint $($R0) == 0 goto NextNetCard endif set DLCI = $($R1) Ifcontains $(DLCI) in $(DLCIList) shell "" SetParams $(KeyVirtualAdapterService) $(DLCI) $(DLCIList) $(KeySubPVCList) $(KeyNetworkCard) ifint $($R0) == 0 goto NextNetCard endif ifint $($R1) == 1 set NeedBindingReview = 1 endif else shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(KEY_NETWORKCARDS)"\"$(NetCardNum) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto NextNetCard endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto NextNetCard endif set NeedBindingReview = 1 endif set ProcessedDLCIList = >($(ProcessedDLCIList), $(DLCI)) NextNetCard = + set KeyCloseList = { $(KeyNetworkCard), $(KeyVirtualAdapterService) } shell "" CloseOpenRegKeyList $(KeyCloseList) EndForListDo ForListDo $(SubKeyList) set SubKeyName = *($($), 1) OpenRegKey $(Key) "" $(SubKeyName) 33554432 KeySubPVC shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeySubPVC) $(CircuitName) ifint $($R0) == 0 goto NextSubKey2 endif set DLCI = $($R1) Ifcontains $(DLCI) not-in $(ProcessedDLCIList) set RegPath = $(AdapterNameNumber)"\Parameters\"$(LineServiceKeyName)"\"$(Line)"\"$(SubKeyName) shell "" AddVirtualAdapter $(Type) $(Line) $(AdapterNameNumber) $(DLCI) $(Option) $(RegPath) set VAdapterNum = $($R1) OpenRegKey $(!REG_H_LOCAL) "" $(KEY_NETWORKCARDS)"\"$(VAdapterNum) 33554432 KeyNetcard shell "" OpenServiceParamKey $(ProductHardwareName)$(VAdapterNum) set KeyParameters = $($R0) shell "" SetParams $(KeyParameters) $(DLCI) $(DLCIList) $(KeySubPVCList) $(KeyNetcard) CloseRegKey $(KeyParameters) CloseRegKey $(KeyNetcard) set NeedBindingReview = 1 endif NextSubKey2 = + CloseRegKey $(KeySubPVC) EndForListDo set Success = 1 Exit = + set KeyCloseList = >($(KeySubPVCList), $(Key)) shell "" CloseOpenRegKeyList $(KeyCloseList) Return $(Success) $(NeedBindingReview) [AddVirtualAdapter] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Line = $($1) set ParentAdapterServiceName = $($2) set Circuit = $($3) set Option = $($4) set RegPath = $($5) set Success = 0 set AdapterNumber = 0 set PhysicalAdapterServiceName = $(ParentAdapterServiceName) ifcontains(i) $(Option) in $(OptionsThatNeedStreams) read-syms DriverConstants-Streams set ParentAdapterServiceName = $(ProductSoftwareName) endif set NetCardValueList = { + { "Adapter", 0, $(!REG_VT_SZ), $(ParentAdapterServiceName) }, + { "Hidden", 0, $(!REG_VT_DWORD), 1 } } ifstr(i) $(Type) == "X25" set ParametersValueList = { + { "Device", 0, $(!REG_VT_SZ), $(ParentAdapterServiceName) }, + { "Line", 0, $(!REG_VT_SZ), $(Line) }, + { "Protocol", 0, $(!REG_VT_SZ), $(Type) }, + { "RegPath", 0, $(!REG_VT_SZ), $(RegPath) } } else set ParametersValueList = { + { "Adapter", 0, $(!REG_VT_SZ), $(PhysicalAdapterServiceName) }, + { "Device", 0, $(!REG_VT_SZ), $(ParentAdapterServiceName) }, + { "Line", 0, $(!REG_VT_SZ), $(Line) }, + { "Protocol", 0, $(!REG_VT_SZ), $(Type) }, + { "RegPath", 0, $(!REG_VT_SZ), $(RegPath) } } endif ifstr $(CircuitName) != "" set ParametersValueList = >($(ParametersValueList), { $(CircuitName), 0, $(!REG_VT_DWORD), $(Circuit) }) endif shell "" AddAdapter $(Type) $(Option) "" "1000" $(NetCardValueList) {} $(ParametersValueList) set Success = $($R0) set AdapterNumber = $($R1) Exit = + Return $(Success) $(AdapterNumber) [RemoveVirtual] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set VAdapterNum = $($1) set Manufacturer = $($2) read-syms DriverConstants-$(Type) set AdapterKeyName = $(KEY_NETWORKCARDS)"\"$(VAdapterNum) shell "utility.inf" DecrementRefCount $(AdapterKeyName) shell "utility.inf" IsRefCountEqualZero $(AdapterKeyName) ifint $($R1) == 0 goto Exit endif shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(AdapterKeyName) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif Exit = + Return [RemoveVirtualAdapters] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Line = $($1) set AdapterNameNumber = $($2) set Manufacturer = $($3) read-syms DriverConstants-$(Type) shell "" EnumAdapters { $(Type) } 0 set AdapterDataList = $($R0) ForListDo $(AdapterDataList) set ServiceName = *($($), 1) set NetCardNum = *($($), 2) shell "" OpenServiceParamKey $(ServiceName) set KeyService = $($R0) ifstr $(KeyService) != "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyService) "Adapter" ifint $($R0) == 0 goto NextNetCard endif set AdapterName = $($R1) ifstr(i) $(AdapterName) != $(AdapterNameNumber) goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyService) "Line" ifint $($R0) == 0 goto NextNetCard endif set AdapterLine = $($R1) ifstr(i) $(AdapterLine) != $(Line) goto NextNetCard endif endif shell "utility.inf" RemoveHardwareComponent $(Manufacturer) $(ProductHardwareName) $(KEY_NETWORKCARDS)"\"$(NetCardNum) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto NextNetCard endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto NextNetCard endif NextNetCard = + shell "" CloseOpenRegKey $(KeyService) EndForListDo Return [PCIVendorInfo-SyncPort] VendorIDList = { 4431 } [PCIVendorInfo-DigiRAS] VendorIDList = { 4431, + } [PCIVendorInfo-PowerSync] VendorIDList = { 4431 } [PCIVendorInfo-Sync570] VendorIDList = { 4431 } [PCICardInfo-SyncPort] PciIDList = { 13 } [PCICardInfo-DigiRAS] PciIDList = { 29, + 36, + 35, + } [PCICardInfo-PowerSync] PciIDList = { 34, + 33, + 32, + 31, + } [PCICardInfo-Sync570] PciIDList = { 20498, + 20499, + } [BusTypesSupported-SyncPort] 1 5 [BusTypesSupported-DigiRAS] 5 [BusTypesSupported-PowerSync] 5 [BusTypesSupported-Sync570] 1 2 5 [BusTypesSupported] BusTypeList = ^(BusTypesSupported-$(BoardType),1) [ISABoardOptionsIn-Sync570] "2 Port ISA SYNC570" "4 Port ISA SYNC570" [ISABoardOptionsIn] BoardTypesIn = ^(ISABoardOptionsIn-$(BoardType),1) [ISABoardIdentityOut-Sync570] "DigiSync570Port2Isa" "DigiSync570Port4Isa" [ISABoardIdentityOut] BoardIdentityOut = ^(ISABoardIdentityOut-$(BoardType),1) [BusInterfaceMap] 1 = ISA 2 = ISA 5 = PCI [GetBusData] set BoardType = $($0) set Description = $($1) read-syms BusTypesSupported set Success = 0 set BusName = "" ifstr $(!STF_NCDETINFO) == {} QueryListSize NumberOfBusesSupported $(BusTypeList) ifint $(NumberOfBusesSupported) > 1 shell "utility.inf" GetBusTypeDialog $(Description) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif set BusType = $($R1) set BusNumber = $($R2) else set BusType = *($(BusTypeList), 1) set BusNumber = -1 endif else set BusType = *($(!STF_NCDETINFO), 5) set BusNumber = *($(!STF_NCDETINFO), 6) endif Ifcontains(i) $(BusType) not-in $(BusTypeList) read-syms InstallMessages-$(!STF_LANGUAGE) shell "" SetupMessage "FATAL" $(BusTypeNotSupported) goto Exit endif set BusName = #(BusInterfaceMap, $(BusType), 1) set Success = 1 Exit = + Return $(Success) $(BusName) $(BusType) $(BusNumber) [FirstUninstalledAdapter] set AdapterList = $($0) set BusNumber = $($1) set Adapter = {} ForListDo $(AdapterList) set AdapterBusNum = *($($), 1) ifint $(BusNumber) == -1 set _B1 = 1 else set _B1 = 0 endif ifint $(AdapterBusNum) == $(BusNumber) set _B2 = 1 else set _B2 = 0 endif shell "" Boolean-Or $(_B1) $(_B2) ifint $($R0) == 1 set AdapterSlotNum = *($($), 2) set Description = "" set Product = "" set SkipDescCheck = "YES" shell "utility.inf" IsNetCardAlreadyInstalled $(AdapterBusNum) $(AdapterSlotNum) $(Description) $(Product) $(SkipDescCheck) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif ifstr(i) $($R1) != "YES" set Adapter = $($) goto Exit endif endif EndForListDo Exit = + Return $(Adapter) [FindPCI] set InterfaceType = $($0) set BusNumber = $($1) set BoardType = $($2) read-syms PCIVendorInfo-$(BoardType) read-syms PCICardInfo-$(BoardType) set AdapterData = {} ForListDo $(VendorIDList) set VendorID = $($) ForListDo $(PciIDList) set PciID = $($) shell "utility.inf" GetPCIInformation $(VendorID) $(PciID) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif set AdapterList = $($R0) ifstr $(AdapterList) != {} shell "" FirstUninstalledAdapter $(AdapterList) $(BusNumber) set AdapterData = $($R0) ifstr $(AdapterData) != {} goto GetRestOfTheData endif endif EndForListDo EndForListDo goto Exit GetRestOfTheData = + set BusNumber = *($(AdapterData), 1) set SlotNumber = *($(AdapterData), 2) read-syms DetectionConstants LoadLibrary "x" $(DETECTDLL_PATH) DetectHandle LibraryProcedure Result $(DetectHandle) DetectEntry $(!STF_HWND) $(BoardType) $(InterfaceType) $(BusNumber) $(SlotNumber) FreeLibrary $(DetectHandle) set AdapterData = {} set DetectionResult = *($(Result), 1) ifstr(i) $(DetectionResult) == "SUCCESS" set DetectionWorked = 1 else set DetectionWorked = 0 endif ifint $(DetectionWorked) == 0 goto Exit endif set AdapterData = *($(Result), 2) Exit = + Return $(AdapterData) [FindISA] set InterfaceType = $($0) set BusNumber = $($1) set BoardType = $($2) read-syms ISABoardOptionsIn read-syms ISABoardIdentityOut LoadLibrary "x" $(!STF_SRCDIR)\DigiDlg.dll !DIGIDLGHANDLE set DlgType = "Combination" set DlgTemplate = "IDD_ISABOARDTYPE" set Caption = "Select The Board Type" set Combo1Label = "&Board Type:" set Combo1List = $(BoardTypesIn) set Combo1Out = *($(BoardTypesIn), 1) set ComboListItemsIn = {Combo1List} set ComboListItemsOut = {Combo1Out} ui start "DlgTemplate" $(!DIGIDLGHANDLE) ui pop 1 ForListDo $(Combo1List) ifstr(i) $(Combo1Out) == $($) set Identity = *($(BoardIdentityOut),$(#)) goto BoardTypeSet endif EndForListDo BoardTypeSet = + set AdapterData = { $(BusNumber), 0, 768, 851968, 7, $(Identity) } Exit = + ifstr(i) $(DIGIDLGHANDLE) != "" FreeLibrary $(DIGIDLGHANDLE) set $(DIGIDLGHANDLE) = "" Endif Return $(AdapterData) [TapiConstants] KEY_DEVICEMAPROOT = "HARDWARE\DEVICEMAP" KEY_TAPIDEVICES = "TAPI DEVICES" VALUE_ADDRESS = "Address" VALUE_MEDIATYPE = "Media Type" [SetTapi] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms TapiConstants set SvcType = $($0) set VirtualAdapterNumber = $($1) set PortCount = $($2) set AddrScheme = $($3) read-syms DriverConstants-$(SvcType) set Success = 0 set KeyDeviceMap = "" set KeyTapiDevices = "" set KeyServiceProvider = "" StartWait OpenRegKey $(!REG_H_LOCAL) "" $(KEY_DEVICEMAPROOT) 33554432 KeyDeviceMap ifstr $(KeyDeviceMap) == "" ifstr(i) "UNABLE_ACCESS_DEVICEMAP_REG" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_ACCESS_DEVICEMAP_REG" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif endif shell "" MakeRegKey $(KeyDeviceMap) { $(KEY_TAPIDEVICES), 0, "GenericClass" } set KeyTapiDevices = $($R0) ifstr $(KeyTapiDevices) == "" ifstr(i) "UNABLE_ACCESS_TAPIDEVICES_REG" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_ACCESS_TAPIDEVICES_REG" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif endif shell "" MakeRegKey $(KeyTapiDevices) { $(ProductSoftwareName), 0, "GenericClass" } set KeyServiceProvider = $($R0) ifstr $(KeyServiceProvider) == "" ifstr(i) "UNABLE_ACCESS_SOFTWARE_REG" != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString "UNABLE_ACCESS_SOFTWARE_REG" shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif endif set PreviousAddressList = {} shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceProvider) $(VALUE_ADDRESS) ifint $($R0) == 1) set PreviousAddressList = $($R1) endif set CurrentAddressList = {} ForListDo $(PreviousAddressList) set Address = $($) Split-String $(Address) "-" AddressParts ifstr(i) *($(AddressParts), 1) != $(VirtualAdapterNumber) set CurrentAddressList = >($(CurrentAddressList), $(Address)) endif EndForListDo set BuildDigit2 = 0 set BuildDigit3 = 0 set DigitToInc = BuildDigit$(AddrScheme) goto Continue_Build Top_Build = + set BuildAddress = $(VirtualAdapterNumber)"-"$(BuildDigit2)"-"$(BuildDigit3) set CurrentAddressList = >($(CurrentAddressList), $(BuildAddress)) set-add $(DigitToInc) = $($(DigitToInc)), 1 Continue_Build = + ifint $($(DigitToInc)) < $(PortCount) goto Top_Build endif Break_Build = + QueryListSize AddressListSize $(CurrentAddressList) ifint $(AddressListSize) == 0 shell "" CloseOpenRegKey $(KeyServiceProvider) DeleteRegKey $(KeyTapiDevices) $(ProductSoftwareName) goto Exit endif set NewValueList = { + { $(VALUE_MEDIATYPE), 0, $(!REG_VT_SZ), $(MediaType) } + { $(VALUE_ADDRESS), 0, $(!REG_VT_MULTI_SZ), $(CurrentAddressList) } } shell "" SetValuesFromList $(KeyServiceProvider) $(NewValueList) ifint $($R0) == 0 goto Error endif Exit = + set Success = 1 Error = + shell "" CloseOpenRegKey $(KeyDeviceMap) shell "" CloseOpenRegKey $(KeyTapiDevices) shell "" CloseOpenRegKey $(KeyServiceProvider) EndWait Return $(Success) [CopyPVCData] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Line = $($1) set KeyLine = $($2) set AdapterName = $($3) read-syms DriverConstants-$(Type) set KeyParams = "" shell "" OpenServiceParamKey $(AdapterName) set KeyParams = $($R0) ifstr $(KeyParams) == "" ifint 0 == 0 goto Exit endif endif OpenRegKey $(KeyParams) "" $(LineServiceKeyName)\$(Line) 33554432 KeyPVC ifstr $(KeyPVC) == "" ifint 0 == 0 goto Exit endif endif shell "" EnumAdapters { $(Type) } 1 set AdapterDataList = $($R0) ForListDo $(AdapterDataList) set ServiceName = *($($), 1) set NetworkCardKey = *($($), 3) shell "" OpenServiceParamKey $(ServiceName) set KeyVirtualAdapterService = $($R0) shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "Adapter" ifint $($R0) == 0 goto NextNetCard endif ifstr(i) $($R1) != $(AdapterName) goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "Line" ifint $($R0) == 0 goto NextNetCard endif ifstr(i) $($R1) != $(Line) goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(NetworkCardKey) "Title" ifint $($R0) == 0 goto NextNetCard endif set Description = $($R1) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "Description" $(Description) ifint $($R0) == 0 goto NextNetCard endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyVirtualAdapterService) "RegPath" ifint $($R0) == 0 goto NextNetCard endif set Circuit = $($R1) shell "" MakeRegKey $(!REG_H_LOCAL) { $(!NTN_ServiceBase)"\"$(Circuit), 0, "GenericClass" } set PVCKey = $($R0) ifstr $(PVCKey) == "" ifint 0 == 0 goto NextNetCard endif endif shell "" CopyRegTree $(KeyVirtualAdapterService) $(PVCKey) ifint $($R0) == 0 goto NextNetCard endif CloseRegKey $(PVCKey) NextNetCard = + CloseRegKey $(NetworkCardKey) EndForListDo CloseRegKey $(KeyParams) CloseRegKey $(KeyPVC) Exit = + Return [CopyRouterData] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-X25 set KeyParameters = $($0) set KeyX25Adapter = "" set AdapterNumber = "" shell "" FindAdapter $(ProductSoftwareName) ifint $($R0) == 1 set AdapterNumber = $($R1) shell "" OpenServiceParamKey $(ProductHardwareName)$(AdapterNumber) set KeyX25Adapter = $($R0) shell "" MakeRegKey $(KeyParameters) { "WanX", 0, "GenericClass" } set KeyX25Route = $($R0) shell "" CopyRegTree $(KeyX25Adapter) $(KeyX25Route) shell "" CloseOpenRegKey $(KeyX25Adapter) shell "" CloseOpenRegKey $(KeyX25Route) endif Return [UpdateRouter] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-X25 set KeyParameters = $($0) set KeyX25Adapter = "" set AdapterNumber = "" shell "" FindAdapter $(ProductSoftwareName) ifint $($R0) == 1 set AdapterNumber = $($R1) shell "" OpenServiceParamKey $(ProductHardwareName)$(AdapterNumber) set KeyX25Adapter = $($R0) OpenRegKey $(KeyParameters) "" "WanX" 33554432 KeyX25Route ifstr $(KeyX25Route) != "" shell "" CopyRegTree $(KeyX25Route) $(KeyX25Adapter) shell "" CloseOpenRegKey $(KeyX25Route) endif endif Return [CleanUpAfterConfig] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Type = $($0) set Line = $($1) set LineKey = $($2) read-syms DriverConstants-$(Type) ifstr(i) $(Group) == "NDIS" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductSoftwareName) 33554432 KeyDriverService ifstr $(KeyDriverService) != "" shell "" EnumAdapters { $(Type) } 0 set AdapterDataList = $($R0) QueryListSize NumVA $(AdapterDataList) ifint $(NumVA) > 0 set Start = 2 else set Start = 4 endif shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyDriverService) "Start" $(Start) CloseRegKey $(KeyDriverService) endif endif Return [AddService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms Identification set Option = $($0) read-syms DriverConstants-$(Option) read-syms $(Option)-Strings-$(!STF_LANGUAGE) read-syms Generic-Strings-$(!STF_LANGUAGE) set Installed = 1 set SoftwareInstalled = 0 set KeyProduct = "" set KeyNetRules = "" set KeyService = "" set KeyParameters = "" set KeyLinkage = "" OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) 33554432 KeyProduct ifstr $(KeyProduct) != "" goto Exit endif StartWait shell "utility.inf" AddSoftwareComponent + $(Manufacturer), + $(ProductSoftwareName) + $(ProductSoftwareName) + $(DriverTitle) + $(STF_CONTEXTINFNAME) + $(ProductSoftwareImagePath) + $(ServiceType) + $(Group) + $(DependsOn) + "" + $(ProductSoftwareImagePath)";"$(IoLogMsgDLLPath) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Error endif set KeyProduct = $($R1) set KeyNetRules = $($R2) set KeyService = $($R3) set KeyParameters = $($R4) set KeyLinkage = $($R5) set SoftwareInstalled = 1 shell "" GetElapsedTime set CurrentTime = $($R0) set ProductValueList = { + { "SoftwareType", 0, $(!REG_VT_SZ), $(SoftwareType) }, + { "SoftwareVersion", 0, $(!REG_VT_SZ), $(InstallVersion) }, + { "ProductVersion", 0, $(!REG_VT_SZ), $(ProductVersion) }, + { "MajorVersion", 0, $(!REG_VT_SZ), $(ProductMajorVersion) }, + { "MinorVersion", 0, $(!REG_VT_SZ), $(ProductMinorVersion) }, + { "BuildNumber", 0, $(!REG_VT_SZ), $(ProductBuildNumber) }, + { "Title", 0, $(!REG_VT_SZ), $(DriverTitle) }, + { "Description", 0, $(!REG_VT_SZ), $(DriverDescription) }, + { "ServiceName", 0, $(!REG_VT_SZ), $(ProductSoftwareName) }, + { "Review", 0, $(!REG_VT_DWORD), $(Review) }, + { "InstallDate", 0, $(!REG_VT_DWORD), $(CurrentTime) }, + { "Hidden", 0, $(!REG_VT_DWORD), $(Hidden) } } shell "" SetValuesFromList $(KeyProduct) $(ProductValueList) ifint $($R0) == 0 goto Error endif set NetRulesValueList = { + { "type", 0, $(!REG_VT_SZ), $(NetRuleSoftwareType) }, + { "use", 0, $(!REG_VT_SZ), $(NetRuleSoftwareUse) }, + { "bindform", 0, $(!REG_VT_SZ), $(NetRuleSoftwareBindForm) }, + { "class", 0, $(!REG_VT_MULTI_SZ), $(NetRuleSoftwareClass) }, + { "bindable", 0, $(!REG_VT_MULTI_SZ), $(NetRuleSoftwareBindable) }, + { "InfOption", 0, $(!REG_VT_SZ), $(Option) } } shell "" SetValuesFromList $(KeyNetRules) $(NetRulesValueList) ifint $($R0) == 0 goto Error endif ifstr(i) $(DependOnGroup) != {} set OtherDependenciesList = { + { "OtherDependencies", 0, $(!REG_VT_MULTI_SZ), $(DependOnGroup) } } shell "" SetValuesFromList $(KeyLinkage) $(OtherDependenciesList) ifint $($R0) == 0 goto Error endif endif goto Exit Error = + ifint $(SoftwareInstalled) == 1 set SoftwareInstalled = 0 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) "FALSE" endif set Installed = 0 Exit = + shell "" CloseOpenRegKey $(KeyProduct) shell "" CloseOpenRegKey $(KeyNetRules) shell "" CloseOpenRegKey $(KeyService) shell "" CloseOpenRegKey $(KeyParameters) shell "" CloseOpenRegKey $(KeyLinkage) EndWait Return $(Installed) [SetUp-FRService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" CopyPVCData "FR" $(Line) $(KeyLine) $(AdapterServiceName) Return [CleanUp-FRService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) shell "" CleanUpAfterConfig "FR" $(Line) $(KeyLine) Return [Add-FRService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-FR set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) shell "" AddService "FR" set Installed = $($R0) ifint $(Installed) == 0 goto Exit endif shell "utility.inf" IncrementRefCount $(ProductKeyName) Exit = + Return $(Installed) [Remove-FRService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-FR set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" RemoveVirtualAdapters "FR" $(Line) $(AdapterServiceName) $(Manufacturer) shell "utility.inf" DecrementRefCount $(ProductKeyName) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif Exit = + Return [Config-FRService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) shell "" CreateVirtualAdapters "FR" $(Line) $(AdapterServiceName) $(Option) set Success = $($R0) set NeedBindingReview = $($R1) shell "" CopyPVCData "FR" $(Line) $(KeyLine) $(AdapterServiceName) Return $(Success) $(NeedBindingReview) [SetUp-X25Service] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" CopyPVCData "X25L" $(Line) $(KeyLine) $(AdapterServiceName) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" shell "" CopyRouterData $(KeyAdapterParams) endif Return [CleanUp-X25Service] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) shell "" CleanUpAfterConfig "X25L" $(Line) $(KeyLine) Return [Add-X25Service] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) shell "" AddService "X25" set Installed = $($R0) ifint $(Installed) == 0 goto Exit endif read-syms DriverConstants-X25 shell "" FindAdapter $(ProductHardwareName) ifint $($R0) == 0 shell "" AddVirtualAdapter "X25" $(Line) $(AdapterServiceName) "" $(Option) "" else set VAdapterNum = $($R1) shell "utility.inf" IncrementRefCount $(KEY_NETWORKCARDS)"\"$(VAdapterNum) endif read-syms DriverConstants-X25L shell "" AddService "X25L" shell "utility.inf" IncrementRefCount $(ProductKeyName) Exit = + Return $(Installed) [Remove-X25Service] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) read-syms DriverConstants-X25L shell "" RemoveVirtualAdapters "X25L" $(Line) $(AdapterServiceName) $(Manufacturer) shell "utility.inf" DecrementRefCount $(ProductKeyName) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" "WanX" 33554432 KeyWanX ifstr $(KeyWanX) != "" OpenRegKey $(KeyAdapterParams) "" $(Line)\"X25" 33554432 KeyX25Line ifstr $(KeyX25Line) != "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyX25Line) "Alias" set ThisAlias = $($R1) read-syms DriverConstants-X25 shell "" FindAdapter $(ProductHardwareName) set RouterVAdapterNum = $($R1) shell "" OpenServiceParamKey $(ProductHardwareName)$(RouterVAdapterNum) set KeyX25Adapter = $($R0) ifstr $(KeyX25Adapter) != "" set AliasList = {} set DeviceList = {} set SnidList = {} set NumVCList = {} shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "Alias" ifint $($R0) == 1 set AliasList = $($R1) endif shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "Device" ifint $($R0) == 1 set DeviceList = $($R1) endif shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "Snid" ifint $($R0) == 1 set SnidList = $($R1) endif shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "NumVC" ifint $($R0) == 1 set NumVCList = $($R1) endif set NewAliasList = {} set NewDeviceList = {} set NewSnidList = {} set NewNumVCList = {} set NewTotal = 0 ForListDo $(AliasList) set Alias = *($(AliasList), $(#)) set Device = *($(DeviceList), $(#)) set Snid = *($(SnidList), $(#)) set NumVC = *($(NumVCList), $(#)) ifstr(i) $(ThisAlias) != $(Alias) set NewAliasList = >($(NewAliasList), $(Alias)) set NewDeviceList = >($(NewDeviceList), $(Device)) set NewSnidList = >($(NewSnidList), $(Snid)) set NewNumVCList = >($(NewNumVCList), $(NumVC)) set-add NewTotal = $(NewTotal), $(NumVC) endif EndForListDo shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "Alias" $(NewAliasList) shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "Device" $(NewDeviceList) shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "SNID" $(NewSnidList) shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "NumVC" $(NewNumVCList) ifint $(NewTotal) > 255 shell "" GetRegValueByName $(!REG_VT_SZ) "SOFTWARE\Microsoft\Windows Nt\CurrentVersion" "CurrentVersion" shell "" NumericVersion $($R1) set CurrentVersion = $($R1) shell "" NumericVersion "3.51" set TargetVersion = $($R1) ifint $(CurrentVersion) <= $(TargetVersion) set NewTotal = 255 endif endif shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyX25Adapter) "NumRASPorts" $(NewTotal) set RouteAddressList = {} set RouteAliasList = {}) shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "RouteAddress" ifint $($R0) == 1 set RouteAddressList = $($R1) endif shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "RouteAlias" ifint $($R0) == 1 set RouteAliasList = $($R1) endif set NewRouteAddressList = {} set NewRouteAliasList = {} ForListDo $(RouteAliasList) set RouteAddress = *($(RouteAddressList), $(#)) set RouteAlias = *($(RouteAliasList), $(#)) ifstr(i) $(RouteAlias) != $(ThisAlias) set NewRouteAddressList = >($(NewRouteAddressList), $(RouteAddress)) set NewRouteAliasList = >($(NewRouteAliasList), $(RouteAlias)) endif EndForListDo shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "RouteAddress" $(NewRouteAddressList) shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyX25Adapter) "RouteAlias" $(NewRouteAliasList) CloseRegKey $(KeyX25Adapter) endif CloseRegKey $(KeyX25Line) DeleteRegTree $(KeyAdapterParams) $(Line)\"X25" endif CloseRegKey $(KeyWanX) endif CloseRegKey $(KeyAdapterParams) endif shell "" SetTapi "X25" $(RouterVAdapterNum) $(NewTotal) 3 shell "" RemoveVirtual "X25" $(RouterVAdapterNum) $(Manufacturer) Return [Config-X25Service] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) shell "" CreateVirtualAdapters "X25L" $(Line) $(AdapterServiceName) $(Option) set Success = $($R0) set NeedBindingReview = $($R1) shell "" CopyPVCData "X25L" $(Line) $(KeyLine) $(AdapterServiceName) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" shell "" UpdateRouter $(KeyAdapterParams) endif Return $(Success) $(NeedBindingReview) [SetUp-SNAService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [CleanUp-SNAService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) Return [Add-SNAService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) set Installed = 1 Return $(Installed) [Remove-SNAService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [Config-SNAService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-SNA shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName)"\"$(Line) 33554432 KeyLineService ifstr $(KeyLineService) != "" set DeviceName = $(AdapterServiceName) ifcontains(i) $(Option) in $(OptionsThatNeedStreams) read-syms DriverConstants-Streams set DeviceName = $(ProductSoftwareName) endif shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineService) "Adapter" $(AdapterServiceName) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineService) "Device" $(DeviceName) CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif set Success = 1 set NeedBindingReview = 0 Return $(Success) $(NeedBindingReview) [SetUp-ASYN] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [CleanUp-ASYN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ASYN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" EnumRegKey $(KeyLineService) SubKeyList CloseRegKey $(KeyLineService) ifstr $(SubKeyList) == {} DeleteRegTree $(KeyAdapterParams) $(LineServiceKeyName) endif endif CloseRegKey $(KeyAdapterParams) endif Return [Add-ASYN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ASYN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) shell "" AddService "ASYN" set Installed = $($R0) ifint $(Installed) == 0 goto Exit endif shell "utility.inf" IncrementRefCount $(ProductKeyName) Exit = + Return $(Installed) [Remove-ASYN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ASYN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" DeleteRegTree $(KeyLineService) $(Line) EnumRegKey $(KeyLineService) SubKeyList ifstr $(SubKeyList) == {} shell "" OpenServiceParamKey $(ProductHardwareName) set KeyAsynParams = $($R0) ifstr $(KeyAsynParams) != "" DeleteRegTree $(KeyAsynParams) $(AdapterServiceName) CloseRegKey $(KeyAsynParams) endif endif CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif shell "utility.inf" DecrementRefCount $(ProductKeyName) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif Return [Config-ASYN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ASYN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) set Success = 0 set NeedBindingReview = 0 shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" shell "" MakeRegKey $(KeyAdapterParams) { $(LineServiceKeyName), 0, "GenericClass" } set KeyLineService = $($R0) ifstr $(KeyLineService) != "" shell "" MakeRegKey $(KeyLineService) { $(Line), 0, "GenericClass" } set KeyLineServiceLine = $($R0) ifstr $(KeyLineServiceLine) != "" CloseRegKey $(KeyLineServiceLine) endif CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif shell "" OpenServiceParamKey $(ProductHardwareName) set KeyAsynParams = $($R0) ifstr $(KeyAsynParams) != "" shell "" MakeRegKey $(KeyAsynParams) { $(AdapterServiceName), 0, "GenericClass" } set KeyAsynParamsAdapter = $($R0) ifstr $(KeyAsynParamsAdapter) != "" shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyAsynParamsAdapter) "Adapter" $(AdapterServiceName) set RegPath = $(AdapterServiceName)"\Parameters\"$(LineServiceKeyName) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyAsynParamsAdapter) "RegPath" $(RegPath) CloseRegKey $(KeyAsynParamsAdapter) endif CloseRegKey $(KeyAsynParams) endif set Success = 1 Exit = + Return $(Success) $(NeedBindingReview) [SetUp-ISDN] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [CleanUp-ISDN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ISDN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" EnumRegKey $(KeyLineService) SubKeyList CloseRegKey $(KeyLineService) ifstr $(SubKeyList) == {} DeleteRegTree $(KeyAdapterParams) $(LineServiceKeyName) endif endif CloseRegKey $(KeyAdapterParams) endif Return [Add-ISDN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ISDN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) shell "" AddService "ISDN" set Installed = $($R0) ifint $(Installed) == 0 goto Exit endif shell "utility.inf" IncrementRefCount $(ProductKeyName) Exit = + Return $(Installed) [Remove-ISDN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ISDN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" OpenRegKey $(KeyLineService) "" $(Line) 33554432 KeyLineServiceLine ifstr $(KeyLineServiceLine) != "" set VAdapterNum = "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" ifint $($R0) == 1 set VAdapterNum = $($R1) endif ifstr $(VAdapterNum) != "" shell "" RemoveVirtual "ISDN" $(VAdapterNum) $(Manufacturer) shell "" SetTapi "ISDN" $(VAdapterNum) 0 2 endif CloseRegKey $(KeyLineServiceLine) endif DeleteRegTree $(KeyLineService) $(Line) CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif shell "utility.inf" DecrementRefCount $(ProductKeyName) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif Return [Config-ISDN] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-ISDN set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) set Success = 0 set NeedBindingReview = 0 shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" shell "" MakeRegKey $(KeyAdapterParams) { $(LineServiceKeyName), 0, "GenericClass" } set KeyLineService = $($R0) ifstr $(KeyLineService) != "" shell "" MakeRegKey $(KeyLineService) { $(Line), 0, "GenericClass" } set KeyLineServiceLine = $($R0) ifstr $(KeyLineServiceLine) != "" set VAdapterNum = "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" ifint $($R0) == 1 set VAdapterNum = $($R1) endif ifstr $(VAdapterNum) == "" set RegPath = $(AdapterServiceName)"\Parameters\"$(LineServiceKeyName)"\"$(Line) shell "" AddVirtualAdapter "ISDN" $(Line) $(AdapterServiceName) "" $(Option) $(RegPath) set VAdapterNum = $($R1) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" $(VAdapterNum) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "Adapter" $(AdapterServiceName) set VAServiceName = $(ProductHardwareName)$(VAdapterNum) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "ServiceName" $(VAServiceName) endif set EndPoints = 0 shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyLineServiceLine) "Endpoints" ifint $($R0) == 1 set EndPoints = $($R1) endif shell "" SetTapi "ISDN" $(VAdapterNum) $(EndPoints) 2 set NeedBindingReview = 1 CloseRegKey $(KeyLineServiceLine) endif CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif set Success = 1 Exit = + Return $(Success) $(NeedBindingReview) [SetUp-PPPService] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [CleanUp-PPPService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-PPP set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" EnumRegKey $(KeyLineService) SubKeyList CloseRegKey $(KeyLineService) ifstr $(SubKeyList) == {} DeleteRegTree $(KeyAdapterParams) $(LineServiceKeyName) endif endif CloseRegKey $(KeyAdapterParams) endif Return [Add-PPPService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-PPP set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) shell "" AddService "PPP" set Installed = $($R0) ifint $(Installed) == 0 goto Exit endif shell "utility.inf" IncrementRefCount $(ProductKeyName) Exit = + Return $(Installed) [Remove-PPPService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-PPP set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" OpenRegKey $(KeyAdapterParams) "" $(LineServiceKeyName) 33554432 KeyLineService ifstr $(KeyLineService) != "" OpenRegKey $(KeyLineService) "" $(Line) 33554432 KeyLineServiceLine ifstr $(KeyLineServiceLine) != "" set VAdapterNum = "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" ifint $($R0) == 1 set VAdapterNum = $($R1) endif ifstr $(VAdapterNum) != "" shell "" RemoveVirtual "PPP" $(VAdapterNum) $(Manufacturer) shell "" SetTapi "PPP" $(VAdapterNum) 0 2 endif CloseRegKey $(KeyLineServiceLine) endif DeleteRegTree $(KeyLineService) $(Line) CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif shell "utility.inf" DecrementRefCount $(ProductKeyName) shell "utility.inf" IsRefCountEqualZero $(ProductKeyName) ifint $($R1) == 1 shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif Return [Config-PPPService] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms GlobalPathConstants read-syms DriverConstants read-syms DriverConstants-PPP set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) set Success = 1 set NeedBindingReview = 0 shell "" OpenServiceParamKey $(AdapterServiceName) set KeyAdapterParams = $($R0) ifstr $(KeyAdapterParams) != "" shell "" MakeRegKey $(KeyAdapterParams) { $(LineServiceKeyName), 0, "GenericClass" } set KeyLineService = $($R0) ifstr $(KeyLineService) != "" shell "" MakeRegKey $(KeyLineService) { $(Line), 0, "GenericClass" } set KeyLineServiceLine = $($R0) ifstr $(KeyLineServiceLine) != "" set VAdapterNum = "" shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" ifint $($R0) == 1 set VAdapterNum = $($R1) endif ifstr $(VAdapterNum) == "" set RegPath = $(AdapterServiceName)"\Parameters\"$(LineServiceKeyName)"\"$(Line) shell "" AddVirtualAdapter "PPP" $(Line) $(AdapterServiceName) "" $(Option) $(RegPath) set VAdapterNum = $($R1) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "VAdapterNum" $(VAdapterNum) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "Adapter" $(AdapterServiceName) set VAServiceName = $(ProductHardwareName)$(VAdapterNum) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyLineServiceLine) "ServiceName" $(VAServiceName) set EndPoints = 1 shell "" SetTapi "PPP" $(VAdapterNum) $(EndPoints) 2 set NeedBindingReview = 1 endif CloseRegKey $(KeyLineServiceLine) endif CloseRegKey $(KeyLineService) endif CloseRegKey $(KeyAdapterParams) endif set Success = 1 Exit = + Return $(Success) $(NeedBindingReview) [SetUp-None] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [CleanUp-None] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set ConfigResult = $($3) Return [Add-None] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set LineNum = $($3) set SrcDir = $($4) set Option = $($5) set Installed = 1 Return $(Installed) [Remove-None] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) Return [Config-None] set Line = $($0) set KeyLine = $($1) set AdapterServiceName = $($2) set Option = $($3) set Success = 1 set NeedBindingReview = 0 Return $(Success) $(NeedBindingReview) [AddGroupToServiceGroupOrder] read-syms GlobalRegistryConstants set GroupToAdd = $($0) set BeforeGroup = $($1) set Added = 0 OpenRegKey $(!REG_H_LOCAL) "" $(KEY_SERVICEGROUPORDER) 33554432 KeyServiceGroupOrder ifstr $(KeyServiceGroupOrder) != "" shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceGroupOrder) "List" set TmpList = $($R1) set OldList = {} ForListDo $(TmpList) set OldList = >($(OldList), $($)) EndForListDo Ifcontains(i) $(GroupToAdd) not-in $(OldList) ifstr $(BeforeGroup) == {} set NewGroupList = >($(OldList), $(GroupToAdd) ) set Added = 1 else set NewGroupList = {} ForListDo $(OldList) ifstr(i) $($) == $(BeforeGroup) set NewGroupList = >($(NewGroupList), $(GroupToAdd) ) set Added = 1 endif set NewGroupList = >($(NewGroupList), $($)) EndForListDo endif shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceGroupOrder) "List" $(NewGroupList) else set Added = 1 endif CloseRegKey $(KeyServiceGroupOrder) endif Return $(Added) [RemoveGroupFromServiceGroupOrder] read-syms GlobalRegistryConstants set GroupToRemove = $($0) set NewGroupList = {} OpenRegKey $(!REG_H_LOCAL) "" $(KEY_SERVICEGROUPORDER) 33554432 KeyServiceGroupOrder ifstr $(KeyServiceGroupOrder) != "" shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceGroupOrder) "List" set TmpList = $($R1) ForListDo $(TmpList) ifstr(i) $(GroupToRemove) != $($) set NewGroupList = >($(NewGroupList), $($)) Endif EndForListDo shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceGroupOrder) "List" $(NewGroupList) CloseRegKey $(KeyServiceGroupOrder) endif Return [MIBConstants] MIB_HDLC = 1 MIB_FR = 2 MIB_LAPB = 3 MIB_X25 = 4 [SNMPConstants] SNMPAgentNameList = ^(Files-SNMP, 0) SNMPDllNameList = ^(Files-SNMP, 2) [LocalSNMPRegistryConstants] KEY_SNMPROOT = $(!NTN_ServiceBase)"\SNMP" KEY_PARAMETERS = $(KEY_SNMPROOT)"\Parameters" KEY_AGENTLIST = $(KEY_SNMPARAMETERS)"\ExtensionAgents" [SNMPInstalled] read-syms LocalSNMPRegistryConstants set Installed = 0 OpenRegKey $(!REG_H_LOCAL) "" $(KEY_SNMPROOT) 33554432 KeySNMPRoot ifstr $(KeySNMPRoot) == "" goto Exit endif CloseRegKey $(KeySNMPRoot) set Installed = 1 Exit = + Return $(Installed) [InstallAgent] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms LocalSNMPRegistryConstants set AgentName = $($0) set AgentPath = $($1) set Result = 0 OpenRegKey $(!REG_H_LOCAL) "" $(DIGI_ROOT) 33554432 KeyRoot shell "" MakeRegKey $(KeyRoot) { $(AgentName), 0, "GenericClass" } set KeyAgent = $($R0) shell "" MakeRegKey $(KeyAgent) { "CurrentVersion", 0, "GenericClass" } set KeyCurrentVersion = $($R0) shell "" SetRegValueByKey $(!REG_VT_EXPAND_SZ) $(KeyCurrentVersion) "Pathname" $(Path) CloseRegKey $(KeyCurrentVersion) CloseRegKey $(KeyAgent) CloseRegKey $(KeyRoot) OpenRegKey $(!REG_H_LOCAL) "" $(KEY_PARAMETERS) 33554432 KeyParameters shell "" MakeRegKey $(KeyParameters) { $(AgentName), 0, "GenericClass" } set KeyAgent = $($R0) shell "" CloseOpenRegKey $(KeyAgent) CloseRegKey $(KeyParameters) set Result = 1 Return $(Result) [RemoveAgent] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms LocalSNMPRegistryConstants set AgentName = $($0) OpenRegKey $(!REG_H_LOCAL) "" $(DIGI_ROOT) 33554432 KeyRoot DeleteRegTree $(KeyRoot) $(AgentName) CloseRegKey $(KeyRoot) OpenRegKey $(!REG_H_LOCAL) "" $(KEY_PARAMETERS) 33554432 KeyParameters DeleteRegTree $(KeyParameters) $(AgentName) CloseRegKey $(KeyParameters) shell "" RemoveExtensionAgent $(AgentName) Return [RemoveExtensionAgent] read-syms GlobalConstants read-syms GlobalRegistryConstants read-syms LocalSNMPRegistryConstants set AgentName = $($0) OpenRegKey $(!REG_H_LOCAL) "" $(KEY_AGENTLIST) 33554432 KeyCurrentAgentList ifstr $(KeyCurrentAgentList) != "" EnumRegValue $(AgentKey) AgentList ForListDo $(AgentList) set AgentRegPath = *($($), 4) Split-String $(AgentRegPath) "\" AgentInfo Ifcontains(i) $(AgentName) in $(AgentInfo) DeleteRegValue $(AgentKey) *($($), 1) endif EndForListDo CloseRegKey $(AgentKey) endif Return [EnumCircuits-FR] set KeyLine = $($0) set TargetServiceName = $($1) set TargetLineName = $($2) set Success = 1 set CircuitList = {} shell "" EnumAdapters { "FR" } 0 set AdapterDataList = $($R0) ForListDo $(AdapterDataList) set ServiceName = *($($), 1) shell "" OpenServiceParamKey $(ServiceName) set KeyService = $($R0) shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyService) "Adapter" set AdapterName = $($R1) ifstr(i) $(AdapterName) != $(ServiceName) goto NextAdapterName endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyService) "Line" set AdapterLine = $($R1) ifstr(i) $(AdapterLine) != $(TargetLineName) goto NextAdapterName endif shell "" GetRegValueByKey $(!REG_VT_SZ) $(KeyService) "DLCI" set DLCI = $($R1) set CircuitList = >($(CircuitList), $(DLCI)) NextAdapterName = + CloseRegKey $(KeyService) EndForListDo read-syms MIBConstants set AgentList = { $(MIB_HDLC) $(MIB_FR) } shell "" InstallExtensionAgents $(AgentList) Return $(Success) $(CircuitList) [EnumCircuits-X25] set KeyLine = $($0) set TargetServiceName = $($1) set TargetLineName = $($2) set Success = 1 set CircuitList = {} OpenRegKey $(KeyLine) "" "X25" 33554432 X25Key set RangeList = { "PC", "IC", "TC", "OC" } ForListDo $(RangeList) shell "" GetRegValueByKey $(!REG_VT_SZ) $(X25Key) "L"$($) set Low = $($R1) shell "" GetRegValueByKey $(!REG_VT_SZ) $(X25Key), "H"$($) set High = $($R1) ifint $(High) > 0 goto Continue_RangeTest Top_RangeTest = + set CircuitList = >($(CircuitList), $(Low)) set-add Low = $(Low), 1 Continue_RangeTest = + ifint $(Low) <= $(High) goto Top_RangeTest endif Break_RangeTest = + endif endForListDo CloseRegKey $(X25Key) read-syms MIBConstants set AgentList = { $(MIB_HDLC) $(MIB_LAPB) $(MIB_X25) } shell "" InstallExtensionAgents $(AgentList) Return $(Success) $(CircuitList) [EnumCircuits-None] set KeyLine = $($0) set TargetServiceName = $($1) set TargetLineName = $($2) set Success = 1 set CircuitList = {} Return $(Success) $(CircuitList) [InstallExtensionAgents] read-syms GlobalConstants read-syms GlobalRegistryConstatns read-syms SNMPConstants read-syms LocalSNMPRegistryConstants set NewAgentIndexList = $($0) set NewAgentList = {} set NewAgentPosition = 0 ForListDo $(NewAgentIndexList) set AgentName = *($(SNMPAgentNameList), $($)) set AgentRegPath = $(NTN_SoftwareBase)"\"$(Manufacturer)"\"$(AgentName)"\CurrentVersion" set AgentValue = { $(NewAgentPosition), 0, $(!REG_VT_SZ), $(AgentRegPath) } set NewAgentList = >($(NewAgentList), $(AgentValue)) set-add Pos = $(Pos), 1 EndForListDo OpenRegKey $(!REG_H_LOCAL) "" $(KEY_AGENTLIST) 33554432 KeyCurrentAgentList ifstr $(KeyCurrentAgentList) == "" goto Exit endif EnumRegValue $(KeyCurrentAgentList) CurrentAgentList ForListDo $(CurrentAgentList) set CurrentAgentValueName = *($($), 1) DeleteRegValue $(KeyCurrentAgentList) $(CurrentAgentValueName) set CurrentAgentRegPath = *($($), 1) set InNewAgentList = 0 ForListDo $(NewAgentList) set NewAgentRegPath = *($($), 1) ifstr(i) $(CurrentAgentRegPath) == $(NewAgentRegPath) set InNewAgentList = 1 endif EndForListDo ifint $(InNewAgentList) == 0 set ExistingAgent = { $(Pos), 0, $(!REG_VT_SZ), $(CurrentAgentRegPath) } set NewAgentList = >($(NewAgentList), $(ExistingAgent)) set-add Pos = $(Pos), 1 endif EndForListDo shell "" SetValuesFromList $(KeyCurrentAgentList) $(NewAgentList) CloseRegKey $(KeyCurrentAgentList) Exit = + Return [ConfigMIB] read-syms LocalSNMPRegistryConstants set AgentName = $($0) set AdapterDataList = $($1) OpenRegKey $(!REG_H_LOCAL) "" $(KEY_PARAMETERS) 33554432 KeyParameters OpenRegKey $(KeyParameters) "" $(AgentName) 33554432 KeyAgent ifstr $(KeyAgent) == "" goto Exit endif CloseRegKey $(KeyAgent) DeleteRegTree $(KeyParameters) $(AgentName) shell "" MakeRegKey $(KeyParameters) { $(SNMPMainAgent), 0, "GenericClass" } set KeyAgent = $($R0) ifstr $(KeyAgent) == "" ifint 0 == 0 goto Exit endif endif ForListDo $(AdapterDataList) set ServiceName = *($($), 1) shell "" OpenServiceParamKey $(ServiceName) set KeyService = $($R0) shell "" MakeRegKey $(KeyAgent) { $(ServiceName), 0, "GenericClass" } set KeyAdapter = $($R0) ifstr $(KeyAdapter) != "" shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyAdapter) "NumberOfLines" set NumberOfLines = $($R1) set LineNumber = 0 goto Continue_EnumLines Top_EnumLines = + shell "" NumberToName $(LineNumber) set LineName = $($R0) set KeyAdapterLine = "" set KeyServiceLine = "" shell "" MakeRegKey $(KeyAdapter) { $(LineName), 0, "GenericClass" } set KeyAdapterLine = $($R0) ifstr $(KeyAdapterLine) == "" ifint 0 == 0 goto NextLineName endif endif OpenRegKey $(ServiceKey) "" $(LineName) 33554432 KeyServiceLine ifstr $(KeyServiceLine) == "" endif shell "" GetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyServiceLine) "LineServices" set LineServices = $($R1) QueryListSize NumberOfServices $(LineServices) ifint $(NumberOfServices) != 1 set Protocol = "None" else set Protocol = *($(LineServices), 1) endif shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyAdapterLine) "ProtocolIdentifier" $(Protocol) set CircuitsList = {} shell "" "EnumCircuits-"$(Protocol) $(KeyServiceLine) $(ServiceName) $(LineLetter) ifint $($R0) == 1 set CircuitsList = $($R1) endif shell "" SetRegValueByKey $(!REG_VT_MULTI_SZ) $(KeyAdapterLine) "Circuits" $(CircuitsList) NextLineName = + shell "" CloseOpenRegKey $(KeyAdapterLine) shell "" CloseOpenRegKey $(KeyServiceLine) set-add LineNumber = $(LineNumber), 1 Continue_EnumLines = + ifint $(LineNumber) < $(NumberOfLines) goto Top_EnumLines endif Break_EnumLines = + CloseRegKey $(KeyAdapter) endif CloseRegKey $(KeyService) EndForListDo CloseRegKey $(KeyAgent) Exit = + CloseRegKey $(KeyParameters) Return [DoesOptionUseSNMP] set Option = $($0) set OptionsThatUseSNMP = { "SyncPort" } Ifcontains $(Option) in $(OptionsThatUseSNMP) set UsesSNMP = 1 else set UsesSNMP = 0 endif Return $(UsesSNMP) [InstallSNMP] read-syms GlobalConstants read-syms GlobalPathConstants read-syms SNMPConstants set Option = $($0) set Success = 0 shell "" DoesOptionUseSNMP $(Option) ifint $($R0) == 0 goto Exit endif shell "" SNMPInstalled ifint $($R0) == 0 goto Exit endif ForListDo $(SNMPAgentNameList) set AgentName = $($) set AgentDll = *($(SNMPDllNameList), $(#)) set AgentPath = $(!STF_WINDOWSSYSPATH)"\"$(AgentDll) shell "" InstallAgent $(AgentName) $(AgentPath) set Sucess = $($R0) ifint $(Success) == 0 read-syms SNMPMessages-$(!STF_LANGUAGE) shell "" RemoveAgent $($) shell "" StatusMessage $(InstallError) goto Exit endif EndForListDo Exit = + Return $(Success) [RemoveSNMP] read-syms SNMPConstants set Option = $($0) shell "" DoesOptionUseSNMP $(Option) ifint $($R0) == 0 goto Exit endif shell "" SNMPInstalled ifint $($R0) == 0 goto Exit endif ForListDo $(SNMPAgentNameList) shell "" RemoveAgent $($) EndForListDo Exit = + Return [ConfigSNMP] set BoardName = $($0) shell "" DoesOptionUseSNMP $(BoardName) ifint $($R0) == 0 goto Exit endif shell "" EnumAdapters { $(BoardName) } 0 set AdapterDataList = $($R0) ForListDo $(SNMPAgentNameList) set AgentName = $($) shell "" RemoveExtensionAgent $(AgentName) shell "" ConfigMIB $(AgentName) $(AdapterDataList) EndForListDo Exit = + Return [InvokeRAS] read-syms InvokeRasDlg-$(!STF_LANGUAGE) set Success = 1 shell "" MessageBox $(InvokeRasTitle) $(InvokeRasConfigMsg) 3 4 1 ifstr(i) $($R0) != "YES" goto Exit endif shell "oemnsvra.inf" CheckRasInstalled ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif set RasInstalled = $($R0) ifstr(i) $(RasInstalled) == "FALSE" shell "" StatusMessage $(RemindRasConfigMsg) goto Exit endif set AddCopy = "YES" set DoCopy = "YES" set DoConfig = "YES" set SaveSTF_SRCDIR_OVERRIDE = $(!STF_SRCDIR_OVERRIDE) set !STF_SRCDIR_OVERRIDE = "" set SaveNTN_InstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = "configure" shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" $(SourceDir) $(AddCopy) $(DoCopy) $(DoConfig) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif set !STF_SRCDIR_OVERRIDE = $(SaveSTF_SRCDIR_OVERRIDE) set !NTN_InstallMode = $(SaveNTN_InstallMode) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Error endif goto Exit Error = + set Success = 0 shell "" StatusMessage $(InvokeRasError) Exit = + Return $(Success) [RefCountConstants] ValueName = "RefCount" [GetRefCountByKey] read-syms RefCountConstants set Key = $($0) set Name = $($1) set Success = 0 set RefCount = "Invalid" shell "" GetRegValueByKey $(!REG_VT_DWORD) $(Key) $(Name)$(ValueName) ifint $($R0) == 0 goto Exit endif set Test = $($R1) ifint $(Test) < 0 goto Exit endif set RefCount = $(Test) set Success = 1 Exit = + Return $(Success) $(RefCount) [SetRefCountByKey] read-syms RefCountConstants set Key = $($0) set RefCount = $($1) set Name = $($2) shell "" SetRegValueByKey $(!REG_VT_DWORD) $(Key) $(Name)$(ValueName) $(RefCount) set Success = $($R0) Return $(Success) [ModRefCountByKey] set Key = $($0) set Delta = $($1) set Name = $($2) set Success = 0 set RefCount = "Invalid" shell "" GetRefCountByKey $(Key) $(Name) ifint $($R0) == 0 goto Exit endif set RefCount = $($R1) set-add RefCount = $(RefCount), $(Delta) shell "" SetRefCountByKey $(Key) $(RefCount) $(Name) ifint $($R0) == 0 goto Exit endif set Success = $($R0) Exit = + Return $(Success) $(RefCount) [GetRefCountByName] set Path = $($0) set Name = $($2) set Success = 0 set RefCount = "Invalid" OpenRegKey $(!REG_H_LOCAL) "" $(Path) 33554432 Key ifstr $(Key) == "" goto Exit endif shell "" GetRefCountByKey $(Key) $(Name) $(Default) ifint $($R0) == 0 goto Exit endif set Success = 1 set RefCount = $($R1) CloseRegKey $(Key) Exit = + Return $(Success) $(RefCount) [SetRefCountByName] set Path = $($0) set RefCount = $($1) set Name = $($2) set Success = 0 shell "" MakeRegKey $(!REG_H_LOCAL) { $(Path), 0, "GenericClass" } set Key = $($R0) ifstr $(Key) == "" ifint 0 == 0 goto Exit endif endif shell "" SetRefCountByKey $(Key) $(RefCount) $(Name) set Success = $($R0) CloseRegKey $(Key) Exit = + Return $(Success) [ModRefCountByName] set Path = $($0) set Delta = $($1) set Name = $($2) set Success = 0 set RefCount = "Invalid" OpenRegKey $(!REG_H_LOCAL) "" $(Path) 33554432 Key ifstr $(Key) == "" goto Exit endif shell "" ModRefCountByKey $(Key) $(Delta) $(Name) ifint $($R0) == 0 goto Exit endif set Success = 1 set RefCount = $($R1) CloseRegKey $(Key) Exit = + Return $(Success) $(RefCount) [DirectoryFromPath] set Path = $($0) set Directory = "" Split-String $(Path) "\" PathComponents QueryListSize Size $(PathComponents) ifint $(Size) == 1 goto Exit endif ForListDo $(PathComponents) ifint $(#) < $(Size) set Directory = $(Directory)$($) endif EndForListDo Return $(Directory) [FilenameFromPath] set Path = $($0) Split-String $(Path) "\" PathComponents QueryListSize Size $(PathComponents) set Filename = *($(PathComponents), $(Size)) Return $(Filename) [BaseFromFilename] set Filename = $($0) Split-String $(Filename) "." FilenameComponents QueryListSize Size $(FilenameComponents) set Dot = $(Size) ifstr *($(FilenameComponents), $(Dot)) == "." goto Make endif set-sub Dot = $(Dot), 1 ifstr *($(FilenameComponents), $(Dot)) == "." goto Make endif set Base = $(Filename) goto Exit Make = + set Base = "" ForListDo $(FilenameComponents) ifint $(#) < $(Dot) set Base = $(Base)$($) endif EndForListDo Exit = + Return $(Base) [ExtensionFromFilename] set Filename = $($0) set Extension = "" Split-String $(Filename) "." FilenameComponents QueryListSize Size $(FilenameComponents) set Dot = $(Size) ifstr *($(FilenameComponents), $(Dot)) == "." goto Exit endif set-sub Dot = $(Dot), 1 ifstr *($(FilenameComponents), $(Dot)) == "." goto Make endif goto Exit Make = + set Extension = *($(FilenameComponents), Size) Exit = + Return $(Extension) [BaseFromPath] set Path = $($0) shell "" FilenameFromPath $(Path) set Filename = $($R0) shell "" BaseFromFilename $(Filename) set Base = $($R0) Return $(Base) [MakeRegKey] set KeyRoot = $($0) set Data = $($1) set KeyName = *($(Data), 1) OpenRegKey $(KeyRoot) "" $(KeyName) 33554432 KeyResult ifstr $(KeyResult) == "" CreateRegKey $(KeyRoot) $(Data) "" 33554432 "" KeyResult endif Return $(KeyResult) [SetRegValueByKey] set Type = $($0) set Key = $($1) set ValueName = $($2) set Value = $($3) set Success = 0 set ValueData = { $(ValueName), 0, $(Type), $(Value) } SetRegValue $(Key) $(ValueData) ifint $($R0) == 0 set Success = 1 endif Return $(Success) [GetRegValueByKey] read-syms GlobalConstants set Type = $($0) set Key = $($1) set ValueName = $($2) set Success = 0 set Value = "" GetRegValue $(Key) $(ValueName) ValueData ifint $($R0) != 0 goto Exit endif set Value = *($(ValueData), 4) ifstr(i) $(Type) != $(TYPECHECK_NONE) set TypeRead = *($(ValueData), 3) ifstr(i) $(TypeRead) != $(Type) goto Exit endif endif set Success = 1 Exit = + Return $(Success) $(Value) [DefaultGetRegValueByKey] set Type = $($0) set Key = $($1) set ValueName = $($2) set Default = $($3) set Value = $(Default) shell "" GetRegValueByKey $(Type) $(Key) $(ValueName) ifint $($R0) == 1 set Value = $($R1) endif Return $(Value) [SetRegValueByName] set Type = $($0) set Path = $($1) set ValueName = $($2) set Value = $($3) set Success = 0 shell "" MakeRegKey $(!REG_H_LOCAL) { $(Path), 0, "GenericClass" } set Key = $($R0) ifstr $(Key) == "" ifint 0 == 0 goto Exit endif endif shell "" SetRegValueByKey $(Type) $(Key) $(ValueName) $(Value) ifint $($R0) == 0 goto Exit endif set Success = 1 CloseRegKey $(Key) Exit = + Return $(Success) [GetRegValueByName] set Type = $($0) set Path = $($1) set ValueName = $($2) set Success = 0 set Value = "" OpenRegKey $(!REG_H_LOCAL) "" $(Path) 33554432 Key ifstr $(Key) == "" goto Exit endif shell "" GetRegValueByKey $(Type) $(Key) $(ValueName) ifint $($R0) == 0 goto Exit endif set Success = 1 set Value = $($R1) CloseRegKey $(Key) Exit = + Return $(Success) $(Value) [SetValuesFromList] set Key = $($0) set List = $($1) set Success = 0 shell "utility.inf" AddValueList $(Key) $(List) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif ifstr(i) $($R0) != "NO_ERROR" set _UE = 1 else set _UE = 0 endif ifint $(_UE) == 1 shell "" GetRegistryErrorString $($R0) shell "" SetupMessage "FATAL" $($R0) endif ifint $(_UE) == 1 goto Exit endif set Success = 1 Exit = + Return $(Success) [CloseOpenRegKey] set Key = $($0) ifstr $(Key) != "" CloseRegKey $(Key) endif Return [CloseOpenRegKeyList] set KeyList = $($0) ForListDo $(KeyList) shell "" CloseOpenRegKey $($) EndForListDo Return [CopyRegValues] set KeySource = $($0) set KeyDestination = $($1) set Success = 0 ifstr $(KeySource) == "" goto Error endif ifstr $(KeyDestination) == "" goto Error endif EnumRegValue $(KeySource) ValueList ifint $($R0) != 0 goto Exit endif shell "" SetValuesFromList $(KeyDestination) $(ValueList) ifint $($R0) == 0 goto Error endif Exit = + set Success = 1 Error = + Return $(Success) [CopyRegTree] set KeySource = $($0) set KeyDestination = $($1) set Success = 0 shell "" CopyRegValues $(KeySource) $(KeyDestination) ifint $($R0) == 0 goto Error endif EnumRegKey $(KeySource) SourceSubKeyList QueryListSize NumSubKeys $(SourceSubKeyList) ifint $(NumSubKeys) == 0 goto Exit endif ForListDo $(SourceSubKeyList) set SubKeyName = *($($), 1) OpenRegKey $(KeySource) "" $(SubKeyName) 33554432 KeySourceSubKey ifstr $(KeySourceSubKey) == "" ; endif shell "" MakeRegKey $(KeyDestination) { $(SubKeyName), 0, "GenericClass" } set KeyDestinationSubKey = $($R0) shell "" CopyRegTree $(KeySourceSubKey) $(KeyDestinationSubKey) ifint $($R0) == 0 goto Error endif shell "" CloseOpenRegKey $(KeySourceSubKey) shell "" CloseOpenRegKey $(KeyDestinationSubKey) EndForListDo Exit = + set Success = 1 Error = + Return $(Success) [OpenServiceParamKey] set ServiceName = $($0) set KeyParameters = "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ServiceName)"\Parameters" 33554432 KeyParameters Return $(KeyParameters) [SystemDate] DateList = {} ? $(!LIBHANDLE) GetSystemDate [ShellCodeError] read-syms ShellCodeError-$(!STF_LANGUAGE) 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" Return [SetupMessage] set Type = $($0) set Message = $($1) set Status = "STATUS_FAILURE" set Button = "" shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) $(Type) $(Message) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif set Status = $($R0) set Button = $($R1) Exit = + Return $(Status) $(Button) [StatusMessage] shell "" SetupMessage "STATUS" $($0) Return $($R0) [MessageBox] set Title = $($0) set Text = $($1) set Type = $($2) set Icon = $($3) set DefButton = $($4) ifstr(i) $(Type) == "" set Type = 1 endif ifstr(i) $(Icon) == "" set Icon = 2 endif ifstr(i) $(DefButton) == EMPTY_ST set DefButton = 1 endif set DlgType = "MessageBox" set STF_MB_TITLE = $(Title) set STF_MB_TEXT = $(Text) set STF_MB_TYPE = $(Type) set STF_MB_ICON = $(Icon) set STF_MB_DEF = $(DefButton) ui start "MessageBox" Exit = + Return $(DLGEVENT) [GetRegistryErrorString] set ErrorString = $(GenericError) shell "utility.inf" RegistryErrorString $($0) ifint $($ShellCode) != $(!SHELL_CODE_OK) set _SE = 1 else set _SE = 0 endif ifint $(_SE) == 1 shell "" ShellCodeError endif ifint $(_SE) == 1 goto Exit endif set ErrorString = $($R0) Exit = + Return $(ErrorString) [GetElapsedTime] Detect SystemDate set ElapsedTime = *($(DateList), 1) Return $(ElapsedTime) [Boolean-Not] set A = $($0) ifint $(A) == 1 set Result = 0 else set Result = 1 endif Return $(Result) [Boolean-Or] set A = $($0) set B = $($1) ifint $(A) == 1 set Result = 1 else set Result = $(B) endif Return $(Result) [Boolean-And] set A = $($0) set B = $($1) ifint $(A) == 1 set Result = $(B) else set Result = 0 endif Return $(Result) [Boolean-Xor] set A = $($0) set B = $($1) ifint $(A) == 1 shell "" Boolean-Not $(B) set Result = $($R0) else set Result = $(B) endif Return $(Result) [Files-Inf] 1, oemsetup.inf, SIZE=100000, RENAME=$(!UG_Filename) [Files-Detect] 1, DigiDtct.dll, SIZE=59392 [Files-Detect-Driver] 1, DigiPci.sys, SIZE=5088 [Files-Redistributable] 1, mfc42.dll, SIZE=954640 1, msvcrt.dll, SIZE=277776 [Files-Config] 1, DigiCfg.inf, SIZE=100000 1, DigiInf.dll, SIZE=47616 1, DigiFWrk.dll, SIZE=204288 1, DxbMgt.dll, SIZE=50688 [Files-Delete] 1, DigiRas.gid, SIZE=100000 1, DigiCfg.PNF, SIZE=100000 [Files-Config-Houston] 1, DigiHLC.dll, SIZE=69120 1, DigiDBP.dll, SIZE=108032 1, DigiAsyn.dll, SIZE=31744 1, DigiIsdn.dll, SIZE=26112 1, DigiRAS.hlp, SIZE=97828 [Files-Diags-Houston] 1, SxbDiag.exe, SIZE=910848 1, SxbDiag.hlp, SIZE=66254 1, SxbDiag.cnt, SIZE=891 [Files-Driver-Houston] 1, DigiDxb.sys, SIZE=104288 1, DigiAsyn.sys, SIZE=51488 1, DigiIsdn.sys, SIZE=36544 [Files-Firmware-Houston] FEPPCI = 1, FepDense.Bin, SIZE=1589248 [Files-Config-London] 1, DigiHLC.dll, SIZE=69120 1, DigiDBP.dll, SIZE=108032 1, DigiAsyn.dll, SIZE=31744 1, DigiIsdn.dll, SIZE=26112 1, DigiRAS.hlp, SIZE=97828 [Files-Diags-London] 1, SxbDiag.exe, SIZE=910848 1, SxbDiag.hlp, SIZE=66254 1, SxbDiag.cnt, SIZE=891 [Files-Driver-London] 1, DigiDxb.sys, SIZE=104288 1, DigiAsyn.sys, SIZE=51488 1, DigiIsdn.sys, SIZE=36544 [Files-Firmware-London] FEPPCI = 1, FepDense.Bin, SIZE=1589248 [Files-Config-Chaska] 1, DigiHLC.dll, SIZE=69120 1, DigiDBP.dll, SIZE=108032 1, DigiAsyn.dll, SIZE=31744 1, DigiIsdn.dll, SIZE=26112 1, DigiRAS.hlp, SIZE=97828 [Files-Diags-Chaska] 1, SxbDiag.exe, SIZE=910848 1, SxbDiag.hlp, SIZE=66254 1, SxbDiag.cnt, SIZE=891 [Files-Driver-Chaska] 1, DigiDxb.sys, SIZE=104288 1, DigiAsyn.sys, SIZE=51488 [Files-Firmware-Chaska] FEPPCI = 1, FepDense.Bin, SIZE=1589248 [Files-Modem] 1, MdmDgDen.inf, SIZE=22144 [Files-Config-Clydesdale] 1, DigiClyd.dll, SIZE=36352 1, DigiFrX.dll, SIZE=182272 1, DigiSna.dll, SIZE=21504 1, DigiRAS.hlp, SIZE=97828 [Files-Driver-Clydesdale] 1, DigiDxb.sys, SIZE=104288 1, DigiLan.sys, SIZE=25440 1, DigiWanX.sys, SIZE=42592 [Files-Diags-Clydesdale] 1, SxbDiag.exe, SIZE=910848 1, SxbDiag.hlp, SIZE=66254 1, SxbDiag.cnt, SIZE=891 [Files-SNA-Driver-Clydesdale] 1, DigiSna.sys, SIZE=18784 [Files-SNA-Config-Clydesdale] 1, DigSDCfg.dll, SIZE=267264 1, DigXCfg.dll, SIZE=280576 [Files-Firmware-Clydesdale] FEPPCI = 1, FepClyde.Bin, SIZE=457524 [Files-Driver-Sync570] 1, DigiSoh.sys, SIZE=830976 1, Dg570mp.sys, SIZE=45408 1, DigiLan.sys, SIZE=25440 1, DigiWanX.sys, SIZE=42592 [Files-Config-Sync570] 1, DigiClyd.dll, SIZE=36352 1, DigiFrX.dll, SIZE=182272 1, DigiSna.dll, SIZE=21504 1, DigiRAS.hlp, SIZE=97828 [Files-SNA-Driver-Sync570] 1, DigiSna.sys, SIZE=18784 [Files-SNA-Config-Sync570] 1, DigSDCfg.dll, SIZE=267264 1, DigXCfg.dll, SIZE=280576 [Files-Diags-Sync570] 1, SxbDiag.exe, SIZE=910848 1, SxbDiag.hlp, SIZE=66254 1, SxbDiag.cnt, SIZE=891 [Files-PERFMON-Streams] 1, sohperf.dll, SIZE=32768 1, DigiDlg.dll, SIZE=48640 1, sohctrs.ini, SIZE=2082 1, sohctrs.h, SIZE=1248 1, sohperf.reg, SIZE=439 [LanguagesSupported] ENG [InstallOptionsText-ENG] Sync570 = "Digi Sync570" [UpdateOptionsText-ENG] "Houston" = "DataFire RAS P/T/E" "London" = "DataFire RAS B Series" "Chaska" = "AccelePort RAS A Series" "Clydesdale" = "DataFire Sync 2000" [InstallProgress-Strings-ENG] ProCaption = $(AdapterDescription)" Setup" ProCancel = "Cancel" ProCancelMsg = $(AdapterDescription)" is not correctly installed."$(!LF)$(!LF)+ "Are you sure you want to cancel copying files?" ProCancelCap = "Cancel "$(AdapterDescription)" Setup?" ProText1 = "Copying:" ProText2 = "To:" [UpdateProgress-Strings-ENG] ProCaption = "Digi Software Update" ProCancel = "Cancel" ProCancelMsg = "The Digi Software Update is not complete. Canceling now may have"$(!LF)+ "adverse effects on the operation of any Digi adapters currently"$(!LF)+ "installed in this system."$(!LF)$(!LF)+ "Are you sure you want to cancel copying files?" ProCancelCap = "Cancel Digi Software Update?" ProText1 = "Copying:" ProText2 = "To:" [SyncPort-Strings-ENG] HumanName = "SyncPort" [Streams-Strings-ENG] HumanName = "Streams On Host" [Sync570-Strings-ENG] HumanName = "Sync/570 MiniPort" [Houston-Strings-ENG] HumanName = "DataFire RAS P/T/E" [London-Strings-ENG] HumanName = "DataFire RAS B Series" [Chaska-Strings-ENG] HumanName = "AccelePort RAS A Series" [Clydesdale-Strings-ENG] HumanName = "DataFire Sync 2000" [PCI-Strings-ENG] HumanName = "PCI Adapter Identification" [X25-Strings-ENG] HumanName = "X.25" [X25L-Strings-ENG] HumanName = "LAN" [FR-Strings-ENG] HumanName = "LAN" [SNA-Strings-ENG] HumanName = "SNA" [PPP-Strings-ENG] HumanName = "PPP" [ASYN-Strings-ENG] HumanName = "ASYN" [ISDN-Strings-ENG] HumanName = "ISDN" [Generic-Strings-ENG] GenericDriverName = "Digi "$(HumanName)" Driver" DriverDescription = $(GenericDriverName) DriverTitle = $(GenericDriverName) GenericAdapterName = "Digi "$(HumanName)" Adapter" AdapterDescription = $(GenericAdapterName) AdapterTitle = $(GenericAdapterName) [UpdateMessages-ENG] UpdateWarningTitle = "Digi Software Update" UpdateWarning = "You have selected to update your current Digi software. Please note that"$(!LF)+ "this is a comprehensive update for all of the following adapters:"$(!LF)$(!LF)+ $(!TAB)"DataFire SYNC/570"$(!LF)+ "By continuing, all adapters of these types currently installed in this"$(!LF)+ "system will be updated to this newer version of software."$(!LF)+ "Do you wish to continue with this update?" AlreadyUpdated = "This software has already been updated to the latest version." [InstallMessages-ENG] NoNetworkCard = "Network card is not present in the system." BusTypeNotSupported = "This adapter cannot be installed using the bus type you have selected." CfgDllFailed = "The configuration DLL failed to load." UserCanceledInstall = "Installation of the software has been canceled." UpdateLater = "Remember, you can still update your software by pressing the Update button"$(!LF)+ "in the Network Control Panel, then enter the path to this INF." UpdateNowTitle = "Update software now?" UpdateNow = "An older version of this software is already installed."$(!LF)$(!LF)+ "In order to continue, setup must update your old software."$(!LF)+ "Do you wish to proceed with updating your old software now?" NewerInstalled = "A newer version of this software is already installed." [InvokeRasDlg-ENG] InvokeRasTitle = "Invoke RAS setup?" InvokeRasConfigMsg = "In order to enable you to use your Digi adapter with Remote Access Services (RAS), "$(!LF)+ "you must configure one or more ports in RAS setup. "$(!LF)$(!LF)+ "Do you wish to invoke RAS setup now?" RemindRasConfigMsg = "Remote Access Services (RAS) is not installed. "$(!LF)$(!LF)+ "Please remember to install Remote Access Services (RAS) to enable you "$(!LF)+ "to use RAS ports with your Digi adapter." InvokeRasError = "Setup encountered an error while invoking the RAS setup INF file (OEMNSVRA.INF)." [DialogConstantsENG] Help = "&Help" Exit = "Cancel" OK = "OK" HelpContext = "" Continue = "Continue" Cancel = "Cancel" [IconInfoENG] IconGroupName = "Digi PortAssist Viewer" IconDiagName = "PortAssist Viewer" IconDiagHelp = "PortAssist Viewer Help" IconCfgHelp = "Digi Adapter Help" IconRelNotes = "Release Notes" [SNMPMessages-ENG] InstallError = "Due to an error, SNMP support will not be installed at this time." [RegistryErrorString-ENG] GenericError = "An unknown registry error has occurred." [ShellCodeError-ENG] ShellCodeErrorTitle = "Error!" ShellCodeErrorText = "Shell code error!" [AddStreamsService] read-syms DriverConstants read-syms DriverConstants-Streams set Installed = 1 shell "" AddService "Streams" ifint $($R0) == 0 goto Error endif shell "" InstallPerfMon "Streams" shell "" AddGroupToServiceGroupOrder $(MiniPortDependOnGroup) $(DStreamsDependOnGroup) ifint $($R0) == 0 goto Error endif goto Exit Error = + set Installed = 0 Exit = + Return $(Installed) [AddAdapterToMiniportAdapters] set AdapterName = $($0) read-syms DriverConstants-Streams set Status = "STATUS_SUCCESSFUL" set KeyParameters = "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductSoftwareName)"\Parameters" 33554432 KeyParameters ifstr $(KeyParameters) == "" set Status = "STATUS_UNSUCCESSFUL" goto Exit endif shell "" MakeRegKey $(KeyParameters) { $(MiniportAdapterKey), 0, "GenericClass" } set KeyMiniportAdapters = $($R0) shell "" MakeRegKey $(KeyMiniportAdapters) { $(AdapterName), 0, "GenericClass" } set KeyService = $($R0) shell "" CloseOpenRegKey $(KeyService) shell "" CloseOpenRegKey $(KeyMiniportAdapters) shell "" CloseOpenRegKey $(KeyParameters) Exit = + Return $(Status) [RemoveAdapterFromMiniportAdapters] set AdapterName = $($0) read-syms GlobalConstants read-syms DriverConstants-Streams set Status = "STATUS_SUCCESSFUL" set KeyMiniportAdapters = "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductSoftwareName)"\Parameters\"$(MiniportAdapterKey) 33554432 KeyMiniportAdapters ifstr $(KeyMiniportAdapters) == "" set Status = "STATUS_UNSUCCESSFUL" goto Exit endif DeleteRegKey $(KeyMiniportAdapters) $(AdapterName) EnumRegKey $(KeyMiniportAdapters) MiniportAdaptersList shell "" CloseOpenRegKey $(KeyMiniportAdapters) QueryListSize NumMiniportAdapters $(MiniportAdaptersList) ifint $(NumMiniportAdapters) == 0 shell "" RemoveGroupFromServiceGroupOrder $(MiniPortDependOnGroup) shell "" UnInstallPerfMon "Streams" shell "utility.inf" RemoveSoftwareComponent $(Manufacturer) $(ProductSoftwareName) endif Exit = + Return $(Status) [ConfigureAdapter-SyncPort] set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) set Status = "STATUS_FAILED" set NeedToInvokeRAS = 0 set NeedBindingReview = 0 set KeyDriverService = "" set KeyX25Adapter = "" shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"SyncCfg.dll" "DigiEntry" set Status = $($R0) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto endif set NeedBindingReview = $($R2) ifstr $(KeyX25Adapter) == "" goto ConfigSNMP endif shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyX25Adapter) "NumRASPorts" set NumRasPorts = $($R1) shell "" SetTapi "X25" $(AdapterNumber) $(NumRASPorts) 3 OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(X25ProductSoftwareName) 33554432 KeyDriverService ifstr $(KeyDriverService) == "" goto ConfigSNMP endif ifint $(NumRASPorts) == 0 set Start = "4" else set Start = "2" endif shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyDriverService) "Start" $(Start) ifint $(NumRASPorts) == 0 goto ConfigSNMP endif set NeedBindingReview = 1 set TotalPorts = 0 ifstr(i) $(NewPortAProtocol) == "X25" OpenRegKey $(KeyPortA) "" "X25" 33554432 KeyX25PortA GetRegValueByKey $(TYPECHECK_NONE) $(KeyX25PortA) "TotalRASPorts" set-add TotalPorts = $(TotalPorts), $($R1) CloseRegKey $(KeyX25PortA) endif ifstr(i) $(NewPortBProtocol) == "X25" OpenRegKey $(KeyPortB) "" "X25" 33554432 KeyX25PortB GetRegValueByKey $(TYPECHECK_NONE) $(KeyX25PortB) "TotalRASPorts" set-add TotalPorts = $(TotalPorts), $($R1) CloseRegKey $(KeyX25PortB) endif ifint $(TotalPorts) > 0 ifstr(i) $(!NTN_InstallMode) == "Install" set NeedToInvokeRAS = 1 endif endif ConfigSNMP = + ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif goto Break_Config goto Exit Exit = + shell "" "CleanUp-"$(NewPortAProtocol) "A" $(KeyPortA) $(AdapterServiceName) $(Result) CloseRegKey $(KeyPortA) shell "" "CleanUp-"$(NewPortBProtocol) "B" $(KeyPortB) $(AdapterServiceName) $(Result) CloseRegKey $(KeyPortB) ifint $(NeedInvokeRAS) == 1 shell "" InvokeRAS endif shell "" CloseOpenRegKey $(KeyX25Adapter) shell "" CloseOpenRegKey $(KeyDriverService) Return $(Status) [ConfigureAdapter-Houston] set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"DigiInf.Dll" "Configure" set Status = $($R0) set NeedBindingReview = $($R1) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Exit endif ifstr(i) $(!NTN_InstallMode) == "Install" shell "" InvokeRAS endif ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif Exit = + Return $(Status) [ConfigureAdapter-London] set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"DigiInf.Dll" "Configure" set Status = $($R0) set NeedBindingReview = $($R1) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Exit endif ifstr(i) $(!NTN_InstallMode) == "Install" shell "" InvokeRAS endif ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif Exit = + Return $(Status) [ConfigureAdapter-Chaska] set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"DigiInf.Dll" "Configure" set Status = $($R0) set NeedBindingReview = $($R1) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Exit endif ifstr(i) $(!NTN_InstallMode) == "Install" shell "" InvokeRAS endif ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif Exit = + Return $(Status) [ConfigureAdapter-Clydesdale] read-syms DriverConstants-X25 set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"DigiInf.Dll" "Configure" set Status = $($R0) set NeedBindingReview = $($R1) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Exit endif set KeyX25Adapter = "" set AdapterNumber = "" set NumRasPorts = 0 shell "" FindAdapter $(ProductSoftwareName) ifint $($R0) == 1 set AdapterNumber = $($R1) shell "" OpenServiceParamKey $(ProductHardwareName)$(AdapterNumber) set KeyX25Adapter = $($R0) ifstr $(KeyX25Adapter) != "" shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyX25Adapter) "NumRASPorts" ifint $($R0) == 1 set NumRasPorts = $($R1) endif CloseRegKey $(KeyX25Adapter) ifint $(NumRasPorts) == 0 set Start = 4 else set Start = 2 endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) 33554432 KeyDriverService shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyDriverService) "Start" $(Start) CloseRegKey $(KeyDriverService) shell "" SetTapi "X25" $(AdapterNumber) $(NumRasPorts) 3 endif endif ifint $(NumRasPorts) > 0 ifstr(i) $(!NTN_InstallMode) == "Install" shell "" InvokeRAS endif endif ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif Exit = + Return $(Status) [ConfigureAdapter-Sync570] read-syms DriverConstants-X25 set SrcDir = $($0) set Option = $($1) set KeyParameters = $($2) set AdapterServiceName = $($3) shell "" AddAdapterToMiniportAdapters $(AdapterServiceName) shell "" ConfigureAdapter $(SrcDir) $(Option) $(KeyParameters) $(AdapterServiceName) $(!STF_CWDDIR)"DigiInf.Dll" "INFEntryPoint" set Status = $($R0) set NeedBindingReview = $($R1) ifstr(i) $(Status) != "STATUS_SUCCESSFUL" goto Exit endif set KeyX25Adapter = "" set AdapterNumber = "" set NumRasPorts = 0 shell "" FindAdapter $(ProductSoftwareName) ifint $($R0) == 1 set AdapterNumber = $($R1) shell "" OpenServiceParamKey $(ProductHardwareName)$(AdapterNumber) set KeyX25Adapter = $($R0) ifstr $(KeyX25Adapter) != "" shell "" GetRegValueByKey $(!REG_VT_DWORD) $(KeyX25Adapter) "NumRASPorts" ifint $($R0) == 1 set NumRasPorts = $($R1) endif CloseRegKey $(KeyX25Adapter) ifint $(NumRasPorts) == 0 set Start = 4 else set Start = 2 endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) 33554432 KeyDriverService shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyDriverService) "Start" $(Start) CloseRegKey $(KeyDriverService) shell "" SetTapi "X25" $(AdapterNumber) $(NumRasPorts) endif endif ifint $(NumRasPorts) > 0 ifstr(i) $(!NTN_InstallMode) == "Install" shell "" InvokeRAS endif endif ifint $(NeedBindingReview) == 1 set Status = "STATUS_SUCCESSFUL" else set Status = "STATUS_REBOOT" endif Exit = + Return $(Status) [InstallPerfMon] set Option = $($0) read-syms DriverConstants read-syms DriverConstants-$(Option) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductSoftwareName) 33554432 KeyDriverService ifstr $(KeyDriverService) == "" endif shell "" MakeRegKey $(KeyDriverService) { "Performance", 0, "GenericClass" } set KeyPerformance = $($R0) ifstr $(KeyPerformance) == "" ifint 0 == 0 goto "Cannot mke the performance key" endif endif shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyPerformance) "Library" $(PerfLibrary) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyPerformance) "Open" $(PerfOpen) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyPerformance) "Collect" $(PerfCollect) shell "" SetRegValueByKey $(!REG_VT_SZ) $(KeyPerformance) "Close" $(PerfClose) CloseRegKey $(KeyDriverService) LoadLibrary "x" $(!STF_WINDOWSSYSPATH)\DigiDlg.dll !DIGIDLGHANDLE Set FLibraryErrCtl = 1 LibraryProcedure Result $(!DIGIDLGHANDLE) PerfMonUtilities $(!STF_WINDOWSSYSPATH)"\lodctr.exe "$(PerfLoadIni) Set FLibraryErrCtl = 0 FreeLibrary $(!DIGIDLGHANDLE) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\EventLog\System" 33554432 KeyEventLog ifstr $(KeyEventLog) == "" else shell "" MakeRegKey $(KeyEventLog) { $(PerfEventLog), 0, "GenericClass" } set KeyEventLogAppl = $($R0) Ifstr $(KeyEventLogAppl) != "" shell "" SetRegValueByKey $(!REG_VT_EXPAND_SZ) $(KeyEventLogAppl) "EventMessageFile" "%SystemRoot%\System32\"$(PerfLibrary) set TypesSupported = 7 shell "" SetRegValueByKey $(!REG_VT_DWORD) $(KeyEventLogAppl) "TypesSupported" $(TypesSupported) endif endif Return [UnInstallPerfMon] set Option = $($0) read-syms DriverConstants read-syms DriverConstants-$(Option) LoadLibrary "x" $(!STF_WINDOWSSYSPATH)\DigiDlg.dll !DIGIDLGHANDLE Set FLibraryErrCtl = 1 LibraryProcedure Result $(!DIGIDLGHANDLE) PerfMonUtilities $(!STF_WINDOWSSYSPATH)"\unlodctr.exe "$(ProductHardwareName) Set FLibraryErrCtl = 0 FreeLibrary $(!DIGIDLGHANDLE) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\EventLog\System" 33554432 KeyEventLog ifstr $(KeyEventLog) == "" else DeleteRegTree $(KeyEventLog) $(PerfEventLog) endif Return [Signature] FileType = MICROSOFT_FILE [GetSignature] read-syms Signature Return $(FileType) [Source Media Descriptions] 1 = "WAN Links for Windows NT CD-ROM" [ProductType] STF_PRODUCT = Winnt STF_PLATFORM = I386 [PlatformsSupported] PCI [InstallOptions] Sync570 [UpdateOptions] "Houston" "London" "Chaska" "Clydesdale" "Sync570" [Identify] read-syms Identification set Status = "STATUS_SUCCESSFUL" set Identifier = $(OptionType) set Media = #("Source Media Descriptions", 1, 1) Exit = + return $(Status) $(Identifier) $(Media) [ReturnOptions] set DesiredLanguage = $($0) set DesiredPlatform = $($1) set Status = "STATUS_FAILED" set OptionList = {} set OptionTextList = {} set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $(DesiredLanguage) not-in $(LanguageList) set Status = "STATUS_NOLANGUAGE" goto Exit endif ifstr $(DesiredPlatform) != "" set PlatformList = ^(PlatformsSupported, 1) Ifcontains(i) $(DesiredPlatform) not-in $(PlatformList) set Status = "STATUS_NOTSUPPORTED" goto Exit endif endif read-syms ProductType ifstr(i) $(STF_PLATFORM) != $(!STF_PLATFORM) set Status = "STATUS_NOTSUPPORTED" goto Exit endif read-syms Identification set OptionList = ^($(!NTN_InstallMode)"Options", 1) set OptionTextList = ^($(!NTN_InstallMode)"OptionsText-"$(DesiredLanguage), 1) set Status = "STATUS_SUCCESSFUL" Exit = + return $(Status) $(OptionList) $(OptionTextList) [InstallOption] set Language = $($0) set Option = $($1) set SrcDir = $($2) set AddCopy = $($3) set DoCopy = $($4) set DoConfig = $($5) set Status = "STATUS_FAILED" set-subst !LF = "\n" set-subst !TAB = "\t" set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $(Language) not-in $(LanguageList) set Status = "STATUS_NOLANGUAGE" goto Error endif ifstr(i) $(!NTN_Origination) == "NCPA" set Continue = $(OK) endif set Mode = "Install" ifstr(i) $(!NTN_InstallMode) == $(Mode) goto RunMode endif set Mode = "Deinstall" ifstr(i) $(!NTN_InstallMode) == $(Mode) goto RunMode endif set Mode = "Configure" ifstr(i) $(!NTN_InstallMode) == $(Mode) goto RunMode endif set Mode = "Bind" ifstr(i) $(!NTN_InstallMode) == $(Mode) goto RunMode endif set Mode = "Update" ifstr(i) $(!NTN_InstallMode) == $(Mode) goto RunMode endif goto Error RunMode = + shell "" $(Mode)Mode $(Option) $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) set Status = $($R0) Error = + ifstr(i) $(Status) == "STATUS_SUCCESSFUL" goto Exit endif ifstr(i) $(Status) == "STATUS_REBOOT" goto Exit endif ifstr(i) $(Status) == "STATUS_USERCANCEL" goto Exit endif ifstr(i) "SETUP_FAIL" != "NO_ERROR" set DontCare = 1 else set DontCare = 0 endif ifint $(DontCare) == 1 shell "" GetRegistryErrorString "SETUP_FAIL" shell "" SetupMessage "FATAL" $($R0) endif Exit = + return $(Status)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.