1918 lines
76 KiB
INI
1918 lines
76 KiB
INI
|
;/****************************************************************************
|
||
|
;* oemnxppp.inf : $Revision: 1.10
|
||
|
;* Modified : $Date: Feb 06 1996 16:42:16
|
||
|
;* By : $Author: abordia $, U.S. Robotics Access Corp.
|
||
|
;* Logfile : $Logfile: L:/SRC/INSTALL/STRAWMAN/INFFILE/oemsetup.inv
|
||
|
;*****************************************************************************
|
||
|
;* Copyright (c) $Date: Feb 06 1996 16:42:16 $,
|
||
|
;* U.S. Robotics Access Corp., Microsoft Corp.
|
||
|
;* All Rights Reserved
|
||
|
;*****************************************************************************
|
||
|
;* "OTHER CODE"
|
||
|
;* This software may be used to implement the POINT to POINT TUNNELING
|
||
|
;* PROTOCOL as defined by the PPTP forum. The PPTP forum consists of:
|
||
|
;* U.S. Robotics, Ascend Communications, Microsoft, 3Com/Primary Access,
|
||
|
;* Telematics.
|
||
|
;*****************************************************************************
|
||
|
;*
|
||
|
;* This file is part of the USR Total Control STRAWMAN Installation Program
|
||
|
;*
|
||
|
;* It is the RASPPTP WindowsNT Setup File
|
||
|
;*
|
||
|
;*****************************************************************************
|
||
|
;*
|
||
|
;* Redistribution and use in source and binary forms, with or without
|
||
|
;* modification, are permitted provided that the following conditions
|
||
|
;* are met:
|
||
|
;*
|
||
|
;* 1. Redistributions of source code must retain this entire header
|
||
|
;* including the above copyright notice, this list of conditions and
|
||
|
;* the following disclaimer.
|
||
|
;* 2. Source code access must be limited to employees or contractors of
|
||
|
;* Microsoft Corp.
|
||
|
;* 3. The name of U.S. Robotics may not be used to endorse or promote
|
||
|
;* products derived from this software without specific prior written
|
||
|
;* permission of U.S. Robotics.
|
||
|
;*
|
||
|
;* THIS SOFTWARE IS PROVIDED BY U.S. ROBOTICS ACESS CORP. ``AS IS'' AND
|
||
|
;* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||
|
;* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||
|
;* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL U.S. ROBOTICS BE LIABLE FOR
|
||
|
;* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||
|
;* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||
|
;* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
|
;* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||
|
;* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||
|
;* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||
|
;* POSSIBILITY OF SUCH DAMAGE.
|
||
|
;*
|
||
|
;*****************************************************************************/
|
||
|
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Identification]
|
||
|
OptionType = NetTransport
|
||
|
|
||
|
;***********************************************************************
|
||
|
;RamC, Commented out because PPTP is platform independent and should not
|
||
|
;be using this information. 12/10/96
|
||
|
;***********************************************************************
|
||
|
;[PlatformsSupported]
|
||
|
; ISA
|
||
|
; EISA
|
||
|
; "Jazz-Internal Bus"
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Options]
|
||
|
RASPPTP
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[FileConstants]
|
||
|
InfName = "OEMNXPPP.INF"
|
||
|
UtilityInf = "UTILITY.INF"
|
||
|
ParamInf = "NCPARAM.INF"
|
||
|
subroutineinf = "SUBROUTN.INF"
|
||
|
SoftwareType = "driver"
|
||
|
Exit_Code = 0
|
||
|
NetEventDLL = "%SystemRoot%\System32\netevent.dll"
|
||
|
IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
|
||
|
RASPPTPMsgDLL = "%SystemRoot%\System32\raspptpl.dll;%SystemRoot%\System32\netevent.dll"
|
||
|
Manufacturer = "Microsoft"
|
||
|
ProductMajorVersion = "4"
|
||
|
ProductMinorVersion = "0"
|
||
|
ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
|
||
|
ProductSoftwareName = "RASPPTPM"
|
||
|
ProductSoftwareImagePath = "\SystemRoot\System32\drivers\RASPPTPM.sys"
|
||
|
|
||
|
NetworkCardKeyName = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards"
|
||
|
ProductKeyBase = $(!NTN_SoftwareBase)"\"$(Manufacturer)
|
||
|
NetRuleSoftwareType = "RASPPTPSys RASPPTPDriver"
|
||
|
NetRuleSoftwareUse = $(SoftwareType)
|
||
|
NetRuleSoftwareBindForm = """RASPPTPSys"" yes no container"
|
||
|
NetRuleSoftwareClass = {"RASPPTPDriver basic"}
|
||
|
NetRuleSoftwareBindable = {"RASPPTPDriver RASPPTPAdapter non exclusive 100"}
|
||
|
ProductHardwareName = "RASPPTPM"
|
||
|
NetRuleHardwareBindForm = " yes yes container"
|
||
|
NetRuleHardwareRASPPTPType = "RASPPTP RASPPTPAdapter"
|
||
|
NetRuleHardwareRASPPTPClass = {"RASPPTPAdapter basic"}
|
||
|
BindableRASPPTPTxt = {"RASPPTPDriver RASPPTPAdapter non exclusive 100"}
|
||
|
ProductOpSupport = 134 ; 0x0086 ; Display,Removable,Properties,Not Updatable
|
||
|
|
||
|
;values for the placeholder Microsoft\RASPPTP transport
|
||
|
ProductRASPPTPName = "RASPPTP"
|
||
|
ProductRASPPTPSvcType = "transport"
|
||
|
NetRuleRASPPTPClass = "classRaspptpTransport ""basic"""
|
||
|
NetRuleRASPPTPType = "RaspptpTransport classRaspptpTransport"
|
||
|
NetRuleRASPPTPUse = "system"
|
||
|
|
||
|
TapiDevices = "TAPI DEVICES"
|
||
|
TapiDeviceKey = $(ProductHardwareName)
|
||
|
TapiMediaType = "VPN"
|
||
|
ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"+
|
||
|
$(ProductSoftwareName)"\CurrentVersion"
|
||
|
ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)+
|
||
|
"\Parameters"
|
||
|
ProductRASPPTPKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"+
|
||
|
"RASPPTP\CurrentVersion"
|
||
|
; default to dialup line mode = 1 -- leased line = 0
|
||
|
; Right now this file only supports dialup mode - leased line changes are needed
|
||
|
LineType = 1
|
||
|
|
||
|
; FIXME - Set to zero before release
|
||
|
DebugFlags = 0
|
||
|
|
||
|
; RASPPTP_SPECFIC_START
|
||
|
;***********************************************************************
|
||
|
; The following constants are specifically for the raspptpe.sys driver
|
||
|
; which is specific to STRAWMAN
|
||
|
;***********************************************************************
|
||
|
[SMANFileConstants]
|
||
|
PPTPProductMajorVersion = "4"
|
||
|
PPTPProductMinorVersion = "0"
|
||
|
|
||
|
PPTPProductVersion = $(PPTPProductMajorVersion)"."$(PPTPProductMinorVersion)
|
||
|
PPTPProductSoftwareName = "RASPPTPE"
|
||
|
PPTPProductSoftwareImagePath = "\SystemRoot\System32\drivers\RASPPTPE.sys"
|
||
|
PPTPNetRuleSoftwareType = "RASPPTPSys RASPPTPDriver"
|
||
|
PPTPNetRuleSoftwareBindForm = """RASPPTPSys"" yes no container"
|
||
|
PPTPNetRuleSoftwareClass = {"RASPPTPDriver basic"}
|
||
|
PPTPNetRuleSoftwareBindable = {"RASPPTPDriver RASPPTPAdapter non exclusive 100"}
|
||
|
PPTPProductHardwareName = "RASPPTPE"
|
||
|
PPTPNetRuleHardwareRASPPTPType = "RASPPTP RASPPTPAdapter"
|
||
|
PPTPNetRuleHardwareRASPPTPClass = {"RASPPTPAdapter basic"}
|
||
|
PPTPBindableRASPPTPTxt = {"RASPPTPDriver RASPPTPAdapter non exclusive 100"}
|
||
|
PPTPProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"+
|
||
|
$(PPTPProductSoftwareName)"\CurrentVersion"
|
||
|
PPTPParamKeyName = $(!NTN_ServiceBase)"\"$(PPTPProductHardwareName)+
|
||
|
"\Parameters"
|
||
|
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[GeneralConstants]
|
||
|
from = ""
|
||
|
to = ""
|
||
|
ExitCodeOk = 0
|
||
|
ExitCodeCancel = 1
|
||
|
ExitCodeFatal = 2
|
||
|
KeyNull = ""
|
||
|
MAXIMUM_ALLOWED = 33554432
|
||
|
SERVICE_NO_CHANGE = 4294967295
|
||
|
RegistryErrorIndex = NO_ERROR
|
||
|
KeyProduct = ""
|
||
|
KeyParameters = ""
|
||
|
TRUE = 1
|
||
|
FALSE = 0
|
||
|
NoTitle = 0
|
||
|
ExitState = "Active"
|
||
|
OldVersionExisted = $(FALSE)
|
||
|
DriverPath = $(!STF_NTPATH)\drivers
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Date]
|
||
|
Now = {} ? $(!LIBHANDLE) GetSystemDate
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Identify]
|
||
|
Read-Syms Identification
|
||
|
Set Status = STATUS_SUCCESSFUL
|
||
|
Set Identifier = $(OptionType)
|
||
|
Set Media = #("Source Media Descriptions", 1, 1)
|
||
|
Return $(Status) $(Identifier) $(Media)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[ReturnOptions]
|
||
|
Set Status = STATUS_FAILED
|
||
|
Set OptionList = {}
|
||
|
Set OptionTextList = {}
|
||
|
Set LanguageList = ^(LanguagesSupported, 1)
|
||
|
|
||
|
IfContains(i) $($0) in $(LanguageList)
|
||
|
IfStr(i) $($1) == ""
|
||
|
GoTo SetOptions
|
||
|
EndIf
|
||
|
;
|
||
|
;RamC, Commented out because PPTP is platform independent and should not
|
||
|
;be checking the platfom. 12/10/96
|
||
|
;
|
||
|
; Set PlatformList = ^(PlatformsSupported, 1)
|
||
|
; IfContains(i) $($1) in $(PlatformList)
|
||
|
; GoTo SetOptions
|
||
|
; Else
|
||
|
; Set Status = STATUS_NOTSUPPORTED
|
||
|
; GoTo ExitReturnOptions
|
||
|
; EndIf
|
||
|
Else
|
||
|
Set Status = STATUS_NOLANGUAGE
|
||
|
GoTo ExitReturnOptions
|
||
|
EndIf
|
||
|
|
||
|
SetOptions = +
|
||
|
Set OptionList = ^(Options, 1)
|
||
|
Set OptionTextList = ^(OptionsText$($0), 1)
|
||
|
Set Status = STATUS_SUCCESSFUL
|
||
|
|
||
|
ExitReturnOptions = +
|
||
|
Return $(Status) $(OptionList) $(OptionTextList)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[InstallOption]
|
||
|
Set Status = STATUS_FAILED
|
||
|
Set Option = $($1)
|
||
|
Set SrcDir = $($2)
|
||
|
Set RasDir = $($2)
|
||
|
Set AddCopy = $($3)
|
||
|
Set DoCopy = $($4)
|
||
|
Set DoConfig = $($5)
|
||
|
Set LanguageList = ^(LanguagesSupported, 1)
|
||
|
|
||
|
IfContains(i) $($0) NOT-IN $(LanguageList)
|
||
|
Return STATUS_NOLANGUAGE
|
||
|
EndIf
|
||
|
;
|
||
|
; FIXME - make sure this flag is disabled before shipping
|
||
|
;
|
||
|
|
||
|
Set-Subst LF = "\n"
|
||
|
|
||
|
Read-Syms GeneralConstants
|
||
|
Read-Syms FileConstants
|
||
|
Read-Syms DialogConstants$(!STF_LANGUAGE)
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
Read-Syms SMANFileConstants
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
IfStr(i) $(!NTN_Origination) == "NCPA"
|
||
|
Set Continue = $(OK)
|
||
|
EndIf
|
||
|
|
||
|
Read-Syms FileConstants$(!STF_LANGUAGE)
|
||
|
Detect Date
|
||
|
Set-Title $(FunctionTitle)$(Option)
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
Read-Syms SMANFileConstants$(!STF_LANGUAGE)
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
Set to = Begin
|
||
|
Set from = Begin
|
||
|
Set CommonStatus = STATUS_SUCCESSFUL
|
||
|
|
||
|
EndWait
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
Begin = +
|
||
|
Set ActivateDetection = FALSE
|
||
|
IfStr(i) $(!NTN_InstallMode) == deinstall
|
||
|
Set StartLabel = RemoveAdapter
|
||
|
Else-IfStr(i) $(!NTN_InstallMode) == Update
|
||
|
Set StartLabel = UpgradeSoftware
|
||
|
Else-IfStr(i) $(!NTN_InstallMode) == bind
|
||
|
Set StartLabel = BindingAdapter
|
||
|
Else-IfStr(i) $(!NTN_InstallMode) == configure
|
||
|
Set StartLabel = ConfigureAdapter
|
||
|
Set ActivateDetection = TRUE
|
||
|
Set CommonStatus = STATUS_REBOOT
|
||
|
; Set CommonStatus = STATUS_SUCCESSFUL
|
||
|
IfStr(i) $(ProductKeyName) == $(!NTN_RegBase)
|
||
|
Debug-Output $(InfName)": Cannot configure the EtherWORKS 3 driver software."
|
||
|
Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
Set from = end
|
||
|
Set to = end
|
||
|
GoTo NonFatalInfo
|
||
|
EndIf
|
||
|
Else
|
||
|
Set StartLabel = InstallAdapter
|
||
|
Set ActivateDetection = TRUE
|
||
|
Set OEM_ABANDON_OPTIONS = {}
|
||
|
Set OEM_ABANDON_SOFTWARE = FALSE
|
||
|
Set OEM_ABANDON_ON = TRUE
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
Set OEM_ABANDON_PPTP_SOTWARE = FALSE
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
EndIf
|
||
|
|
||
|
Debug-Output $(InfName)": =================================================="
|
||
|
Debug-Output $(InfName)": STF_CWDIR is: "$(!STF_CWDIR)
|
||
|
Debug-Output $(InfName)": STF_LANGUAGE is: "$(!STF_LANGUAGE)
|
||
|
Debug-Output $(InfName)": Option is: "$(Option)
|
||
|
Debug-Output $(InfName)": !STF_NCDETECT is: "$(!STF_NCDETECT)
|
||
|
Debug-Output $(InfName)": !STF_NCOPTION is: "$(!STF_NCOPTION)
|
||
|
Debug-Output $(InfName)": !STF_NCDETCARD is: "$(!STF_NCDETCARD)
|
||
|
Debug-Output $(InfName)": !STF_NCDETINFO is: "$(!STF_NCDETINFO)
|
||
|
Debug-Output $(InfName)": =================================================="
|
||
|
|
||
|
Set DetectedCard = FALSE
|
||
|
IfStr(i) $(ActivateDetection) != TRUE
|
||
|
GoTo $(StartLabel)
|
||
|
EndIf
|
||
|
|
||
|
Debug-Output $(InfName)": Calling Param_SetDefaults"
|
||
|
Shell $(ParamInf) Param_SetDefaults {}
|
||
|
|
||
|
IfStr(i) $(!STF_NCDETECT) == YES
|
||
|
IfStr(i) $(!STF_NCOPTION) == $(Option)
|
||
|
Set DetectedCard = TRUE
|
||
|
Debug-Output $(InfName)": Setting DetectedCard to TRUE"
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
Shell "" DebugConfiguration "After parameter querying"
|
||
|
Set from = FatalError
|
||
|
Set to = FatalError
|
||
|
GoTo $(StartLabel)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
InstallAdapter = +
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
|
||
|
IfStr $(KeyProduct) != $(KeyNull)
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
IfStr(i) !(NTN_RegBase) == $(ProductKeyName)
|
||
|
Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
|
||
|
$(ProductVersion)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo end
|
||
|
Else
|
||
|
Shell $(UtilityInf), CardExistedDlg
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
IfStr(i) $($R1) != "OK"
|
||
|
Set CommonStatus = STATUS_USERCANCEL
|
||
|
GoTo end
|
||
|
EndIf
|
||
|
Set OldVersionExisted = $(TRUE)
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
Set CurrParamSettings = {}
|
||
|
IfStr(i) $(DetectedCard) != TRUE
|
||
|
GoTo AdapterSetup
|
||
|
EndIf
|
||
|
|
||
|
StartWait
|
||
|
Shell $(ParamInf) Param_QueryCard $(!STF_NCDETCARD)
|
||
|
EndWait
|
||
|
|
||
|
IfStr(i) $($R0) != STATUS_SUCCESSFUL
|
||
|
GoTo AdapterSetup
|
||
|
EndIf
|
||
|
|
||
|
Set DetectedParams = $($R1)
|
||
|
Debug-Output $(InfName)": Calling Param_SetDefaults to merge detected params"
|
||
|
Shell $(ParamInf) Param_SetDefaults $(DetectedParams)
|
||
|
GoTo AdapterSetup
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
ConfigureAdapter = +
|
||
|
Read-Syms InvokeConfigureDlg$(!STF_LANGUAGE)
|
||
|
|
||
|
LoadLibrary "x" $(!STF_CWDDIR)raspptpc.dll RASPPTPDLGHANDLE
|
||
|
Debug-Output $(InfName)": Getting info from GetChassisConfiguration"
|
||
|
Debug-Output $(InfName)": NTN_InstallMode is "$(!NTN_InstallMode)
|
||
|
LibraryProcedure Result, $(RASPPTPDLGHANDLE), GetChassisConfiguration $(!NTN_InstallMode)
|
||
|
Set NumberOfLineDevices = *($(Result), 1)
|
||
|
Set AdapterNum = *($(Result), 2)
|
||
|
FreeLibrary $(RASPPTPDLGHANDLE)
|
||
|
|
||
|
ifstr(i) $(NumberOfLineDevices) != "EXITSETUP"
|
||
|
ifstr(i) $(NumberOfLineDevices) != "RASNOCHANGE"
|
||
|
Shell "" UpdateAddressList $(NumberOfLineDevices) $(AdapterNum) $(ProductSoftwareName) +
|
||
|
$(TapiMediaType)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output "Cannot update address list for RAS"
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
endif
|
||
|
Set CommonStatus = STATUS_SUCCESSFUL
|
||
|
; Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
; $(InvokeConfigureMsg)
|
||
|
Else
|
||
|
Set CommonStatus = STATUS_USERCANCEL
|
||
|
EndIf
|
||
|
|
||
|
goto end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
AdapterSetup = +
|
||
|
Shell "" DebugConfiguration "before Param_ParameterConfidence"
|
||
|
Shell $(ParamInf) Param_ParameterConfidence
|
||
|
IfStr(i) $($R0) != STATUS_SUCCESSFUL
|
||
|
Debug-Output $(InfName)": parameter confidence too low to bypass configuration"
|
||
|
Shell "" DebugConfiguration "before AdapterOptions"
|
||
|
GoTo AdapterOptions
|
||
|
EndIf
|
||
|
IfStr(i) $(DetectedCard) == TRUE
|
||
|
IfStr(i) $(!STF_INSTALL_MODE) != CUSTOM
|
||
|
Shell "" DebugConfiguration "before AdapterVerify"
|
||
|
GoTo AdapterVerify
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
AdapterOptions = +
|
||
|
Shell "" DebugConfiguration "inside AdapterOptions"
|
||
|
Read-Syms FileDependentDlg$(!STF_LANGUAGE)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
AdapterVerify = +
|
||
|
Shell "" DebugConfiguration "inside AdapterVerify"
|
||
|
Shell "" DebugConfiguration "after running dialog"
|
||
|
IfStr(i) $(DetectedCard) != TRUE
|
||
|
Shell $(ParamInf) Param_SaveValues
|
||
|
Set NewParamSettings = $($R0)
|
||
|
IfStr(i) $(CurrParamSettings) == {}
|
||
|
Set DiffParamSettings = $(NewParamSettings)
|
||
|
Else
|
||
|
Shell $(ParamInf) Param_DiffValues $(CurrParamSettings)
|
||
|
Set DiffParamSettings = $($R0)
|
||
|
EndIf
|
||
|
Debug-Output $(InfName)": Calling Param_VerifyResources"
|
||
|
Shell $(ParamInf) Param_VerifyResources $(DiffParamSettings)
|
||
|
IfStr(i) $($R0) == STATUS_SUCCESSFUL
|
||
|
Debug-Output $(InfName)": Param_VerifyResources succeeded"
|
||
|
GoTo SkipOptions
|
||
|
EndIf
|
||
|
Else
|
||
|
Set CardVerifyIndex = $(!STF_NCDETCARD)
|
||
|
Debug-Output $(InfName)": Calling Param_VerifyCard"
|
||
|
Shell $(ParamInf) Param_VerifyCard $(!STF_NCDETCARD)
|
||
|
IfStr(i) $($R0) == STATUS_SUCCESSFUL
|
||
|
Debug-Output $(InfName)": Param_VerifyCard succeeded"
|
||
|
GoTo SkipOptions
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
Set from = AdapterOptions
|
||
|
Set to = SkipOptions
|
||
|
Shell $(UtilityInf),RegistryErrorString,VERIFY_WARNING
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
GoTo WarningMsg
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
SkipOptions =+
|
||
|
IfInt $(OldVersionExisted) == $(TRUE)
|
||
|
IfStr(i) $(!NTN_InstallMode) == configure
|
||
|
GoTo WriteParameters
|
||
|
EndIf
|
||
|
EndIf
|
||
|
StartWait
|
||
|
IfInt $(OldVersionExisted) == $(FALSE)
|
||
|
IfStr(i) $(!NTN_InstallMode) == "install"
|
||
|
IfStr(i) $(DoCopy) == "YES"
|
||
|
Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
Else-IfStr(i) $($R0) == STATUS_FAILED
|
||
|
Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
GoTo FatalError
|
||
|
Else-IfStr(i) $($R0) == STATUS_USERCANCEL
|
||
|
GoTo SuccessfulOption
|
||
|
EndIf
|
||
|
Set SrcDir = $($R1)
|
||
|
EndIf
|
||
|
|
||
|
Install "Install-Option"
|
||
|
IfStr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
|
||
|
Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
GoTo FatalError
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
; Add the placeholder dummy RASPPTP transport to registry
|
||
|
Shell $(UtilityInf), InstallSoftwareProduct, $(Manufacturer),+
|
||
|
$(ProductRASPPTPName), $(InfName)
|
||
|
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output "InstallSoftware bombed out."
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
|
||
|
set RegistryErrorIndex = $($R0)
|
||
|
|
||
|
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
|
||
|
Debug-Output "REGISTRY PROBLEM"
|
||
|
CloseRegKey $($R1)
|
||
|
CloseRegKey $($R2)
|
||
|
goto FatalRegistry
|
||
|
endif
|
||
|
|
||
|
;
|
||
|
; At this point:
|
||
|
; $R1 contains the product version key handle;
|
||
|
; $R2 contains the NetRules subkey handle;
|
||
|
|
||
|
Set SoftProductKey = $($R1)
|
||
|
Set SoftNetRuleKey = $($R2)
|
||
|
|
||
|
; set product key information in the registry
|
||
|
|
||
|
set NewValueList = +
|
||
|
{{Infname ,$(NoTitle),$(!REG_VT_SZ),$(InfName)},+
|
||
|
{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(ProductRASPPTPSvcType)},+
|
||
|
{Title,$(NoTitle),$(!REG_VT_SZ), $(ProductRASPPTPTitle)},+
|
||
|
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductRASPPTPDescription)},+
|
||
|
{OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)},+
|
||
|
{MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
|
||
|
{MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
|
||
|
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
|
||
|
|
||
|
Shell $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
CloseRegKey $(SoftProductKey)
|
||
|
CloseRegKey $(SoftNetRuleKey)
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
|
||
|
set RegistryErrorIndex = $($R0)
|
||
|
CloseRegKey $(SoftProductKey)
|
||
|
|
||
|
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
|
||
|
CloseRegKey $(SoftNetRuleKey)
|
||
|
goto FatalRegistry
|
||
|
endif
|
||
|
|
||
|
; set netrules information in the registry
|
||
|
|
||
|
set NewValueList = +
|
||
|
{{class, $(NoTitle), $(!REG_VT_SZ), $(NetRuleRASPPTPClass)},+
|
||
|
{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleRASPPTPType)},+
|
||
|
{use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleRASPPTPUse)}, +
|
||
|
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}, +
|
||
|
{Infname ,$(NoTitle),$(!REG_VT_SZ),$(InfName)}}
|
||
|
|
||
|
Shell $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
|
||
|
set RegistryErrorIndex = $($R0)
|
||
|
|
||
|
CloseRegKey $(SoftNetRuleKey)
|
||
|
|
||
|
Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
|
||
|
goto FatalRegistry
|
||
|
endif
|
||
|
|
||
|
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
|
||
|
$(ProductSoftwareName), +
|
||
|
$(ProductSoftwareName), +
|
||
|
$(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
|
||
|
$(ProductSoftwareImagePath), "kernelautostart", "NDIS", {}, "",+
|
||
|
$(RASPPTPMsgDLL)
|
||
|
Set OEM_ABANDON_SOFTWARE = TRUE
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
Set KeyProduct = $($R1)
|
||
|
Set SoftNetRulesKey = $($R2)
|
||
|
CloseRegKey $($R3)
|
||
|
CloseRegKey $($R4)
|
||
|
CloseRegKey $($R5)
|
||
|
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add software components"
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
CloseRegKey $(SoftNetRulesKey)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
Set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
|
||
|
{MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
|
||
|
{MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
|
||
|
{Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
|
||
|
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
|
||
|
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
|
||
|
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
|
||
|
Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add value list."
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
CloseRegKey $(SoftNetRulesKey)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
Set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
|
||
|
{use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
|
||
|
{bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
|
||
|
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
|
||
|
{bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(Bindable$(Option)Txt)}, +
|
||
|
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
|
||
|
Shell $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
CloseRegKey $(SoftNetRulesKey)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Resgitry error: add value list."
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
Shell "" AddServiceDependency $(ProductSoftwareName) $(PPTPProductSoftwareName)
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
|
||
|
$(PPTPProductSoftwareName), +
|
||
|
$(PPTPProductSoftwareName), +
|
||
|
$(PPTPProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
|
||
|
$(PPTPProductSoftwareImagePath), "kernelauto", "NDIS", {}, "",+
|
||
|
$(RASPPTPMsgDLL)
|
||
|
Set OEM_ABANDON_PPTP_SOFTWARE = TRUE
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
Set PPTPKeyProduct = $($R1)
|
||
|
Set PPTPSoftNetRulesKey = $($R2)
|
||
|
CloseRegKey $($R3)
|
||
|
CloseRegKey $($R4)
|
||
|
CloseRegKey $($R5)
|
||
|
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add sman software components"
|
||
|
CloseRegKey $(PPTPKeyProduct)
|
||
|
CloseRegKey $(PPTPSoftNetRulesKey)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
Set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
|
||
|
{MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMajorVersion)},+
|
||
|
{MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMinorVersion)},+
|
||
|
{Title,$(NoTitle),$(!REG_VT_SZ),$(PPTPProductSoftwareTitle)},+
|
||
|
{Description,$(NoTitle),$(!REG_VT_SZ),$(PPTPProductSoftwareDescription)},+
|
||
|
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$(PPTPProductSoftwareName)},+
|
||
|
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
|
||
|
Shell $(UtilityInf), AddValueList, $(PPTPKeyProduct), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add value list."
|
||
|
CloseRegKey $(PPTPKeyProduct)
|
||
|
CloseRegKey $(PPTPSoftNetRulesKey)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
EndIf
|
||
|
|
||
|
Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
|
||
|
IfInt $($R4) != -1
|
||
|
Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
|
||
|
EndIf
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Cannot add hardware component"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add hardware component"
|
||
|
CloseRegKey $($R1)
|
||
|
CloseRegKey $($R2)
|
||
|
CloseRegKey $($R3)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
Set KeyParameters = $($R3)
|
||
|
Set KeyAdapterRules = $($R2)
|
||
|
Set AdapterNumber = $($R4)
|
||
|
Set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
|
||
|
{Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(Option)Title)},+
|
||
|
{Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
|
||
|
{ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
|
||
|
{ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
|
||
|
{InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)},+
|
||
|
{Hidden,$(NoTitle),$(!REG_VT_DWORD),1}}
|
||
|
Shell $(UtilityInf), AddValueList, $($R1), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
CloseRegKey $($R1)
|
||
|
|
||
|
Set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
|
||
|
Set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
|
||
|
Set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardware$(Option)Type)},+
|
||
|
{bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
|
||
|
{class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardware$(Option)Class)}, +
|
||
|
{InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
|
||
|
Shell $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
EndWait
|
||
|
Debug-Output $(InfName)": Registry error: add value list."
|
||
|
CloseRegKey $(KeyParameters)
|
||
|
CloseRegKey $(KeyAdapterRules)
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
CloseRegKey $(KeyAdapterRules)
|
||
|
|
||
|
; Now, add the NetCard information to the software section.
|
||
|
; we use this information for deleting this netcard on removal of PPTP
|
||
|
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
|
||
|
IfStr $(KeyProduct) != $(KeyNull)
|
||
|
SetRegValue $(KeyProduct) {NetCard,$(NoTitle),$(!REG_VT_DWORD),$(AdapterNumber)}
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
EndIf
|
||
|
|
||
|
GoTo WriteParameters
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
WriteParameters = +
|
||
|
; Since no simple arithmetic is possible, a little convulated way to create
|
||
|
; the address list from the number of line devices. Also configure the
|
||
|
; NetServer IP Addresses
|
||
|
|
||
|
LoadLibrary "x" $(!STF_CWDDIR)raspptpc.dll RASPPTPDLGHANDLE
|
||
|
Debug-Output $(InfName)": Getting info from GetChassisConfiguration"
|
||
|
Debug-Output "!STF_UNATTENDED is "$(!STF_UNATTENDED)
|
||
|
Debug-Output "!STF_GUI_UNATTENDED is "$(!STF_GUI_UNATTENDED)
|
||
|
Debug-Output "!STF_UNATTENDED_SECTION is "$(!STF_UNATTENDED_SECTION)
|
||
|
|
||
|
; To support Unattended mode of installing pptp (i.e., no UI, but silent install
|
||
|
; unless setup encounters an error) use the following algorithm.
|
||
|
;
|
||
|
; ifstr(i) $(!STF_GUI_UNATTENDED) == YES
|
||
|
; then !STF_UNATTENDED contains the name of the unattended script file
|
||
|
; and !STF_UNATTENDED_SECTION contains the name of the section in the
|
||
|
; script file that we should be reading for pptp parameters.
|
||
|
; else
|
||
|
; this is an attended mode of install
|
||
|
; endif
|
||
|
|
||
|
LibraryProcedure Result, $(RASPPTPDLGHANDLE), GetChassisConfiguration $(!NTN_InstallMode) +
|
||
|
$(!STF_GUI_UNATTENDED) $(!STF_UNATTENDED) $(!STF_UNATTENDED_SECTION)
|
||
|
Debug-Output $(InfName)": Result value is :"$(Result)
|
||
|
Set NumberOfLineDevices = *($(Result), 1)
|
||
|
FreeLibrary $(RASPPTPDLGHANDLE)
|
||
|
ifstr(i) $(NumberOfLineDevices) == "EXITSETUP"
|
||
|
Read-Syms InvokeCancelDlg$(!STF_LANGUAGE)
|
||
|
Debug-Output $(InfName)": GetChassisConfiguration User selected ExitSetup"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", $(InvokeCancelMsg)
|
||
|
GoTo SetFailed
|
||
|
endif
|
||
|
Debug-Output $(InfName)": Number Of Line Devices are :"$(NumberOfLineDevices)
|
||
|
|
||
|
Shell "" CreateFullTapiAddrList $(AdapterNumber)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output "Cannot create the TAPI address list"
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
Set FullTapiAddrList = $($R0)
|
||
|
|
||
|
Set TapiAddressList = {}
|
||
|
|
||
|
ForListDo $(FullTapiAddrList)
|
||
|
Set CurListItem = $($)
|
||
|
Set CurListNumber = $(#)
|
||
|
|
||
|
IfInt $(CurListNumber) <= $(NumberOfLineDevices)
|
||
|
Set TapiAddressList = >($(TapiAddressList), $(CurListItem))
|
||
|
Endif
|
||
|
EndForListDo
|
||
|
|
||
|
Debug-Output $(InfName)": Modified Tapi Address List is :"$(TapiAddressList)
|
||
|
|
||
|
Set NewValueList = {+
|
||
|
{AddressList,$(NoTitle),$(!REG_VT_MULTI_SZ),$(TapiAddressList)},+
|
||
|
;{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
|
||
|
;{BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusType)},+
|
||
|
{DeviceName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
|
||
|
;{InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(InterruptNumber)},+
|
||
|
{LineType,$(NoTitle),$(!REG_VT_DWORD),$(LineType)},+
|
||
|
{MediaType,$(NoTitle),$(!REG_VT_SZ),$(TapiMediaType)},+
|
||
|
;{RamBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(RamBaseAddress)}+
|
||
|
}
|
||
|
Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
|
||
|
CloseRegKey $(KeyParameters)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
Debug-Output $(InfName)": Registry error: Add value list"
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
;
|
||
|
; Skip TAPI/RAS setup if already installed.
|
||
|
;
|
||
|
IfStr(i) $(!NTN_InstallMode) == configure
|
||
|
GoTo SuccessfulOption
|
||
|
EndIf
|
||
|
|
||
|
; Set PPTPTcpMaxDataRetransmissions to 9 in services\tcpip\parameters
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\TcpIp\Parameters" $(MAXIMUM_ALLOWED) TcpKey
|
||
|
IfStr(i) $(TcpKey) != ""
|
||
|
Debug-Output $(InfName)": setting tcpip\parameters\PPTPTcpMaxDataRetransmissions to 9"
|
||
|
SetRegValue $(TcpKey) {PPTPTcpMaxDataRetransmissions,$(NoTitle),$(!REG_VT_DWORD), 9}
|
||
|
CloseRegKey $(TcpKey)
|
||
|
Else
|
||
|
Debug-Output $(InfName)": Registry error: can't open services\tcpip key"
|
||
|
EndIf
|
||
|
|
||
|
;
|
||
|
; Create the SOFTWARE\Microsoft\TAPI DEVICES\RASPPTPM key
|
||
|
;
|
||
|
; This key name should be the same as the miniport driver name without the
|
||
|
; extension - RASPPTPM.SYS
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft" $(MAXIMUM_ALLOWED) BaseKey
|
||
|
shell "" HtCreateRegKey $(BaseKey) "TAPI DEVICES\RASPPTPM"
|
||
|
IfStr(i) $($R0) != NO_ERROR
|
||
|
Debug-Output $(InfName)": Error creating registry key!"
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
Set TapiDeviceKey = $($R1)
|
||
|
Set NewValueList = {+
|
||
|
{Address,$(NoTitle),$(!REG_VT_MULTI_SZ),$(TapiAddressList)},+
|
||
|
{"Media Type",$(NoTitle),$(!REG_VT_SZ),$(TapiMediaType)}}
|
||
|
Shell $(UtilityInf), AddValueList, $(TapiDeviceKey), $(NewValueList)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
Debug-Output $(InfName)": Registry error: Add value list"
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
CloseRegKey $(TapiDeviceKey)
|
||
|
CloseRegKey $(BaseKey)
|
||
|
|
||
|
; if TCP/IP is not installed, then shell to the TCP/IP setup INF file
|
||
|
; to install it only in the attended mode.
|
||
|
;
|
||
|
ifstr(i) $(!STF_INSTALL_MODE) == EXPRESS
|
||
|
GoTo InstallRas
|
||
|
Else
|
||
|
Shell "" InstallTCPIPIfNotInstalled $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output "Cannot install TCP/IP if not already installed"
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
ifstr(i) $($R0) != STATUS_SUCCESSFUL
|
||
|
Debug-Output "Error installing TCP/IP"
|
||
|
set Error = "Error installing TCP/IP"
|
||
|
goto FatalError
|
||
|
endif
|
||
|
|
||
|
;
|
||
|
Shell "" DebugGlobalFlags "After TCP/IP"
|
||
|
;
|
||
|
EndIf
|
||
|
|
||
|
InstallRas = +
|
||
|
|
||
|
; install or configure RAS only in attended mode of install
|
||
|
ifstr(i) $(!STF_INSTALL_MODE) == EXPRESS
|
||
|
GoTo SuccessfulOption
|
||
|
Else
|
||
|
;
|
||
|
; if RAS is not installed, then shell ras setup INF file to install RAS
|
||
|
; else invoke RAS to allow user to configure RAS for RASPPTP.
|
||
|
;
|
||
|
Read-Syms InvokeRasDlg$(!STF_LANGUAGE)
|
||
|
Shell "oemnsvra.inf" CheckRasInstalled
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), +
|
||
|
"STATUS", $(InvokeRasError)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo RASSetup
|
||
|
EndIf
|
||
|
Set RasInstalled = $($R0)
|
||
|
Debug-Output $(InfName)": Is RAS Installed? "$(RasInstalled)
|
||
|
;
|
||
|
; display a message to the user that RAS setup will now be invoked
|
||
|
;
|
||
|
; give the user a choice to say YES or NO to this query.
|
||
|
|
||
|
IfStr(i) $(RasInstalled) == FALSE
|
||
|
|
||
|
read-syms InvokeRasSetupDlg$(!STF_LANGUAGE)
|
||
|
ui start "InvokeRasSetup"
|
||
|
ifstr(i) $(DLGEVENT) == "YES"
|
||
|
goto RASSetup
|
||
|
else-ifstr(i) $(DLGEVENT) == "NO"
|
||
|
GoTo SuccessfulOption
|
||
|
endif
|
||
|
|
||
|
; Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
; $(InvokeRasSetupMsg)
|
||
|
; IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
; GoTo RASSetup
|
||
|
; EndIf
|
||
|
Else
|
||
|
read-syms InvokeRasConfigDlg$(!STF_LANGUAGE)
|
||
|
ui start "InvokeRasConfig"
|
||
|
ifstr(i) $(DLGEVENT) == "YES"
|
||
|
goto RASSetup
|
||
|
else-ifstr(i) $(DLGEVENT) == "NO"
|
||
|
GoTo SuccessfulOption
|
||
|
endif
|
||
|
|
||
|
; Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
; $(InvokeRasConfigMsg)
|
||
|
; IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
; GoTo RASSetup
|
||
|
; EndIf
|
||
|
EndIf
|
||
|
|
||
|
EndWait
|
||
|
GoTo RASSetup
|
||
|
Endif
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
RASSetup =+
|
||
|
|
||
|
; force the copy flags to YES to allow RAS setup to copy files
|
||
|
; even if in config mode.
|
||
|
Set AddCopy = YES
|
||
|
Set DoCopy = YES
|
||
|
Set DoConfig = YES
|
||
|
;
|
||
|
; change the global install mode flag to configure if RAS is already installed
|
||
|
;
|
||
|
IfStr(i) $(RasInstalled) == TRUE
|
||
|
Set SaveNTN_InstallMode = $(!NTN_InstallMode)
|
||
|
Set !NTN_InstallMode = configure
|
||
|
EndIf
|
||
|
|
||
|
; if we have already obtained the SrcDir use that instead of
|
||
|
; prompting the user again
|
||
|
Set PREV_SRCDIR = $(!STF_SRCDIR_OVERRIDE)
|
||
|
Set !STF_SRCDIR_OVERRIDE = $(SrcDir)
|
||
|
|
||
|
;
|
||
|
; now invoke RAS setup to do the right thing
|
||
|
;
|
||
|
|
||
|
Shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig)
|
||
|
|
||
|
set !STF_SRCDIR_OVERRIDE = $(PREV_SRCDIR)
|
||
|
;
|
||
|
; restore the global instal mode flag if it was changed
|
||
|
;
|
||
|
IfStr(i) $(RasInstalled) == TRUE
|
||
|
Set !NTN_InstallMode = $(SaveNTN_InstallMode)
|
||
|
EndIf
|
||
|
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeRasError)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo SuccessfulOption
|
||
|
EndIf
|
||
|
|
||
|
EndWait
|
||
|
GoTo SuccessfulOption
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
BindingAdapter =+
|
||
|
Set Error = "Binding: Sorry, not yet implemented."
|
||
|
GoTo FatalError
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
RemoveAdapter = +
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
|
||
|
IfStr $(KeyProduct) != $(KeyNull)
|
||
|
GetRegValue $(KeyProduct),"NetCard", NetCardInfo
|
||
|
Set NetCard = *($(NetCardInfo), 4)
|
||
|
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
|
||
|
$(ProductSoftwareName), $(NetworkCardKeyName)"\"$(NetCard)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
|
||
|
$(PPTPProductSoftwareName)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
; Remove the place holder RASPPTP transport entry
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyBase) +
|
||
|
$(MAXIMUM_ALLOWED) ProductKey
|
||
|
Ifstr $(ProductKey) == $(KeyNull)
|
||
|
Debug-Output "OEMNXPPP.INF: could not open Software product key"
|
||
|
else
|
||
|
DeleteRegTree $(ProductKey) $(ProductRASPPTPName)
|
||
|
CloseRegKey $(ProductKey)
|
||
|
endif
|
||
|
|
||
|
; remove the TAPI DEVICES port information
|
||
|
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\TAPI DEVICES" $(MAXIMUM_ALLOWED) BaseKey
|
||
|
IfStr $(BaseKey) != $(KeyNull)
|
||
|
DeleteRegTree $(BaseKey) $(ProductSoftwareName)
|
||
|
EndIf
|
||
|
|
||
|
; remove PPTPTcpMaxDataRetransmissions value from services\tcpip\parameters which
|
||
|
; was added when PPTP was installed.
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\TcpIp\Parameters" $(MAXIMUM_ALLOWED) TcpKey
|
||
|
IfStr(i) $(TcpKey) != ""
|
||
|
Debug-Output $(InfName)": removing tcpip\parameters\PPTPTcpMaxDataRetransmissions value"
|
||
|
DeleteRegValue $(TcpKey) "PPTPTcpMaxDataRetransmissions"
|
||
|
CloseRegKey $(TcpKey)
|
||
|
Else
|
||
|
Debug-Output $(InfName)": Registry error: can't open services\tcpip key"
|
||
|
EndIf
|
||
|
|
||
|
;
|
||
|
; if RAS is installed, then shell ras setup INF file to allow user
|
||
|
; to delete PPTP ports
|
||
|
;
|
||
|
Read-Syms InvokeRasDlg$(!STF_LANGUAGE)
|
||
|
Shell "oemnsvra.inf" CheckRasInstalled
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), +
|
||
|
"STATUS", $(InvokeRasError)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo RASSetup2
|
||
|
EndIf
|
||
|
Set RasInstalled = $($R0)
|
||
|
Debug-Output $(InfName)": Is RAS Installed? "$(RasInstalled)
|
||
|
;
|
||
|
; display a message to the user that RAS setup will now be invoked
|
||
|
;
|
||
|
IfStr(i) $(RasInstalled) == FALSE
|
||
|
goto end
|
||
|
Else
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeRasConfigMsg2)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo RASSetup2
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
EndWait
|
||
|
GoTo RASSetup2
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
RASSetup2 =+
|
||
|
|
||
|
Set AddCopy = NO
|
||
|
Set DoCopy = NO
|
||
|
Set DoConfig = NO
|
||
|
;
|
||
|
; change the global install mode flag to configure if RAS is already installed
|
||
|
;
|
||
|
Set SaveNTN_InstallMode = $(!NTN_InstallMode)
|
||
|
Set !NTN_InstallMode = configure
|
||
|
;
|
||
|
; now invoke RAS setup to do the right thing
|
||
|
;
|
||
|
|
||
|
Shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig)
|
||
|
;
|
||
|
; restore the global instal mode flag if it was changed
|
||
|
;
|
||
|
Set !NTN_InstallMode = $(SaveNTN_InstallMode)
|
||
|
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeRasError)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo end
|
||
|
EndIf
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
UpgradeSoftware = +
|
||
|
Debug-Output $(InfName)": comes into 1st part of upgrade"
|
||
|
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
|
||
|
IfStr $(KeyProduct) != $(KeyNull)
|
||
|
GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
|
||
|
Set Version = *($(VersionInfo), 4)
|
||
|
Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set !UG_Filename = $($R0)
|
||
|
IfStr(i) $(!UG_Filename) != ""
|
||
|
Debug-Output $(InfName)": starts to install"
|
||
|
install "Install-Update"
|
||
|
IfStr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
|
||
|
GoTo FatalError
|
||
|
EndIf
|
||
|
EndIf
|
||
|
SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)}
|
||
|
SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)}
|
||
|
|
||
|
IfInt $(Version) != $(ProductVersion)
|
||
|
EndIf
|
||
|
CloseRegKey $(KeyProduct)
|
||
|
Else
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
|
||
|
;RASPPTPE_SPECIFIC_START
|
||
|
Debug-Output $(InfName)": comes into PPTPE part of upgrade"
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(PPTPProductKeyName) $(MAXIMUM_ALLOWED) PPTPKeyProduct
|
||
|
IfStr $(PPTPKeyProduct) != $(KeyNull)
|
||
|
SetRegValue $(PPTPKeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMajorVersion)}
|
||
|
SetRegValue $(PPTPKeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMinorVersion)}
|
||
|
CloseRegKey $(PPTPKeyProduct)
|
||
|
Else
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
;RASPPTPE_SPECIFIC_END
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
;
|
||
|
; This is the location that the NCPA cares about
|
||
|
;
|
||
|
Debug-Output $(InfName)": comes into PPTP part of upgrade"
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(ProductRASPPTPKeyName) $(MAXIMUM_ALLOWED) PPTPKeyProduct
|
||
|
IfStr $(PPTPKeyProduct) != $(KeyNull)
|
||
|
SetRegValue $(PPTPKeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMajorVersion)}
|
||
|
SetRegValue $(PPTPKeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(PPTPProductMinorVersion)}
|
||
|
SetRegValue $(PPTPKeyProduct) {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductRASPPTPDescription)}
|
||
|
SetRegValue $(PPTPKeyProduct) {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}
|
||
|
CloseRegKey $(PPTPKeyProduct)
|
||
|
Else
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
;RASPPTPE_SPECIFIC_END
|
||
|
|
||
|
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
SuccessfulOption = +
|
||
|
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
Abandon = +
|
||
|
ForListDo $(OEM_ABANDON_OPTIONS)
|
||
|
Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
|
||
|
$(ProductSoftwareName), $($)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
EndForListDo
|
||
|
IfStr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
|
||
|
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
|
||
|
$(ProductSoftwareName), FALSE
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
IfStr(i) $(OEM_ABANDON_PPTP_SOFTWARE) == TRUE
|
||
|
Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
|
||
|
$(PPTPProductSoftwareName), FALSE
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error"
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set RegistryErrorIndex = $($R0)
|
||
|
IfStr(i) $(RegistryErrorIndex) != NO_ERROR
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
EndIf
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
WarningMsg = +
|
||
|
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
IfStr(i) $($R1) == "OK"
|
||
|
GoTo $(to)
|
||
|
Else-IfStr(i) $($R1) == "CANCEL"
|
||
|
GoTo $(from)
|
||
|
EndIf
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
NonFatalInfo = +
|
||
|
Set Severity = STATUS
|
||
|
Set CommonStatus = STATUS_USERCANCEL
|
||
|
IfStr(i) $(Error) == ""
|
||
|
Set Severity = NONFATAL
|
||
|
Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
EndIf
|
||
|
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
IfStr(i) $($R1) == "OK"
|
||
|
GoTo $(from)
|
||
|
EndIf
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
FatalRegistry = +
|
||
|
Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
GoTo FatalError
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
FatalDetect = +
|
||
|
Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": ShellCode error: cannot get an error string."
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
GoTo FatalError
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
FatalError = +
|
||
|
IfStr(i) $(Error) == ""
|
||
|
Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
Set Error = $($R0)
|
||
|
EndIf
|
||
|
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
GoTo SetFailed
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
ShellCodeError = +
|
||
|
Set DlgType = "MessageBox"
|
||
|
Set STF_MB_TITLE = $(ShellCodeErrorTitle)
|
||
|
Set STF_MB_TEXT = $(ShellCodeErrorText)
|
||
|
Set STF_MB_TYPE = 1
|
||
|
Set STF_MB_ICON = 3
|
||
|
Set STF_MB_DEF = 1
|
||
|
UI Start "Error Message"
|
||
|
GoTo SetFailed
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
SetFailed = +
|
||
|
Set CommonStatus = STATUS_FAILED
|
||
|
IfStr(i) $(OEM_ABANDON_ON) == TRUE
|
||
|
Set OEM_ABANDON_ON = FALSE
|
||
|
GoTo Abandon
|
||
|
EndIf
|
||
|
GoTo end
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
end = +
|
||
|
Return $(CommonStatus)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[HtCreateRegKey]
|
||
|
Debug-Output $(InfName)": Entering [HtCreateRegKey]"
|
||
|
Set ECR_Result = NO_ERROR
|
||
|
Set ECR_BaseKeyHandle = $($0)
|
||
|
Set ECR_NewPath = $($1)
|
||
|
Set KeyNull = ""
|
||
|
Set MAXIMUM_ALLOWED = 33554432
|
||
|
|
||
|
Debug-Output $(InfName)": HtCreateRegKey - ECR_BaseKeyHandle = "$(ECR_BaseKeyHandle)
|
||
|
Debug-Output $(InfName)": ECR_NewPath = "$(ECR_NewPath)
|
||
|
Debug-Output $(InfName)": MAXIMUM_ALLOWED = "$(MAXIMUM_ALLOWED)
|
||
|
Debug-Output $(InfName)": KeyNull = "$(KeyNull)
|
||
|
|
||
|
OpenRegKey $(ECR_BaseKeyHandle) "" $(ECR_NewPath) $(MAXIMUM_ALLOWED) +
|
||
|
ECR_BaseKey
|
||
|
Debug-Output $(InfName)": ECR_BaseKey = "$(ECR_BaseKey)
|
||
|
Debug-Output $(InfName)": OpenRegKey returned "$($R0)
|
||
|
IfStr $(ECR_BaseKey) == $(KeyNull)
|
||
|
Debug-Output $(InfName)": ECR_BaseKey == KeyNull"
|
||
|
Else
|
||
|
Debug-Output $(InfName)": ECR_BaseKey != KeyNull"
|
||
|
Set ECR_KeyHandle = $(ECR_BaseKey)
|
||
|
GoTo ECR_Return
|
||
|
EndIf
|
||
|
|
||
|
Set ECR_TmpPath = ""
|
||
|
Split-String $(ECR_NewPath) "\" ECR_PList
|
||
|
Debug-Output $(InfName)": ECR_PList = "$(ECR_PList)
|
||
|
ForListDo $(ECR_PList)
|
||
|
IfStr(i) $($) != "\"
|
||
|
IfInt $(#) == 1
|
||
|
Set ECR_TmpPath = $($)
|
||
|
Else
|
||
|
Set ECR_TmpPath = $(ECR_TmpPath)"\"$($)
|
||
|
EndIf
|
||
|
Debug-Output $(InfName)": Determining if "$(ECR_TmpPath)" exists"
|
||
|
OpenRegKey $(ECR_BaseKeyHandle) "" $(ECR_TmpPath) $(MAXIMUM_ALLOWED) ECR_BaseKey
|
||
|
IfStr $(ECR_BaseKey) == $(KeyNull)
|
||
|
Debug-Output $(InfName)": Creating "$(ECR_TmpPath)
|
||
|
CreateRegKey $(ECR_BaseKeyHandle) {$(ECR_TmpPath),0,GenericClass} "" $(MAXIMUM_ALLOWED) "" ECR_KeyHandle
|
||
|
IfStr(i) $(ECR_KeyHandle) == $(KeyNull)
|
||
|
Set ECR_Result = $($R0)
|
||
|
GoTo ECR_Return
|
||
|
EndIf
|
||
|
EndIf
|
||
|
EndIf
|
||
|
EndForListDo
|
||
|
ECR_Return = +
|
||
|
Return $(ECR_Result) $(ECR_KeyHandle)
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[InstallTCPIPIfNotInstalled]
|
||
|
Debug-Output $(InfName)"InstallTCPIPIfNotInstalled entry "
|
||
|
Debug-Output $(InfName)"!NTN_ServiceBase is "$(!NTN_ServiceBase)
|
||
|
|
||
|
set SrcDir = $($0)
|
||
|
set AddCopy = $($1)
|
||
|
set DoCopy = $($2)
|
||
|
set DoConfig = $($3)
|
||
|
|
||
|
Read-Syms InvokeTCPIPDlg$(!STF_LANGUAGE)
|
||
|
|
||
|
set TcpIpKeyName = $(!NTN_ServiceBase)"\TcpIp"
|
||
|
Set KeyNull = ""
|
||
|
Set status = STATUS_FAILED
|
||
|
Set TcpIpInstalled = FALSE
|
||
|
Set MAXIMUM_ALLOWED = 33554432
|
||
|
set Protocol = "TCPIP"
|
||
|
set KeyService = $(KeyNull)
|
||
|
set DeleteFlag = 0
|
||
|
set DeleteFlagInfo = {}
|
||
|
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(TcpIpKeyName) $(MAXIMUM_ALLOWED) KeyService
|
||
|
Ifstr(i) $(KeyService) != $(KeyNull)
|
||
|
GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo
|
||
|
set DeleteFlag = *($(DeleteFlagInfo), 4)
|
||
|
ifint $(DeleteFlag) != 1
|
||
|
set TcpIpInstalled = TRUE
|
||
|
endif
|
||
|
CloseRegKey $(KeyService)
|
||
|
endif
|
||
|
|
||
|
Debug-Output $(InfName)"TCP/IP Installed? "$(TcpIpInstalled)
|
||
|
|
||
|
Ifstr(i) $(TcpIpInstalled) == "FALSE"
|
||
|
Debug-Output $(InfName)"Installing TCP/IP"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeTCPSetupMsg)
|
||
|
|
||
|
set InvokedByRas = FALSE
|
||
|
|
||
|
; set the !STF_SRCDIR_OVERRIDE to SrcDir so that TCP setup can
|
||
|
; use this information rather than ask the user again for
|
||
|
; source directory.
|
||
|
Debug-Output $(InfName)": resetting stf_srcdir_override flag"
|
||
|
Set PREV_SRCDIR = $(!STF_SRCDIR_OVERRIDE)
|
||
|
Set !STF_SRCDIR_OVERRIDE = $(SrcDir)
|
||
|
|
||
|
Shell "oemnxptc.inf" InstallOption $(!STF_LANGUAGE) "TC" $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) $(InvokedByRas)
|
||
|
|
||
|
set !STF_SRCDIR_OVERRIDE = $(PREV_SRCDIR)
|
||
|
Ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)"SHELL ERROR! during TCP/IP installation"
|
||
|
Goto InstallTCPEscape
|
||
|
Endif
|
||
|
Set status = $($R0)
|
||
|
Ifstr(i) $(status) != STATUS_SUCCESSFUL
|
||
|
Ifstr(i) $(status) != STATUS_USERCANCEL
|
||
|
Debug-Output $(InfName)"oemnxptc.inf returned "$(status)
|
||
|
Goto InstallTCPEscape
|
||
|
Endif
|
||
|
Endif
|
||
|
Else
|
||
|
set status = STATUS_SUCCESSFUL
|
||
|
Endif
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
InstallTCPEscape = +
|
||
|
set RetStatus = $(status)
|
||
|
return $(RetStatus)
|
||
|
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[AddUSRMediaGroupToServiceGroupOrder]
|
||
|
Debug-Output $(InfName)": Entering [AddUSRMediaGroupToServiceGroupOrder]"
|
||
|
Set MAXIMUM_ALLOWED = 33554432
|
||
|
Set KeyNull = ""
|
||
|
|
||
|
Read-Syms SMANFileConstants
|
||
|
|
||
|
set GroupOrderName = "SYSTEM\CurrentControlSet\Control\ServiceGroupOrder"
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(GroupOrderName) $(MAXIMUM_ALLOWED) KeyGroup
|
||
|
set OldList = {}
|
||
|
Ifstr(i) $(KeyGroup) != $(KeyNull)
|
||
|
GetRegValue $(KeyGroup) "List" TmpList
|
||
|
ifint $(RegLastError) == 0
|
||
|
ForListDo *($(TmpList), 4)
|
||
|
set OldList = >($(OldList), $($))
|
||
|
EndForListDo
|
||
|
endif
|
||
|
Debug-Output "AddUSRMediaGroupToServiceGroupOrder current list "$(OldList)
|
||
|
Ifcontains(i) $(PPTPGroupName) not-in $(OldList)
|
||
|
set NewGroupList = {}
|
||
|
ForListDo $(OldList)
|
||
|
ifstr(i) $($) == "NDIS"
|
||
|
set NewGroupList = >($(NewGroupList), $(PPTPGroupName))
|
||
|
endif
|
||
|
set NewGroupList = >($(NewGroupList), $($))
|
||
|
EndForListDo
|
||
|
Debug-Output "AddUSRMediaGroupToServiceGroupOrder new list "$(NewGroupList)
|
||
|
SetRegValue $(KeyGroup) {List, 0,$(!REG_VT_MULTI_SZ),$(NewGroupList)}
|
||
|
endif
|
||
|
CloseRegKey $(KeyGroup)
|
||
|
else
|
||
|
Debug-Output "AddUSRMediaGroupToServiceGroupOrder error opening ServiceGroupOrder key."
|
||
|
Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL", "ServiceGroupOrder Update Failed"
|
||
|
endif
|
||
|
return
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[UpdateAddressList]
|
||
|
Debug-Output $(InfName)": Entering [UpdateAddressList]"
|
||
|
Set NumberLineDevices = $($0)
|
||
|
Set AdapNum = $($1)
|
||
|
Set DriverName = $($2)
|
||
|
Set MediaType = $($3)
|
||
|
Set MAXIMUM_ALLOWED = 33554432
|
||
|
Set KeyNull = ""
|
||
|
|
||
|
Debug-Output $(InfName)": number of line devices received value "$(NumberLineDevices)
|
||
|
Debug-Output $(InfName)": adapter number received value "$(AdapNum)
|
||
|
Debug-Output $(InfName)": driver name received value "$(DriverName)
|
||
|
|
||
|
; create the new address list
|
||
|
Shell "" CreateFullTapiAddrList $(AdapNum)
|
||
|
ifint $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output "Cannot create the new TAPI address list"
|
||
|
goto ShellCodeError
|
||
|
endif
|
||
|
Set NewTapiAddrList = $($R0)
|
||
|
|
||
|
Set TapiAddressList = {}
|
||
|
|
||
|
ForListDo $(NewTapiAddrList)
|
||
|
Set CurListItem = $($)
|
||
|
Set CurListNumber = $(#)
|
||
|
|
||
|
IfInt $(CurListNumber) <= $(NumberLineDevices)
|
||
|
Set TapiAddressList = >($(TapiAddressList), $(CurListItem))
|
||
|
Endif
|
||
|
EndForListDo
|
||
|
|
||
|
Debug-Output $(InfName)": Modified new Tapi Address List is :"$(TapiAddressList)
|
||
|
|
||
|
;
|
||
|
; delete the old value under RASPPTP driver and create new one
|
||
|
;
|
||
|
set RASPPTPAddress = "SYSTEM\CurrentControlSet\Services\"$(DriverName)$(AdapNum)"\Parameters"
|
||
|
Debug-Output $(InfName)": RASPPTPAddress is "$(RASPPTPAddress)
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(RASPPTPAddress) $(MAXIMUM_ALLOWED) KeyParam
|
||
|
Debug-Output $(InfName)": keyparam value is "$(KeyParam)
|
||
|
Ifstr(i) $(KeyParam) != $(KeyNull)
|
||
|
Debug-Output $(InfName)": entering to set usrwan2 value"
|
||
|
DeleteRegValue $(KeyParam) "AddressList"
|
||
|
SetRegValue $(KeyParam) {AddressList, 0,$(!REG_VT_MULTI_SZ),$(TapiAddressList)}
|
||
|
CloseRegKey $(KeyParam)
|
||
|
EndIf
|
||
|
|
||
|
;
|
||
|
; Create the SOFRWARE\Microsoft\TAPI DEVICES\RASPPTPM key or open it if exists
|
||
|
; and set the new address value
|
||
|
; This key name should be the same as the miniport driver name without the
|
||
|
; extension - RASPPTPM.SYS
|
||
|
;
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft" $(MAXIMUM_ALLOWED) BaseKey
|
||
|
Shell "" HtCreateRegKey $(BaseKey) "TAPI DEVICES\RASPPTPM"
|
||
|
IfStr(i) $($R0) != NO_ERROR
|
||
|
Debug-Output $(InfName)": Error creating registry key!"
|
||
|
GoTo FatalRegistry
|
||
|
EndIf
|
||
|
Set TapiDeviceKey = $($R1)
|
||
|
DeleteRegValue $(TapiDeviceKey) "Address"
|
||
|
DeleteRegValue $(TapiDeviceKey) "Media Type"
|
||
|
SetRegValue $(TapiDeviceKey) {Address, 0,$(!REG_VT_MULTI_SZ),$(TapiAddressList)}
|
||
|
SetRegValue $(TapiDeviceKey) {"Media Type", 0,$(!REG_VT_SZ),$(MediaType)}
|
||
|
CloseRegKey $(TapiDeviceKey)
|
||
|
CloseRegKey $(BaseKey)
|
||
|
|
||
|
; shell to RAS and invoke it
|
||
|
Read-Syms InvokeRasDlg$(!STF_LANGUAGE)
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeRasConfigMsg)
|
||
|
|
||
|
Set AddCopy = YES
|
||
|
Set DoCopy = YES
|
||
|
Set DoConfig = YES
|
||
|
;
|
||
|
; change the global install mode flag to configure RAS since already installed
|
||
|
;
|
||
|
Set SaveNTN_InstallMode = $(!NTN_InstallMode)
|
||
|
Set !NTN_InstallMode = configure
|
||
|
|
||
|
; now invoke RAS
|
||
|
Shell "oemnsvra.inf" InstallOption $(!STF_LANGUAGE) "RAS" "" $(AddCopy) $(DoCopy) $(DoConfig)
|
||
|
;
|
||
|
; restore the global instal mode flag
|
||
|
;
|
||
|
Set !NTN_InstallMode = $(SaveNTN_InstallMode)
|
||
|
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
Debug-Output $(InfName)": Error Shelling the RAS INF file oemnsvra.inf"
|
||
|
Shell "subroutn.inf" SetupMessage, $(!STF_LANGUAGE), "STATUS", +
|
||
|
$(InvokeRasError)
|
||
|
IfInt $($ShellCode) != $(!SHELL_CODE_OK)
|
||
|
GoTo ShellCodeError
|
||
|
EndIf
|
||
|
EndIf
|
||
|
|
||
|
EndWait
|
||
|
return
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[CreateFullTapiAddrList]
|
||
|
Debug-Output $(InfName)": Entering [TapiAddrList]"
|
||
|
Set AdapterNum = $($0)
|
||
|
|
||
|
Set FullTapiAddrList = {$(AdapterNum)"-1-0", $(AdapterNum)"-2-0", $(AdapterNum)"-3-0", +
|
||
|
$(AdapterNum)"-4-0", $(AdapterNum)"-5-0", $(AdapterNum)"-6-0", +
|
||
|
$(AdapterNum)"-7-0", $(AdapterNum)"-8-0", $(AdapterNum)"-9-0", +
|
||
|
$(AdapterNum)"-10-0", $(AdapterNum)"-11-0", $(AdapterNum)"-12-0", +
|
||
|
$(AdapterNum)"-13-0", $(AdapterNum)"-14-0", $(AdapterNum)"-15-0", +
|
||
|
$(AdapterNum)"-16-0", $(AdapterNum)"-17-0", $(AdapterNum)"-18-0", +
|
||
|
$(AdapterNum)"-19-0", $(AdapterNum)"-20-0", $(AdapterNum)"-21-0", +
|
||
|
$(AdapterNum)"-22-0", $(AdapterNum)"-23-0", $(AdapterNum)"-24-0", +
|
||
|
$(AdapterNum)"-25-0", $(AdapterNum)"-26-0", $(AdapterNum)"-27-0", +
|
||
|
$(AdapterNum)"-28-0", $(AdapterNum)"-29-0", $(AdapterNum)"-30-0", +
|
||
|
$(AdapterNum)"-31-0", $(AdapterNum)"-32-0", $(AdapterNum)"-33-0", +
|
||
|
$(AdapterNum)"-34-0", $(AdapterNum)"-35-0", $(AdapterNum)"-36-0", +
|
||
|
$(AdapterNum)"-37-0", $(AdapterNum)"-38-0", $(AdapterNum)"-39-0", +
|
||
|
$(AdapterNum)"-40-0", $(AdapterNum)"-41-0", $(AdapterNum)"-42-0", +
|
||
|
$(AdapterNum)"-43-0", $(AdapterNum)"-44-0", $(AdapterNum)"-45-0", +
|
||
|
$(AdapterNum)"-46-0", $(AdapterNum)"-47-0", $(AdapterNum)"-48-0", +
|
||
|
$(AdapterNum)"-49-0", $(AdapterNum)"-50-0", $(AdapterNum)"-51-0", +
|
||
|
$(AdapterNum)"-52-0", $(AdapterNum)"-53-0", $(AdapterNum)"-54-0", +
|
||
|
$(AdapterNum)"-55-0", $(AdapterNum)"-56-0", $(AdapterNum)"-57-0", +
|
||
|
$(AdapterNum)"-58-0", $(AdapterNum)"-59-0", $(AdapterNum)"-60-0", +
|
||
|
$(AdapterNum)"-61-0", $(AdapterNum)"-62-0", $(AdapterNum)"-63-0", +
|
||
|
$(AdapterNum)"-64-0", $(AdapterNum)"-65-0", $(AdapterNum)"-66-0", +
|
||
|
$(AdapterNum)"-67-0", $(AdapterNum)"-68-0", $(AdapterNum)"-69-0", +
|
||
|
$(AdapterNum)"-70-0", $(AdapterNum)"-71-0", $(AdapterNum)"-72-0", +
|
||
|
$(AdapterNum)"-73-0", $(AdapterNum)"-74-0", $(AdapterNum)"-75-0", +
|
||
|
$(AdapterNum)"-76-0", $(AdapterNum)"-77-0", $(AdapterNum)"-78-0", +
|
||
|
$(AdapterNum)"-79-0", $(AdapterNum)"-80-0", $(AdapterNum)"-81-0", +
|
||
|
$(AdapterNum)"-82-0", $(AdapterNum)"-83-0", $(AdapterNum)"-84-0", +
|
||
|
$(AdapterNum)"-85-0", $(AdapterNum)"-86-0", $(AdapterNum)"-87-0", +
|
||
|
$(AdapterNum)"-88-0", $(AdapterNum)"-89-0", $(AdapterNum)"-90-0", +
|
||
|
$(AdapterNum)"-91-0", $(AdapterNum)"-92-0", $(AdapterNum)"-93-0", +
|
||
|
$(AdapterNum)"-94-0", $(AdapterNum)"-95-0", $(AdapterNum)"-96-0", +
|
||
|
$(AdapterNum)"-97-0", $(AdapterNum)"-98-0", $(AdapterNum)"-99-0", +
|
||
|
$(AdapterNum)"-100-0", $(AdapterNum)"-101-0", $(AdapterNum)"-102-0", +
|
||
|
$(AdapterNum)"-103-0", $(AdapterNum)"-104-0", $(AdapterNum)"-105-0", +
|
||
|
$(AdapterNum)"-106-0", $(AdapterNum)"-107-0", $(AdapterNum)"-108-0", +
|
||
|
$(AdapterNum)"-109-0", $(AdapterNum)"-110-0", $(AdapterNum)"-111-0", +
|
||
|
$(AdapterNum)"-112-0", $(AdapterNum)"-113-0", $(AdapterNum)"-114-0", $(AdapterNum)"-115-0", +
|
||
|
$(AdapterNum)"-116-0", $(AdapterNum)"-117-0", $(AdapterNum)"-118-0", +
|
||
|
$(AdapterNum)"-119-0", $(AdapterNum)"-120-0", $(AdapterNum)"-121-0", +
|
||
|
$(AdapterNum)"-122-0", $(AdapterNum)"-123-0", $(AdapterNum)"-124-0", +
|
||
|
$(AdapterNum)"-125-0", $(AdapterNum)"-126-0", $(AdapterNum)"-127-0", +
|
||
|
$(AdapterNum)"-128-0", $(AdapterNum)"-129-0", $(AdapterNum)"-130-0", +
|
||
|
$(AdapterNum)"-131-0", $(AdapterNum)"-132-0", $(AdapterNum)"-133-0", +
|
||
|
$(AdapterNum)"-134-0", $(AdapterNum)"-135-0", $(AdapterNum)"-136-0", +
|
||
|
$(AdapterNum)"-137-0", $(AdapterNum)"-138-0", $(AdapterNum)"-139-0", +
|
||
|
$(AdapterNum)"-140-0", $(AdapterNum)"-141-0", $(AdapterNum)"-142-0", +
|
||
|
$(AdapterNum)"-143-0", $(AdapterNum)"-144-0", $(AdapterNum)"-145-0", +
|
||
|
$(AdapterNum)"-146-0", $(AdapterNum)"-147-0", $(AdapterNum)"-148-0", +
|
||
|
$(AdapterNum)"-149-0", $(AdapterNum)"-150-0", $(AdapterNum)"-151-0", +
|
||
|
$(AdapterNum)"-152-0", $(AdapterNum)"-153-0", $(AdapterNum)"-154-0", +
|
||
|
$(AdapterNum)"-155-0", $(AdapterNum)"-156-0", $(AdapterNum)"-157-0", +
|
||
|
$(AdapterNum)"-158-0", $(AdapterNum)"-159-0", $(AdapterNum)"-160-0", +
|
||
|
$(AdapterNum)"-161-0", $(AdapterNum)"-162-0", $(AdapterNum)"-163-0", +
|
||
|
$(AdapterNum)"-164-0", $(AdapterNum)"-165-0", $(AdapterNum)"-166-0", +
|
||
|
$(AdapterNum)"-167-0", $(AdapterNum)"-168-0", $(AdapterNum)"-169-0", +
|
||
|
$(AdapterNum)"-170-0", $(AdapterNum)"-171-0", $(AdapterNum)"-172-0", +
|
||
|
$(AdapterNum)"-173-0", $(AdapterNum)"-174-0", $(AdapterNum)"-175-0", +
|
||
|
$(AdapterNum)"-176-0", $(AdapterNum)"-177-0", $(AdapterNum)"-178-0", +
|
||
|
$(AdapterNum)"-179-0", $(AdapterNum)"-180-0", $(AdapterNum)"-181-0", +
|
||
|
$(AdapterNum)"-182-0", $(AdapterNum)"-183-0", $(AdapterNum)"-184-0", +
|
||
|
$(AdapterNum)"-185-0", $(AdapterNum)"-186-0", $(AdapterNum)"-187-0", +
|
||
|
$(AdapterNum)"-188-0", $(AdapterNum)"-189-0", $(AdapterNum)"-190-0", +
|
||
|
$(AdapterNum)"-191-0", $(AdapterNum)"-192-0", $(AdapterNum)"-193-0", +
|
||
|
$(AdapterNum)"-194-0", $(AdapterNum)"-195-0", $(AdapterNum)"-196-0", +
|
||
|
$(AdapterNum)"-197-0", $(AdapterNum)"-198-0", $(AdapterNum)"-199-0", +
|
||
|
$(AdapterNum)"-200-0", $(AdapterNum)"-201-0", $(AdapterNum)"-202-0", +
|
||
|
$(AdapterNum)"-203-0", $(AdapterNum)"-204-0", $(AdapterNum)"-205-0", +
|
||
|
$(AdapterNum)"-206-0", $(AdapterNum)"-207-0", $(AdapterNum)"-208-0", +
|
||
|
$(AdapterNum)"-209-0", $(AdapterNum)"-210-0", $(AdapterNum)"-211-0", +
|
||
|
$(AdapterNum)"-212-0", $(AdapterNum)"-213-0", $(AdapterNum)"-214-0", $(AdapterNum)"-215-0", +
|
||
|
$(AdapterNum)"-216-0", $(AdapterNum)"-217-0", $(AdapterNum)"-218-0", +
|
||
|
$(AdapterNum)"-219-0", $(AdapterNum)"-220-0", $(AdapterNum)"-221-0", +
|
||
|
$(AdapterNum)"-222-0", $(AdapterNum)"-223-0", $(AdapterNum)"-224-0", +
|
||
|
$(AdapterNum)"-225-0", $(AdapterNum)"-226-0", $(AdapterNum)"-227-0", +
|
||
|
$(AdapterNum)"-228-0", $(AdapterNum)"-229-0", $(AdapterNum)"-230-0", +
|
||
|
$(AdapterNum)"-231-0", $(AdapterNum)"-232-0", $(AdapterNum)"-233-0", +
|
||
|
$(AdapterNum)"-234-0", $(AdapterNum)"-235-0", $(AdapterNum)"-236-0", +
|
||
|
$(AdapterNum)"-237-0", $(AdapterNum)"-238-0", $(AdapterNum)"-239-0", +
|
||
|
$(AdapterNum)"-240-0", $(AdapterNum)"-241-0", $(AdapterNum)"-242-0", +
|
||
|
$(AdapterNum)"-243-0", $(AdapterNum)"-244-0", $(AdapterNum)"-245-0", +
|
||
|
$(AdapterNum)"-246-0", $(AdapterNum)"-247-0", $(AdapterNum)"-248-0", +
|
||
|
$(AdapterNum)"-249-0", $(AdapterNum)"-250-0", $(AdapterNum)"-251-0", +
|
||
|
$(AdapterNum)"-252-0", $(AdapterNum)"-253-0", $(AdapterNum)"-254-0", +
|
||
|
$(AdapterNum)"-255-0", $(AdapterNum)"-256-0"}
|
||
|
|
||
|
return $(FullTapiAddrList)
|
||
|
|
||
|
[AddServiceDependency]
|
||
|
; This routine adds the service dependency
|
||
|
; Input: $($0) is the dependent service
|
||
|
; $($1) is the service $($0) depends on
|
||
|
|
||
|
Debug-Output "AddServiceDependency: entry"
|
||
|
|
||
|
set MAXIMUM_ALLOWED = 33554432
|
||
|
set SERVICE_NO_CHANGE = 4294967295
|
||
|
|
||
|
set Status = STATUS_FAILED
|
||
|
Set KeyNull = ""
|
||
|
set DependentService = $(!NTN_ServiceBase)\$($0)
|
||
|
set DependentName = $($0)
|
||
|
set DependOn = $($1)
|
||
|
|
||
|
set ServiceKey = $(KeyNull)
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(DependentService)"\Linkage" $(MAXIMUM_ALLOWED) ServiceKey
|
||
|
ifstr(i) $(ServiceKey) != $(KeyNull)
|
||
|
GetRegValue $(ServiceKey) "OtherDependencies" ServicesList
|
||
|
ifint $(RegLastError) != 0
|
||
|
set ServiceValues = {}
|
||
|
else
|
||
|
set ServiceValues = *($(ServicesList),4)
|
||
|
endif
|
||
|
debug-output "AddServiceDependency: Old OtherDependencies: "$(ServiceValues)
|
||
|
ifstr(i) $(ServiceValues) == {}
|
||
|
Set ServiceValues = {$(DependOn)}
|
||
|
else-ifstr(i) $(ServiceValues) == ""
|
||
|
Set ServiceValues = {$(DependOn)}
|
||
|
else-ifcontains(i) $(DependOn) in $(ServiceValues)
|
||
|
; It is already there!! something is wrong, but it doesn't matter
|
||
|
return STATUS_SUCCESSFUL
|
||
|
else
|
||
|
; Add to the dependcy list
|
||
|
Set ServiceValues = >($(ServiceValues), $(DependOn))
|
||
|
endif
|
||
|
debug-output "AddServiceDependency: New OtherDependencies: "$(ServiceValues)
|
||
|
SetRegValue $(ServiceKey) {OtherDependencies, 0,+
|
||
|
$(!REG_VT_MULTI_SZ), $(ServiceValues)}
|
||
|
CloseRegKey $(ServiceKey)
|
||
|
set Status = STATUS_SUCCESSFUL
|
||
|
else
|
||
|
Debug-Output "AddServiceDependency: error opening service "$(DependentService)"\Linkage"
|
||
|
endif
|
||
|
set KeyService = $(KeyNull)
|
||
|
OpenRegKey $(!REG_H_LOCAL) "" $(DependentService) $(MAXIMUM_ALLOWED) KeyService
|
||
|
ifstr $(KeyService) != $(KeyNull)
|
||
|
set newDependList = {$(DependOn)}
|
||
|
GetRegValue $(KeyService) "DependOnService" ServiceList
|
||
|
ifint $(RegLastError) == 0
|
||
|
Debug-Output "AddServiceDependency: old DependOnService List "*($(ServiceList), 4)
|
||
|
ForListDo *($(ServiceList),4)
|
||
|
ifstr(i) $($) != $(DependOn)
|
||
|
set newDependList = >($(newDependList), $($))
|
||
|
endif
|
||
|
EndForListDo
|
||
|
endif
|
||
|
GetRegValue $(KeyService) "DependOnGroup" GrpList
|
||
|
ifint $(RegLastError) == 0
|
||
|
Debug-Output "AddServiceDependency: old DependOnGroup List "*($(GrpList), 4)
|
||
|
ForListDo *($(GrpList),4)
|
||
|
set grp = "+"$($)
|
||
|
set newDependList = >($(newDependList), $(grp))
|
||
|
EndForListDo
|
||
|
endif
|
||
|
Debug-Output "OEMNSVRA.INF: AddServiceDependency: new Dependency List "$(newDependList)
|
||
|
LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $(DependentName) $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), "", "", $(newDependList), "", "", ""
|
||
|
CloseRegKey $(KeyService)
|
||
|
else
|
||
|
Debug-Output "AddServiceDependency: failed to open service linkage key"$(DependentService)
|
||
|
endif
|
||
|
|
||
|
Debug-Output "AddServiceDependency: exit"
|
||
|
|
||
|
return $(Status)
|
||
|
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[DebugConfiguration]
|
||
|
Debug-Output $(!p:InfName)": **CONFIGURATION STATE: "$($0)
|
||
|
Debug-Output $(!p:InfName)": InterruptNumber is "$(!p:InterruptNumber)
|
||
|
Debug-Output $(!p:InfName)": RamBaseAddress is "$(!p:RamBaseAddress)
|
||
|
Return
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[DebugGlobalFlags]
|
||
|
Debug-Output $(InfName)": **CONFIGURATION STATE: "$($0)
|
||
|
Debug-Output $(InfName)": !STF_SRCDIR_USED value is "$(!STF_SRCDIR_USED)
|
||
|
Debug-Output $(InfName)": !STF_SRCDIR_KEYED value is "$(!STF_SRCDIR_KEYED)
|
||
|
Debug-Output $(InfName)": !STF_SRCDIR_OVERRIDE value is "$(!STF_SRCDIR_OVERRIDE)
|
||
|
Return
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Install-Option]
|
||
|
Set STF_VITAL = ""
|
||
|
IfStr(i) $(AddCopy) == "YES"
|
||
|
AddSectionFilesToCopyList Files-RASPPTPDLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
AddSectionFilesToCopyList Files-RASPPTPDRV $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
EndIf
|
||
|
IfStr(i) $(DoCopy) == "YES"
|
||
|
Set !STF_NCPA_FLUSH_COPYLIST = TRUE
|
||
|
CopyFilesInCopyList
|
||
|
Else
|
||
|
LibraryProcedure STATUS, $(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) $(SrcDir)\RASPPTPC.DLL $(!STF_WINDOWSSYSPATH)\RASPPTPC.DLL
|
||
|
EndIf
|
||
|
Exit
|
||
|
|
||
|
;***********************************************************************
|
||
|
;
|
||
|
;***********************************************************************
|
||
|
[Install-Update]
|
||
|
Set STF_VITAL = ""
|
||
|
Set STF_OVERWRITE = "VERIFYSOURCEOLDER"
|
||
|
AddSectionFilesToCopyList Files-RASPPTPDLL $(SrcDir) $(!STF_WINDOWSSYSPATH)
|
||
|
;RASPPTP_SPECIFIC_START
|
||
|
AddSectionFilesToCopyList Files-RASPPTPDRV $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
|
||
|
;RASPPTP_SPECIFIC_END
|
||
|
Set !STF_NCPA_FLUSH_COPYLIST = TRUE
|
||
|
CopyFilesInCopyList
|
||
|
Exit
|
||
|
|
||
|
|