home *** CD-ROM | disk | FTP | other *** search
/ ftp.tcs3.com / ftp.tcs3.com.tar / ftp.tcs3.com / DRIVERS / Network / 3COM / 3c90x / Ver3.1 / 3c90x2x.exe / OEMSETUP.INF < prev    next >
INI File  |  1998-04-09  |  51KB  |  1,661 lines

  1.  
  2. [IntstallOptions]
  3.  Install_dRMON = "YES"
  4.  Install_3NIC_Diag = "YES"
  5.  Install_PACE = "YES"
  6.  Install_Shortcuts = "YES"
  7.  
  8. [Identification]
  9.  OptionType = NetAdapter
  10.  
  11. [PlatformsSupported]
  12.  ISA
  13.  EISA
  14.  "Jazz-Internal Bus"
  15.  PCI
  16.  
  17. [Options]
  18.  3C90X 
  19. 3C905 
  20. 3C900 
  21.  
  22. [DriverFilenameConstantsNDIS3]
  23.  NetEventDLL = "%SystemRoot%\System32\netevent.dll;%SystemRoot%\System32\drivers\el90xnd3.sys"
  24.  ProductSoftwareImagePath = "%SystemRoot%\System32\drivers\el90xnd3.sys"
  25.  ProductSoftwareUpgradePath = "\SystemRoot\System32\drivers\el90xnd3.sys"
  26.  
  27. [DriverFilenameConstantsNDIS4]
  28.  NetEventDLL = "%SystemRoot%\System32\netevent.dll;%SystemRoot%\System32\drivers\el90xnd4.sys"
  29.  ProductSoftwareImagePath = "%SystemRoot%\System32\drivers\el90xnd4.sys"
  30.  ProductSoftwareUpgradePath = "\SystemRoot\System32\drivers\el90xnd4.sys"
  31.  
  32.  
  33. [FileConstants]
  34.  UtilityInf = "UTILITY.INF"
  35.  subroutineinf = "SUBROUTN.INF"
  36.  SoftwareType = "driver"
  37.  Exit_Code = 0
  38.  IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
  39.  TrayIconExe = "comsmd.exe"
  40.  NetworkCardsKey = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"
  41.  
  42. Manufacturer = "3Com"
  43.  ProductMajorVersion = "1"
  44.  ProductMinorVersion = "0"
  45.  ProductReview = "1"
  46.  ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
  47.  ProductSoftwareName = "El90x"
  48.  NetRuleSoftwareType = "El90xSys ndisDriver El90xDriver"
  49.  NetRuleSoftwareUse = $(SoftwareType)
  50.  NetRuleSoftwareBindForm = """El90xSys"" yes no container"
  51.  NetRuleSoftwareClass = {"El90xDriver basic"}
  52.  NetRuleSoftwareBindable = {"El90xDriver El90xAdapter non exclusive 100"}
  53.  ProductHardwareName = "El90x"
  54.  NetRuleHardwareBindForm = " yes yes container"
  55.  
  56.  ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  57.  ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  58.  
  59.  FunctionTitle = "3Com 3C90x Adapter Card Setup"
  60.  ProductSoftwareDescription = "3Com 3C90x Adapter Driver"
  61.  ProductSoftwareTitle = "3Com 3C90x Adapter Driver"
  62.  3CNUMBER = "3C90X"
  63.  
  64. GROUP_NAME = "3Com Fast Etherlink XL/Etherlink XL"
  65.  NetRuleHardwareType = "El90x El90xAdapter"
  66.  NetRuleHardwareClass = {"El90xAdapter basic"}
  67.  
  68.  ProductHardwareXXXXXTitle = "3Com Fast EtherLink/Etherlink XL PCI Busmaster NIC"
  69.  ProductHardwareXXXXXDescription = "3Com Fast EtherLink/Etherlink XL PCI Busmaster NIC"
  70.  
  71.  ProductHardware36944Title = "3Com Fast EtherLink XL NIC (3C905-TX)"
  72.  ProductHardware36944Description = "3Com Fast EtherLink XL 10/100Mb TX Ethernet NIC (3C905-TX)"
  73.  
  74.  ProductHardware36945Title = "3Com Fast EtherLink XL NIC (3C905-T4)"
  75.  ProductHardware36945Description = "3Com Fast EtherLink XL 10/100Mb T4 Ethernet NIC (3C905-T4)"
  76.  
  77.  ProductHardware36949Title = "3Com Fast EtherLink XL NIC (3C905B-TX)"
  78.  ProductHardware36949Description = "3Com Fast EtherLink XL 10/100Mb TX Ethernet NIC (3C905B-TX)"
  79.  
  80.  ProductHardware36954Title = "3Com Fast EtherLink XL NIC (3C905B-FX)"
  81.  ProductHardware36954Description = "3Com Fast EtherLink XL 100Mb FX Ethernet NIC (3C905B-FX)"
  82.  
  83.  ProductHardware36864Title = "3Com EtherLink XL NIC (3C900-TPO)"
  84.  ProductHardware36864Description = "3Com EtherLink XL TPO 10Mb Ethernet NIC (3C900-TPO)" 
  85.  
  86. ProductHardware36865Title = "3Com EtherLink XL NIC (3C900-COMBO)"
  87.  ProductHardware36865Description = "3Com EtherLink XL COMBO 10Mb Ethernet NIC (3C900-COMBO)" 
  88.  
  89. ProductHardware36868Title = "3Com EtherLink XL NIC (3C900B-TPO)"
  90.  ProductHardware36868Description = "3Com EtherLink XL TPO 10Mb Ethernet NIC (3C900B-TPO)" 
  91.  
  92. ProductHardware36869Title = "3Com EtherLink XL NIC (3C900B-COMBO)"
  93.  ProductHardware36869Description = "3Com EtherLink XL COMBO 10Mb Ethernet NIC (3C900B-COMBO)" 
  94.  
  95. ProductHardware36870Title = "3Com EtherLink XL NIC (3C900B-TPC)"
  96.  ProductHardware36870Description = "3Com EtherLink XL TPC 10Mb Ethernet NIC (3C900B-TPC)" 
  97.  
  98. ProductHardware36874Title = "3Com EtherLink XL NIC (3C900B-FL)"
  99.  ProductHardware36874Description = "3Com EtherLink XL FL 10Mb Ethernet NIC (3C900B-FL)" 
  100.  
  101.  
  102. AdapterType = 5 
  103. CFIDList = {36944, 36945, 36949, 36954, 36864, 36865, 36868, 36869, 36870, 36874}
  104.  
  105.  
  106. [GeneralConstants]
  107.  from = ""
  108.  to = ""
  109.  ExitCodeOk = 0
  110.  ExitCodeCancel = 1 
  111. ExitCodeFatal = 2
  112.  KeyNull = ""
  113.  MAXIMUM_ALLOWED = 33554432
  114.  RegistryErrorIndex = NO_ERROR
  115.  KeyProduct = ""
  116.  KeyParameters = ""
  117.  TRUE = 1
  118.  FALSE = 0
  119.  NoTitle = 0
  120.  ExitState = "Active"
  121.  OldVersionExisted = $(FALSE)
  122.  DriverPath = $(!STF_NTPATH)\drivers
  123.  NT350VersionConstant = "3.50"
  124.  NT310VersionConstant = "3.10"
  125.  NT400VersionConstant = "(4.0)"
  126.  INF_PROCESSER = "I386"
  127. [date]
  128.  Now = {} ? $(!LIBHANDLE) GetSystemDate
  129.  
  130. [Identify]
  131.  read-syms Identification
  132.  set Status = STATUS_SUCCESSFUL
  133.  set Identifier = $(OptionType)
  134.  set Media = #("Source Media Descriptions", 1, 1)
  135.  Return $(Status) $(Identifier) $(Media)
  136.  
  137. [ReturnOptions]
  138.  set Status = STATUS_FAILED
  139.  set OptionList = {}
  140.  set OptionTextList = {}
  141.  set LanguageList = ^(LanguagesSupported, 1)
  142.  Ifcontains(i) $($0) in $(LanguageList)
  143.  ifstr(i) $($1) == ""
  144.  goto returnoptions
  145.  endif
  146.  set PlatformList = ^(PlatformsSupported, 1)
  147.  Ifcontains(i) $($1) in $(PlatformList)
  148.  goto returnoptions
  149.  else
  150.  set Status = STATUS_NOTSUPPORTED
  151.  goto finish_ReturnOptions
  152.  endif
  153.  else
  154.  set Status = STATUS_NOLANGUAGE
  155.  goto finish_ReturnOptions
  156.  endif
  157.  
  158. returnoptions = +
  159.  set OptionList = ^(Options, 1)
  160.  set OptionTextList = ^(OptionsText$($0), 1)
  161.  set Status = STATUS_SUCCESSFUL
  162.  
  163. finish_ReturnOptions = +
  164.  Return $(Status) $(OptionList) $(OptionTextList)
  165.  
  166. [PaceRegistry]
  167.  read-syms GeneralConstants
  168.  read-syms FileConstants
  169.  read-syms DialogConstants$(!STF_LANGUAGE)
  170.  read-syms FileConstants$(!STF_LANGUAGE)
  171.  
  172.  
  173.  OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\3Com\"$(ProductSoftwareName) $(!REG_KEY_ALL_ACCESS) KeyNt
  174.  
  175. set TrayIconList = {PACENAME,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)}
  176.  SetRegValue $(KeyNt) $(TrayIconList)
  177.  
  178. CloseRegKey $(KeyNt) 
  179.  
  180. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE" $(!REG_KEY_WRITE) SOFTPACEKEY
  181.  
  182. OpenRegKey $(SOFTPACEKEY) "" "3Com" $(!REG_KEY_WRITE) COMPACEKEY
  183.  ifstr $(COMPACEKEY) == ""
  184.  CreateRegKey $(SOFTPACEKEY) {"3Com", 0, GenericClass} "" $(!REG_KEY_WRITE) "" COMPACEKEY
  185.  endif
  186.  
  187. OpenRegKey $(COMPACEKEY) "" "DA" $(!REG_KEY_WRITE) DAPACEKEY
  188.  ifstr $(DAPACEKEY) == ""
  189.  CreateRegKey $(COMPACEKEY) {"DA", 0, GenericClass} "" $(!REG_KEY_WRITE) "" DAPACEKEY
  190.  endif
  191.  
  192.  OpenRegKey $(DAPACEKEY) "" "CardsSupported" $(!REG_KEY_WRITE) CARDPACEKEY
  193.  ifstr $(CARDPACEKEY) == ""
  194.  CreateRegKey $(DAPACEKEY) {"CardsSupported", 0, GenericClass} "" $(!REG_KEY_WRITE) "" CARDPACEKEY
  195.  endif
  196.  
  197.  OpenRegKey $(CARDPACEKEY) "" "EL90X" $(!REG_KEY_WRITE) EL90XPACEKEY
  198.  ifstr $(EL90XPACEKEY) == ""
  199.  CreateRegKey $(CARDPACEKEY) {"EL90X", 0, GenericClass} "" $(!REG_KEY_WRITE) "" EL90XPACEKEY
  200.  endif
  201.  
  202. SetRegValue $(EL90XPACEKEY) {"CardName", 0, $(!REG_VT_SZ), $(GROUP_NAME)}
  203.  SetRegValue $(EL90XPACEKEY) {"Pace", 0, $(!REG_VT_SZ), "1"}
  204.  SetRegValue $(EL90XPACEKEY) {"FastIP", 0, $(!REG_VT_SZ), "1"}
  205.  
  206. OpenRegKey $(DAPACEKEY) "" "Pace" $(!REG_KEY_WRITE) PACEPACEKEY
  207.  ifstr $(PACEPACEKEY) == ""
  208.  CreateRegKey $(DAPACEKEY) {"Pace", 0, GenericClass} "" $(!REG_KEY_WRITE) "" PACEPACEKEY
  209.  endif
  210.  
  211.  OpenRegKey $(PACEPACEKEY) "" "Applications" $(!REG_KEY_WRITE) APPPACEKEY
  212.  ifstr $(APPPACEKEY) == ""
  213.  CreateRegKey $(PACEPACEKEY) {"Applications", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPPACEKEY
  214.  endif
  215.  
  216.  OpenRegKey $(APPPACEKEY) "" "Emotion CreativePartner (IPX)" $(!REG_KEY_WRITE) APPSPECPACEKEY
  217.  ifstr $(APPSPECPACEKEY) == ""
  218.  CreateRegKey $(APPPACEKEY) {"Emotion CreativePartner (IPX)", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  219.  endif
  220.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"IPX"},+
  221.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  222.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"87C7"}, +
  223.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"87C8"}}
  224.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  225.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  226.  goto ShellCodeError
  227.  endif
  228.  CloseRegKey $(APPSPECPACEKEY)
  229.  
  230.  
  231. OpenRegKey $(APPPACEKEY) "" "Emotion CreativePartner (TCP/IP)" $(!REG_KEY_WRITE) APPSPECPACEKEY
  232.  ifstr $(APPSPECPACEKEY) == ""
  233.  CreateRegKey $(APPPACEKEY) {"Emotion CreativePartner (TCP/IP)", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  234.  endif
  235.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  236.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  237.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"0453"}, +
  238.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"0455"}}
  239.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  240.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  241.  goto ShellCodeError
  242.  endif
  243.  CloseRegKey $(APPSPECPACEKEY)
  244.  
  245.  OpenRegKey $(APPPACEKEY) "" "InSoft Communique!" $(!REG_KEY_WRITE) APPSPECPACEKEY
  246.  ifstr $(APPSPECPACEKEY) == ""
  247.  CreateRegKey $(APPPACEKEY) {"InSoft Communique!", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  248.  endif
  249.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  250.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  251.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"1025, 1500"}, +
  252.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"1050, 1525"}}
  253.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  254.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  255.  goto ShellCodeError
  256.  endif
  257.  CloseRegKey $(APPSPECPACEKEY)
  258.  
  259.  OpenRegKey $(APPPACEKEY) "" "Picturetel LiveLAN (over IPX)" $(!REG_KEY_WRITE) APPSPECPACEKEY
  260.  ifstr $(APPSPECPACEKEY) == ""
  261.  CreateRegKey $(APPPACEKEY) {"Picturetel LiveLAN (over IPX)", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  262.  endif
  263.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"IPX"},+
  264.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  265.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"4050"}, +
  266.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"4082"}}
  267.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  268.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  269.  goto ShellCodeError
  270.  endif
  271.  CloseRegKey $(APPSPECPACEKEY)
  272.  
  273.  OpenRegKey $(APPPACEKEY) "" "Picturetel LiveLAN (over TCP/IP)" $(!REG_KEY_WRITE) APPSPECPACEKEY
  274.  ifstr $(APPSPECPACEKEY) == ""
  275.  CreateRegKey $(APPPACEKEY) {"Picturetel LiveLAN (over TCP/IP)", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  276.  endif
  277.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  278.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  279.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"06a4"}, +
  280.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"06d6"}}
  281.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  282.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  283.  goto ShellCodeError
  284.  endif
  285.  CloseRegKey $(APPSPECPACEKEY)
  286.  
  287.  OpenRegKey $(APPPACEKEY) "" "Precept FlashWare" $(!REG_KEY_WRITE) APPSPECPACEKEY
  288.  ifstr $(APPSPECPACEKEY) == ""
  289.  CreateRegKey $(APPPACEKEY) {"Precept FlashWare", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  290.  endif
  291.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  292.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  293.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"8000, C000"}, +
  294.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"8000, C000"}}
  295.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  296.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  297.  goto ShellCodeError
  298.  endif
  299.  CloseRegKey $(APPSPECPACEKEY)
  300.  
  301.  OpenRegKey $(APPPACEKEY) "" "Progressive Networks RealAudio" $(!REG_KEY_WRITE) APPSPECPACEKEY
  302.  ifstr $(APPSPECPACEKEY) == ""
  303.  CreateRegKey $(APPPACEKEY) {"Progressive Networks RealAudio", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  304.  endif
  305.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  306.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  307.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"6970"}, +
  308.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"7170"}}
  309.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  310.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  311.  goto ShellCodeError
  312.  endif
  313.  CloseRegKey $(APPSPECPACEKEY)
  314.  
  315.  OpenRegKey $(APPPACEKEY) "" "Starlight Networks StarCast" $(!REG_KEY_WRITE) APPSPECPACEKEY
  316.  ifstr $(APPSPECPACEKEY) == ""
  317.  CreateRegKey $(APPPACEKEY) {"Starlight Networks StarCast", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  318.  endif
  319.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  320.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  321.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"1911"}, +
  322.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"1911"}}
  323.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  324.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  325.  goto ShellCodeError
  326.  endif
  327.  CloseRegKey $(APPSPECPACEKEY)
  328.  
  329.  OpenRegKey $(APPPACEKEY) "" "VCON Cruiser 100" $(!REG_KEY_WRITE) APPSPECPACEKEY
  330.  ifstr $(APPSPECPACEKEY) == ""
  331.  CreateRegKey $(APPPACEKEY) {"VCON Cruiser 100", 0, GenericClss} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  332.  endif
  333.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  334.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  335.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"1500, 1600"}, +
  336.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"1500, 1600"}}
  337.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  338.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  339.  goto ShellCodeError
  340.  endif
  341.  CloseRegKey $(APPSPECPACEKEY)
  342.  
  343.  OpenRegKey $(APPPACEKEY) "" "VXtreme Web Theater" $(!REG_KEY_WRITE) APPSPECPACEKEY
  344.  ifstr $(APPSPECPACEKEY) == ""
  345.  CreateRegKey $(APPPACEKEY) {"VXtreme Web Theater", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  346.  endif
  347.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  348.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  349.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"7000"}, +
  350.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"7020"}}
  351.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  352.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  353.  goto ShellCodeError
  354.  endif
  355.  CloseRegKey $(APPSPECPACEKEY)
  356.  
  357.  OpenRegKey $(APPPACEKEY) "" "Xing Technology Streamworks" $(!REG_KEY_WRITE) APPSPECPACEKEY
  358.  ifstr $(APPSPECPACEKEY) == ""
  359.  CreateRegKey $(APPPACEKEY) {"Xing Technology Streamworks", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  360.  endif
  361.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  362.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  363.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"1558"}, +
  364.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"1558"}}
  365.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  366.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  367.  goto ShellCodeError
  368.  endif
  369.  CloseRegKey $(APPSPECPACEKEY)
  370.  
  371.  OpenRegKey $(APPPACEKEY) "" "Vosaic Software Server" $(!REG_KEY_WRITE) APPSPECPACEKEY
  372.  ifstr $(APPSPECPACEKEY) == ""
  373.  CreateRegKey $(APPPACEKEY) {"Vosaic Software Server", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  374.  endif
  375.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"TCP"},+
  376.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  377.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"04D3"}, +
  378.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"04D3"}}
  379.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  380.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  381.  goto ShellCodeError
  382.  endif
  383.  CloseRegKey $(APPSPECPACEKEY)
  384.  
  385.  OpenRegKey $(APPPACEKEY) "" "Vosaic Software Client" $(!REG_KEY_WRITE) APPSPECPACEKEY
  386.  ifstr $(APPSPECPACEKEY) == ""
  387.  CreateRegKey $(APPPACEKEY) {"Vosaic Software Client", 0, GenericClass} "" $(!REG_KEY_WRITE) "" APPSPECPACEKEY
  388.  endif
  389.  set NewValueList = {{Protocol,$(NoTitle),$(!REG_VT_SZ),"UDP"},+
  390.  {Enabled,$(NoTitle),$(!REG_VT_SZ),"FALSE"}, +
  391.  {RangeStart,$(NoTitle),$(!REG_VT_SZ),"F169"}, +
  392.  {RangeEnd,$(NoTitle),$(!REG_VT_SZ),"F17D"}}
  393.  Shell $(UtilityInf), AddValueList, $(APPSPECPACEKEY), $(NewValueList)
  394.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  395.  goto ShellCodeError
  396.  endif
  397.  CloseRegKey $(APPSPECPACEKEY)
  398.  
  399.  CloseRegKey $(APPPACEKEY)
  400.  CloseRegKey $(PACEPACEKEY)
  401.  CloseRegKey $(EL90XPACEKEY)
  402.  CloseRegKey $(CARDPACEKEY)
  403.  CloseRegKey $(DAPACEKEY)
  404.  CloseRegKey $(COMPACEKEY)
  405.  CloseRegKey $(SOFTPACEKEY)
  406.  
  407. return 
  408.  
  409.  
  410. [InstallOption]
  411.  
  412.  
  413.  
  414.  
  415. set CurrLang = $($0)
  416.  set Option = $($1)
  417.  set SrcDir = $($2)
  418.  set AddCopy = $($3)
  419.  set DoCopy = $($4)
  420.  set DoConfig = $($5)
  421.  set LanguageList = ^(LanguagesSupported, 1)
  422.  Ifcontains(i) $($0) NOT-IN $(LanguageList)
  423.  Return STATUS_NOLANGUAGE
  424.  endif
  425.  set-subst LF = "\n"
  426.  read-syms IntstallOptions
  427.  read-syms GeneralConstants
  428.  read-syms FileConstants
  429.  read-syms DialogConstants$(!STF_LANGUAGE)
  430.  ifstr(i) $(!NTN_Origination) == "NCPA"
  431.  set Continue = "OK"
  432.  endif
  433.  read-syms FileConstants$(!STF_LANGUAGE)
  434.  detect date
  435.  set-title $(FunctionTitle)
  436.  set to = Begin
  437.  set from = Begin
  438.  set CommonStatus = STATUS_SUCCESSFUL
  439.  EndWait
  440.  
  441. Begin = +
  442.  
  443.  
  444.  
  445.  
  446.  
  447. set CurrentVersionValue = ""
  448.  OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows Nt\CurrentVersion" $(!REG_KEY_READ) KeyNt
  449.  Ifstr(i) $(KeyNt) != ""
  450.  GetRegValue $(KeyNt) "CurrentVersion" CurrentVersionValue
  451.  Debug-Output "$(InfFile) : WinNT CurrentVersion ="$(CurrentVersionValue)
  452.  CloseRegKey $(KeyNt)
  453.  Endif
  454.  
  455.  
  456. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant)
  457.  set NDIS_VER = NDIS4
  458.  else
  459.  set NDIS_VER = NDIS3 
  460. endif
  461.  
  462. read-syms DriverFilenameConstants$(NDIS_VER)
  463.  
  464.  ifstr(i) (*($(CurrentVersionValue),4)) == $(NT310VersionConstant) 
  465. Debug-Output "$(InfFile) : Configureadapter"
  466.  set Error = "Windows NT v3.10 is not support by this product"
  467.  goto fatal
  468.  endif
  469.  
  470. Ifstr(i) $(!NTN_InstallMode) == deinstall
  471.  set StartLabel = removeadapter
  472.  else-Ifstr(i) $(!NTN_InstallMode) == Update
  473.  set StartLabel = UpgradeSoftware
  474.  else-Ifstr(i) $(!NTN_InstallMode) == bind
  475.  set StartLabel = bindingadapter
  476.  else-Ifstr(i) $(!NTN_InstallMode) == configure
  477.  ifstr $(!STF_PLATFORM) == $(INF_PROCESSER) 
  478. RunProgram ExitCode "Windows Directory" "" 3nicdiag.exe 
  479. set CommonStatus = STATUS_USERCANCEL
  480.  goto end
  481.  else-Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  482.  Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  483.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  484.  goto ShellCodeError
  485.  endif
  486.  set Error = $($R0)
  487.  set from = end
  488.  set to = end
  489.  goto nonfatalinfo
  490.  else
  491.  set StartLabel = configureadapter
  492.  endif
  493.  else
  494.  set StartLabel = installadapter
  495.  set OEM_ABANDON_OPTIONS = {}
  496.  set OEM_ABANDON_SOFTWARE = FALSE
  497.  set OEM_ABANDON_ON = TRUE
  498.  endif
  499.  
  500.  Debug-Output "$(InfFile) : =================================================="
  501.  Debug-Output "$(InfFile) : STF_CWDIR is: "$(!STF_CWDIR)
  502.  Debug-Output "$(InfFile) : STF_SRCDIR is: "$(!STF_SRCDIR)
  503.  Debug-Output "$(InfFile) : STF_LANGUAGE is: "$(!STF_LANGUAGE)
  504.  Debug-Output "$(InfFile) : Option is: "$(Option)
  505.  Debug-Output "$(InfFile) : !STF_NCN_InstallMode is:"$(!NTN_InstallMode)
  506.  Debug-Output "$(InfFile) : !STF_NCDETECT is: "$(!STF_NCDETECT)
  507.  Debug-Output "$(InfFile) : !STF_NCOPTION is: "$(!STF_NCOPTION)
  508.  Debug-Output "$(InfFile) : !STF_NCDETCARD is: "$(!STF_NCDETCARD)
  509.  Debug-Output "$(InfFile) : !STF_NCDETINFO is: "$(!STF_NCDETINFO)
  510.  Debug-Output "$(InfFile) : !STF_GUI_UNATTENDED is: "$(!STF_GUI_UNATTENDED)
  511.  Debug-Output "$(InfFile) : !STF_BusType is $(!STF_BUSTYPE)" 
  512. Debug-Output "$(InfFile) : !STF_BusTypeList is $(!STF_BUSTYPELIST)" 
  513. Debug-Output "$(InfFile) : =================================================="
  514.  
  515.  set from = $(fatal)
  516.  set to = $(fatal)
  517.  goto $(StartLabel)
  518.  
  519. installadapter = +
  520.  
  521. Debug-Output "$(InfFile) : Installadapter" 
  522. OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!REG_KEY_READ) KeyProduct
  523.  Ifstr $(KeyProduct) != $(KeyNull)
  524.  CloseRegKey $(KeyProduct)
  525.  ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  526.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  527.  Debug-Output "ShellCode error: cannot get an error string."
  528.  goto ShellCodeError
  529.  endif
  530.  goto end
  531.  else
  532.  set OldVersionExisted = $(TRUE)
  533.  endif
  534.  Endif
  535.  
  536.  Goto adapteroptions 
  537.  
  538. configureadapter = +
  539.  Debug-Output "$(InfFile) : Configureadapter"
  540.  
  541.  set Error = "Cannot configure the software component"
  542.  goto fatal
  543.  
  544. adapteroptions = +
  545.  Debug-Output "$(InfFile) : Adapteroptions"
  546.  set from = adapteroptions
  547.  ifstr(i) $(!NTN_InstallMode) == configure
  548.  goto updateparameters
  549.  endif
  550.  
  551. installproduct =+
  552.  Debug-Output "$(InfFile) : installproduct"
  553.  StartWait 
  554. set AdapterList = $($R1)
  555.  ifint $(OldVersionExisted) == $(FALSE)
  556.  Ifstr(i) $(DoCopy) == "YES"
  557.  Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) NO
  558.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  559.  Goto ShellCodeError
  560.  Else-Ifstr(i) $($R0) == STATUS_FAILED
  561.  Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  562.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  563.  goto ShellCodeError
  564.  endif
  565.  set Error = $($R0)
  566.  Goto fatal
  567.  Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  568.  Goto successful
  569.  Endif
  570.  
  571. Endif
  572.  
  573.  install "Install-Option"
  574.  ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  575.  Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  576.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  577.  goto ShellCodeError
  578.  endif
  579.  set Error = $($R0)
  580.  goto fatal
  581.  endif
  582.  
  583. endif
  584.  
  585.  
  586.  
  587.  
  588.  
  589. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) $(!REG_KEY_READ) KeyNt
  590.  CloseRegKey $(KeyNt)
  591.  
  592.  Ifstr(i) $(KeyNt) == ""
  593.  Debug-Output "$(InfFile) : AddSoftwareComponent"
  594.  Debug-Output "$(InfFile) : --> $(Manufacturer)"
  595.  Debug-Output "$(InfFile) : --> $(ProductSoftwareName)"
  596.  Debug-Output "$(InfFile) : --> $(ProductSoftwareTitle)"
  597.  Debug-Output "$(InfFile) : --> $(STF_CONTEXTINFNAME)"
  598.  Debug-Output "$(InfFile) : --> $(ProductSoftwareImagePath)"
  599.  Debug-Output "$(InfFile) : --> $(NetEventDLL)"
  600.  
  601.  Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  602.  $(ProductSoftwareName), +
  603.  $(ProductSoftwareName), +
  604.  $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  605.  $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  606.  $(NetEventDLL)
  607.  
  608. Set OEM_ABANDON_SOFTWARE = TRUE
  609.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  610.  goto ShellCodeError
  611.  endif
  612.  set RegistryErrorIndex = $($R0)
  613.  Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  614.  EndWait
  615.  CloseRegKey $($R1)
  616.  CloseRegKey $($R2)
  617.  CloseRegKey $($R3)
  618.  CloseRegKey $($R4)
  619.  CloseRegKey $($R5)
  620.  goto fatalregistry
  621.  endif
  622.  Set SoftProductKey = $($R1)
  623.  Set SoftNetRuleKey = $($R2)
  624.  Set SoftServiceKey = $($R3)
  625.  Set SoftParameterKey = $($R4)
  626.  Set SoftLinkageKey = $($R5)
  627.  set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  628.  {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  629.  {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  630.  {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  631.  {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  632.  {Review,$(NoTitle),$(!REG_VT_DWORD),$(ProductReview)},+
  633.  {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  634.  {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  635.  Shell $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  636.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  637.  goto ShellCodeError
  638.  endif
  639.  set RegistryErrorIndex = $($R0)
  640.  Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  641.  EndWait
  642.  CloseRegKey $(SoftProductKey)
  643.  CloseRegKey $(SoftNetRuleKey)
  644.  CloseRegKey $(SoftServiceKey)
  645.  CloseRegKey $(SoftParameterKey)
  646.  CloseRegKey $(SoftLinkageKey)
  647.  goto fatalregistry
  648.  endif
  649.  set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  650.  {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  651.  {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  652.  {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  653.  {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  654.  {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  655.  Shell $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  656.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  657.  goto ShellCodeError
  658.  endif
  659.  set RegistryErrorIndex = $($R0)
  660.  CloseRegKey $(SoftProductKey)
  661.  CloseRegKey $(SoftNetRuleKey)
  662.  CloseRegKey $(SoftServiceKey)
  663.  CloseRegKey $(SoftParameterKey)
  664.  CloseRegKey $(SoftLinkageKey)
  665.  
  666.  
  667.  
  668. set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  669.  {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  670.  {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  671.  {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  672.  {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  673.  {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  674.  Shell $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  675.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  676.  goto ShellCodeError
  677.  endif
  678.  
  679.  
  680. Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  681.  EndWait
  682.  goto fatalregistry
  683.  endif
  684.  endif 
  685.  
  686. Debug-Output "$(InfFile) : About to look for 3Com PCI Cards"
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694. set TargetVersion = *($(CurrentVersionValue),4)
  695.  Debug-Output "$(InfFile) : Current Version:"$(TargetVersion)
  696.  
  697.  ifstr $(TargetVersion) == $(NT350VersionConstant) 
  698. Debug-Output "Running on WindowsNT 3.50"
  699.  set Version350 = $(TRUE)
  700.  else
  701.  Debug-Output "Running on WindowsNT 3.51 or higher"
  702.  set Version350 = $(FALSE)
  703.  endif
  704.  
  705.  ifint $(Version350) == $(TRUE)
  706.  Debug-Output "Running on WindowsNT v3.50, Not using PCI Detection!!!"
  707.  ifstr $(!STF_GUI_UNATTENDED) == "YES"
  708.  Debug-Output "$(InfFile) : Running in GUI unattended mode"
  709.  ifstr(i) $(!AutoNetInterfaceType) != ""
  710.  set BusInterfaceType = $(!AutoNetInterfaceType)
  711.  else
  712.  set BusInterfaceType = 5
  713.  endif
  714.  ifstr(i) $(!AutoNetBusNumber) != ""
  715.  set BusNumber = $(!AutoNetBusNumber)
  716.  else
  717.  set BusNumber = 0
  718.  endif
  719.  set NTDetected = $(FALSE)
  720.  set AdapterList = {{$(Option),0, XXXXX}} 
  721. Debug-Output "$(InfFile) : BusInterfaceType = $(BusInterfaceType)"
  722.  Debug-Output "$(InfFile) : BusNumber = $(BusNumber)"
  723.  else 
  724. Debug-Output "$(InfFile) : Running 3.50 Bus Dialog"
  725.  set BusInterfaceType = 5
  726.  set BusNumber = 0
  727.  set NTDetected = $(FALSE)
  728.  Shell $(UtilityInf),GetBusTypeDialog,$(ProductHardwareXXXXXDescription) $(BusInterfaceType) $(BusNumber)
  729.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  730.  Debug-Output "ShellCode error."
  731.  goto ShellCodeError
  732.  endif
  733.  set BusInterfaceType = $($R1)
  734.  set BusNumber = $($R2)
  735.  set AdapterList = {{$(Option),0, XXXXX}} 
  736. Debug-Output "$(InfFile) : BusInterfaceType = $(BusInterfaceType)"
  737.  Debug-Output "$(InfFile) : BusNumber = $(BusNumber)"
  738.  endif 
  739. else
  740.  Debug-Output "$(InfFile) : Running 3.51 or higher using PCI Dectection"
  741.  
  742.  
  743.  
  744. set NTDetected = $(TRUE)
  745.  set Vendor = 4279 
  746. set CFIDList = $(CFIDList)
  747.  Debug-Output "$(InfFile) : VendorID = $(Vendor)"
  748.  Debug-Output "$(InfFile) : CFIDList = $(CFIDList)"
  749.  set AdapterList = {}
  750.  ForListDo $(CFIDList)
  751.  set-div CFID = $($) 1
  752.  set DeviceID = $($)
  753.  Shell $(UtilityInf), GetPCIInformation, $(Vendor) $(CFID)
  754.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  755.  goto ShellCodeError
  756.  endif
  757.  ForListDo $($R0)
  758.  set AdapterList = >($(AdapterList), {*($($),1), *($($),2), $(DeviceID)})
  759.  EndForListDo
  760.  EndForListDo
  761.  ifstr(i) $(AdapterList) == {}
  762.  set Error = $(CANNOT_FIND_ANY_CARD)
  763.  set CommonStatus = USER_CANCEL
  764.  set from = end
  765.  goto nonfatal
  766.  endif
  767.  endif 
  768.  
  769.  
  770.  
  771. Debug-Output "$(InfFile) : Adapterlist = $(AdatperList)"
  772.  ForListDo $(AdapterList)
  773.  Set InstallCard = "YES"
  774.  ifint $(NTDetected) == $(TRUE)
  775.  set DetectedBusNum = *($($),1)
  776.  set DetectedSlotNum = *($($),2)
  777.  set DeviceID = *($($),3)
  778.  Debug-Output "$(InfFile) : DetectedBusNumber = $(DetectedBusNum)"
  779.  Debug-Output "$(InfFile) : DetectedSlotNum = $(DetectedSlotNum)"
  780.  
  781.  Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(DetectedBusNum), +
  782.  $(DetectedSlotNum), $(ProductHardware$(DeviceID)Description), $(ProductHardwareName)
  783.  
  784. ifint $($ShellCode) != $(!SHELL_CODE_OK)
  785.  goto ShellCodeError
  786.  endif
  787.  ifstr $($R0) != "NO_ERROR"
  788.  set Error = $($R0)
  789.  goto fatal
  790.  endif
  791.  ifstr(i) $($R1) == "YES"
  792.  set InstallCard = "NO" 
  793. endif 
  794. endif
  795.  
  796.  
  797.  
  798. ifstr(i) $(InstallCard) == "NO"
  799.  Debug-Output "$(InfFile) : Card Already at $(DetectedBusNum):$(DetectedSlotNum) already installed!"
  800.  set Error = "An adapter at $(DetectedBusNum):$(DetectedSlotNum) is already installed!"
  801.  Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  802.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  803.  goto ShellCodeError
  804.  endif
  805.  else
  806.  Debug-Output "$(InfFile) : Installing Card at $(DetectedBusNum):$(DetectedSlotNum)!"
  807.  Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  808.  ifint $($R4) != -1
  809.  Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  810.  endif
  811.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  812.  goto ShellCodeError
  813.  endif
  814.  set RegistryErrorIndex = $($R0)
  815.  Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  816.  EndWait
  817.  CloseRegKey $($R1)
  818.  CloseRegKey $($R2)
  819.  CloseRegKey $($R3)
  820.  goto fatalregistry
  821.  endif
  822.  Set HardNetCardKey = $($R1)
  823.  Set HardNetRuleKey = $($R2)
  824.  Set HardParameterKey = $($R3)
  825.  set AdapterNumber = $($R4)
  826.  set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  827.  {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(DeviceID)Title)},+
  828.  {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(DeviceID)Description)},+
  829.  {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  830.  {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  831.  {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  832.  Shell $(UtilityInf), AddValueList, $(HardNetCardKey), $(NewValueList)
  833.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  834.  goto ShellCodeError
  835.  endif
  836.  
  837.  
  838.  
  839. set BusTypeNum = 5 
  840. ifstr(i) $(DeviceID) == "36944"
  841.  set CardType = 0
  842.  else-ifstr(i) $(DeviceID) == "36945"
  843.  set CardType = 0
  844.  else-ifstr(i) $(DeviceID) == "36949"
  845.  set CardType = 0
  846.  else
  847.  set CardType = 2
  848.  endif 
  849.  
  850.  
  851.  
  852. ifint $(NTDetected) == $(TRUE)
  853.  set BusNumber = $(DetectedBusNum)
  854.  set SlotNum = $(DetectedSlotNum) 
  855. set BusInterfaceType = $(BusTypeNum)
  856.  set WakeOnLan = YES
  857.  set WakeOnLink = NO 
  858. set FlowControl = YES 
  859.  
  860. Debug-Output "$(InfFile) : Set HardwareParameterKey = $(NewValueList)"
  861.  
  862.  
  863.  
  864.  
  865.  
  866. Set NewValueList = {+
  867.  {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  868.  {Slot,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)},+
  869.  {WakeOnMagic,$(NoTitle),$(!REG_VT_SZ),$(WakeOnLan)},+
  870.  {WakeOnLink,$(NoTitle),$(!REG_VT_SZ),$(WakeOnLink)},+
  871.  {FlowControl,$(NoTitle),$(!REG_VT_SZ),$(FlowControl)},+
  872.  }
  873.  Debug-Output "$(InfFile) : Set HardwareParameterKey = $(NewValueList)"
  874.  Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  875.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  876.  goto ShellCodeError
  877.  endif
  878.  
  879.  Set NewValueList = { {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)} }
  880.  Debug-Output "$(InfFile) : Set HardwareParameterKey = $(NewValueList)"
  881.  Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  882.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  883.  goto ShellCodeError
  884.  endif
  885.  else
  886.  Set NewValueList = {+
  887.  {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  888.  }
  889.  Debug-Output "$(InfFile) : Set HardwareParameterKey = $(NewValueList)"
  890.  Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  891.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  892.  goto ShellCodeError
  893.  endif
  894.  endif
  895.  
  896.  Set NewValueList = {+
  897.  {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)},+
  898.  {CardType,$(NoTitle),$(!REG_VT_DWORD),$(CardType)},+
  899.  {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
  900.  }
  901.  
  902.  Debug-Output "$(InfFile) : Set HardwareParameterKey = $(NewValueList)"
  903.  Shell $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  904.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  905.  goto ShellCodeError
  906.  endif
  907.  
  908.             ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
  909.              Shell $(UtilityInf), AddDefaultNetcardParameters, $(HardParameterKey)
  910.              endif
  911.         
  912.  set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  913.  set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  914.  set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  915.  {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  916.  {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  917.  {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  918.  
  919. Debug-Output "$(InfFile) : HardwareRuleKey = $(NewValueList)"
  920.  Shell $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
  921.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  922.  goto ShellCodeError
  923.  endif
  924.  CloseRegKey $(HardNetCardKey)
  925.  CloseRegKey $(HardNetRuleKey)
  926.  CloseRegKey $(HardParameterKey)
  927.  endif 
  928. EndForListDo
  929.  
  930.  
  931.  
  932. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) $(!REG_KEY_ALL_ACCESS) KeyService
  933.  Ifstr $(KeyService) != "" 
  934. SetRegValue $(KeyService) {ImagePath,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareUpgradePath)}
  935.  else 
  936. goto fatalregistry 
  937. endif 
  938. CloseRegKey $(KeyService) 
  939.  
  940.  
  941. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\EventLog\System\"$(ProductHardwareName) $(!REG_KEY_ALL_ACCESS) KeyEventLog
  942.  Ifstr $(KeyEventLog) != "" 
  943. SetRegValue $(KeyEventLog) {EventMessageFile,$(NoTitle),$(!REG_VT_SZ),$(NetEventDLL)} 
  944. else 
  945. goto fatalregistry 
  946. endif 
  947. CloseRegKey $(KeyEventLog) 
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955. ifstr $(!STF_PLATFORM) == $(INF_PROCESSER) 
  956.  
  957.  
  958. install "Install-Uninstaller" 
  959.  
  960.  
  961.  
  962. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\3Com\"$(ProductSoftwareName) $(!REG_KEY_ALL_ACCESS) + 
  963. KeyNt 
  964.  
  965. set TrayIconList = {3CUNINSTALL,$(NoTitle),$(!REG_VT_SZ),$(3CNUMBER)} 
  966. SetRegValue $(KeyNt) $(TrayIconList) 
  967. CloseRegKey $(KeyNt) 
  968.  
  969.  
  970.  
  971.  
  972. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  973. ifstr $(Install_3NIC_Diag) == "YES" 
  974.  
  975. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" + 
  976. $(!REG_KEY_ALL_ACCESS) KeyNt 
  977. ifstr $(KeyNt) == "" 
  978. CreateRegKey $(!REG_H_LOCAL) {"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall", + 
  979. 0, GenericClass} "" $(!REG_KEY_ALL_ACCESS) "" KeyNt 
  980. endif 
  981.  
  982. OpenRegKey $(KeyNt) "" "3ComNicUnInstall" $(!REG_KEY_ALL_ACCESS) KeyNt2 
  983. ifstr $(KeyNt2) == "" 
  984. CreateRegKey $(KeyNt) {"3ComNicUnInstall" , 0, GenericClass} "" $(!REG_KEY_ALL_ACCESS) +
  985.  "" KeyNt2 
  986. endif 
  987.  
  988. set NewValueList = {{DisplayName, $(NoTitle), $(!REG_VT_SZ), "3Com NIC Diagnostics"}, + 
  989. {UninstallString, $(NoTitle), $(!REG_VT_SZ), "UN3C90X.EXE"}} 
  990.  
  991. Shell $(UtilityInf), AddValueList, $(KeyNt2), $(NewValueList) 
  992. ifint $($ShellCode) != $(!SHELL_CODE_OK) 
  993. goto ShellCodeError 
  994. endif 
  995.  
  996. CloseRegKey $(KeyNt) 
  997. CloseRegKey $(KeyNt2) 
  998.  
  999. endif 
  1000. endif 
  1001.  
  1002.  
  1003.  
  1004.  
  1005.  
  1006. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  1007. install "Install-Tray" 
  1008.  
  1009.  
  1010. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" + 
  1011. $(!REG_KEY_ALL_ACCESS) KeyNt 
  1012.  
  1013. set TrayIconList = {COMSMDEXE,$(NoTitle),$(!REG_VT_SZ),$(TrayIconExe)" -off"} 
  1014. SetRegValue $(KeyNt) $(TrayIconList) 
  1015. CloseRegKey $(KeyNt) 
  1016.  
  1017.  
  1018. endif 
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024. ifstr $(Install_PACE) == "YES" 
  1025. Debug-Output "$(InfFile) : (Install_PACE) == "YES"" 
  1026. install "Install-PACE" 
  1027.  
  1028.  
  1029. Shell "", PaceRegistry 
  1030.  
  1031. endif 
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037. ifstr $(Install_dRMON) == "YES" 
  1038. Debug-Output "$(InfFile) : (Install_dRMON) == "YES""
  1039.  install "Install-dRMON" 
  1040. set SRCDIR_OVERRIDE_Save = $(!STF_SRCDIR_OVERRIDE) 
  1041. set !STF_SRCDIR_OVERRIDE = $(SrcDir)
  1042.  
  1043. Shell $(!STF_WINDOWSSYSPATH)\drmonnt.inf, InstallOption, $(CurrLang),+ 
  1044. $(Option) ,$(SrcDir), YES, YES, YES, NO 
  1045. set !STF_SRCDIR_OVERRIDE = $(SRCDIR_OVERRIDE_Save) 
  1046.  
  1047.                                          
  1048. endif 
  1049.  
  1050.  
  1051.  
  1052.  
  1053. ifstr $(Install_3NIC_Diag) == "YES" 
  1054. Debug-Output "$(InfFile) : (Install_3NIC_Diag) == "YES""
  1055.  install "Install-3nicdiag" 
  1056.  
  1057.  
  1058. ifstr(i) $(!STF_GUI_UNATTENDED) != "YES" 
  1059. RunProgram ExitCode "Windows Directory" "" 3nicdiag.exe "-inf" 
  1060. endif 
  1061.  
  1062.  
  1063. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  1064.  
  1065.  
  1066. ifstr(i) $(Install_Shortcuts) == "YES" 
  1067. Debug-Output "$(InfFile) : (Install_Shortcuts) == "YES""
  1068.  RunProgram ExitCode "Windows Directory" "" COMSMD.EXE "-setup" 
  1069.  
  1070. Debug-Output "$(InfFile) : Enabling Tray Icon" 
  1071. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" +
  1072.  $(!REG_KEY_ALL_ACCESS) KeyNt 
  1073.  
  1074. set TrayIconList = {COMSMDEXE,$(NoTitle),$(!REG_VT_SZ),$(TrayIconExe)" -try"} 
  1075. SetRegValue $(KeyNt) $(TrayIconList) 
  1076. CloseRegKey $(KeyNt) 
  1077. endif 
  1078.  
  1079. endif 
  1080. endif 
  1081.  
  1082.  
  1083. endif
  1084.  
  1085.  EndWait
  1086.  goto successful
  1087.  
  1088. updateparameters =+
  1089.  Debug-Output "$(InfFile) : Updateparameters"
  1090.  set HardParameterKey = $($R3)
  1091.  
  1092. ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1093.  goto ShellCodeError
  1094.  endif
  1095.  CloseRegKey $(KeyParameters)
  1096.  goto successful
  1097.  
  1098. bindingadapter =+
  1099.  Debug-Output "$(InfFile) : bindingadapter"
  1100.  StartDetachedProcess ExitCode "" "" DACONFIG.exe 1
  1101.  
  1102. Return STATUS_SUCCESSFUL
  1103.  
  1104. set Error = "Binding: Sorry, not yet implemented."
  1105.  goto fatal
  1106.  
  1107. removeadapter = +
  1108.  Debug-Output "$(InfFile) : removeadapter"
  1109.  Debug-Output "$(InfFile) : ----> $(ProductKeyName), $(!NTN_RegBase)"
  1110.  Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  1111.  Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  1112.  $(ProductSoftwareName)
  1113.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1114.  goto ShellCodeError
  1115.  endif
  1116.  set RegistryErrorIndex = $($R0)
  1117.  Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1118.  goto fatalregistry
  1119.  endif
  1120.  else
  1121.  Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  1122.  $(ProductSoftwareName), $(!NTN_RegBase)
  1123.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1124.  goto ShellCodeError
  1125.  endif
  1126.  set RegistryErrorIndex = $($R0)
  1127.  Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1128.  goto fatalregistry
  1129.  endif
  1130.  endif
  1131.  
  1132. ifstr(i) $(!STF_PLATFORM) == $(INF_PROCESSER) 
  1133. RunProgram ExitCode "Windows Directory" "" UN3C90X.EXE "-inf" 
  1134. RunProgram ExitCode "Windows Directory" "" DACONFIG.EXE "2" 
  1135. endif
  1136.  
  1137.  
  1138.  
  1139. ifstr $(Install_dRMON) == "YES" 
  1140.  
  1141. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\DTA" $(!REG_KEY_READ) KeydRMON
  1142.  ifstr $(KeydRMON) != "" 
  1143.  
  1144.  
  1145.  
  1146. Shell $(!STF_WINDOWSSYSPATH)\drmonnt.inf, InstallOption, $(CurrLang),$(Option) ,$(SrcDir), YES, YES, YES, -inf 
  1147.  
  1148. CloseRegKey $(KeydRMON)
  1149.  endif
  1150.  endif
  1151.  
  1152.  
  1153. goto end
  1154.  
  1155. UpgradeSoftware = +
  1156.  Debug-Output "$(InfFile) : UpdateSoftware" 
  1157.  
  1158.  
  1159.  
  1160. install "Install-Option" 
  1161. ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS 
  1162. Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE" 
  1163. ifint $($ShellCode) != $(!SHELL_CODE_OK) 
  1164. goto ShellCodeError 
  1165. endif 
  1166. set Error = $($R0) 
  1167. goto fatal 
  1168. endif 
  1169.  
  1170. OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!REG_KEY_ALL_ACCESS) KeyProduct 
  1171. Ifstr $(KeyProduct) != "" 
  1172. Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct) 
  1173. ifint $($ShellCode) != $(!SHELL_CODE_OK) 
  1174. Debug-Output "ShellCode error" 
  1175. goto ShellCodeError 
  1176. endif 
  1177. set !UG_Filename = $($R0) 
  1178.  
  1179. install "Install-INF" 
  1180. ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS 
  1181. goto fatal 
  1182. endif 
  1183.  
  1184. SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)} 
  1185. SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)} 
  1186. SetRegValue $(KeyProduct) {Review,$(NoTitle),$(!REG_VT_DWORD),$(ProductReview)} 
  1187. CloseRegKey $(KeyProduct) 
  1188.  
  1189.  
  1190. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) $(!REG_KEY_ALL_ACCESS) KeyService
  1191.  Ifstr $(KeyService) != "" 
  1192. SetRegValue $(KeyService) {ImagePath,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareUpgradePath)}
  1193.  else 
  1194. goto fatalregistry 
  1195. endif 
  1196. CloseRegKey $(KeyService) 
  1197.  
  1198.  
  1199. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\EventLog\System\"$(ProductHardwareName) $(!REG_KEY_ALL_ACCESS) KeyEventLog
  1200.  Ifstr $(KeyEventLog) != "" 
  1201. SetRegValue $(KeyEventLog) {EventMessageFile,$(NoTitle),$(!REG_VT_SZ),$(NetEventDLL)} 
  1202. else 
  1203. goto fatalregistry 
  1204. endif 
  1205. CloseRegKey $(KeyEventLog) 
  1206.  
  1207.  
  1208. OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) $(!REG_KEY_ALL_ACCESS) KeyNt 
  1209.  
  1210. set LoopList = {1,2,3,4,5,6,7,8} 
  1211. set WinNTList = {WinNT,$(NoTitle),$(!REG_VT_SZ),YES} 
  1212. Set NewValueList = {{WakeOnMagic,$(NoTitle),$(!REG_VT_SZ),"YES"},+ 
  1213. {WakeOnLink,$(NoTitle),$(!REG_VT_SZ),"NO"},+ 
  1214. {FlowControl,$(NoTitle),$(!REG_VT_SZ),"YES"}} 
  1215.  
  1216. ForListDo $(LoopList) 
  1217. OpenRegKey $(KeyNt) "" $(ProductHardwareName)$($)"\Parameters" $(!REG_KEY_ALL_ACCESS) TestKey 
  1218.  
  1219. ifstr $(TestKey) != $(KeyNull) 
  1220. Shell $(UtilityInf), AddValueList, $(TestKey), $(NewValueList) 
  1221. ifint $($ShellCode) != $(!SHELL_CODE_OK) 
  1222. goto ShellCodeError 
  1223. endif 
  1224.  
  1225. OpenRegKey $(!REG_H_LOCAL) "" $(NetworkCardsKey)$($)"\NetRules" $(!REG_KEY_ALL_ACCESS) NetCardKey 
  1226.  
  1227. ifstr $(NetCardKey) != $(KeyNull) 
  1228. SetRegValue $(NetCardKey) {"InfName",$(NoTitle),$(!REG_VT_SZ),$(!UG_Filename)} 
  1229. CloseRegKey $(NetCardKey) 
  1230. endif 
  1231. CloseRegKey $(TestKey) 
  1232. endif 
  1233.  
  1234. EndForListDo 
  1235. else 
  1236. goto fatalregistry 
  1237. endif 
  1238.  
  1239.  
  1240.  
  1241.  
  1242. ifstr $(!STF_PLATFORM) == $(INF_PROCESSER) 
  1243.  
  1244.  
  1245. install "Install-Uninstaller" 
  1246.  
  1247.  
  1248.  
  1249. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\3Com\"$(ProductSoftwareName) $(!REG_KEY_ALL_ACCESS) + 
  1250. KeyNt 
  1251.  
  1252. set TrayIconList = {3CUNINSTALL,$(NoTitle),$(!REG_VT_SZ),$(3CNUMBER)} 
  1253. SetRegValue $(KeyNt) $(TrayIconList) 
  1254. CloseRegKey $(KeyNt) 
  1255.  
  1256.  
  1257.  
  1258.  
  1259. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  1260. ifstr $(Install_3NIC_Diag) == "YES" 
  1261.  
  1262. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" + 
  1263. $(!REG_KEY_ALL_ACCESS) KeyNt 
  1264. ifstr $(KeyNt) == "" 
  1265. CreateRegKey $(!REG_H_LOCAL) {"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall",+ 
  1266. 0, GenericClass} "" $(!REG_KEY_ALL_ACCESS) "" KeyNt 
  1267. endif 
  1268.  
  1269. OpenRegKey $(KeyNt) "" "3ComNicUnInstall" $(!REG_KEY_ALL_ACCESS) KeyNt2 
  1270. ifstr $(KeyNt2) == "" 
  1271. CreateRegKey $(KeyNt) {"3ComNicUnInstall" , 0, GenericClass} "" $(!REG_KEY_ALL_ACCESS) +
  1272.  "" KeyNt2 
  1273. endif 
  1274.  
  1275. set NewValueList = {{DisplayName, $(NoTitle), $(!REG_VT_SZ), "3Com NIC Diagnostics"},+ 
  1276. {UninstallString, $(NoTitle), $(!REG_VT_SZ), "UN3C90X.EXE"}} 
  1277.  
  1278. Shell $(UtilityInf), AddValueList, $(KeyNt2), $(NewValueList) 
  1279. ifint $($ShellCode) != $(!SHELL_CODE_OK) 
  1280. goto ShellCodeError 
  1281. endif 
  1282.  
  1283. CloseRegKey $(KeyNt) 
  1284. CloseRegKey $(KeyNt2) 
  1285.  
  1286. endif 
  1287. endif 
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  1298. install "Install-Tray" 
  1299.  
  1300.  
  1301. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" + 
  1302. $(!REG_KEY_ALL_ACCESS) KeyNt 
  1303.  
  1304. set TrayIconList = {COMSMDEXE,$(NoTitle),$(!REG_VT_SZ),$(TrayIconExe)" -off"} 
  1305. SetRegValue $(KeyNt) $(TrayIconList) 
  1306. CloseRegKey $(KeyNt) 
  1307.  
  1308.  
  1309. endif 
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315. ifstr $(Install_PACE) == "YES" 
  1316. Debug-Output "$(InfFile) : (Install_PACE) == "YES""
  1317.  install "Install-PACE" 
  1318.  
  1319.  
  1320. Shell "", PaceRegistry 
  1321.  
  1322. endif 
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328. ifstr $(Install_dRMON) == "YES" 
  1329. Debug-Output "$(InfFile) : (Install_dRMON) == "YES""
  1330.  install "Install-dRMON" 
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336. set InstallMode_Save = $(!NTN_InstallMode) 
  1337. set !NTN_InstallMode = install 
  1338. set SRCDIR_OVERRIDE_Save = $(!STF_SRCDIR_OVERRIDE) 
  1339. set !STF_SRCDIR_OVERRIDE = $(SrcDir) 
  1340.  
  1341. Shell $(!STF_WINDOWSSYSPATH)\drmonnt.inf, InstallOption, $(CurrLang), + 
  1342. $(Option) ,$(SrcDir), YES, YES, YES, NO 
  1343. set !NTN_InstallMode = $(InstallMode_Save) 
  1344. set !STF_SRCDIR_OVERRIDE = $(SRCDIR_OVERRIDE_Save) 
  1345. endif 
  1346.  
  1347.  
  1348.  
  1349.  
  1350. ifstr $(Install_3NIC_Diag) == "YES" 
  1351. Debug-Output "$(InfFile) : (Install_3NIC_Diag) == "YES"" 
  1352. install "Install-3nicdiag" 
  1353.  
  1354.  
  1355. ifstr(i) $(!STF_GUI_UNATTENDED) != "YES" 
  1356. RunProgram ExitCode "Windows Directory" "" 3nicdiag.exe "-inf" 
  1357. endif 
  1358.  
  1359.  
  1360. ifstr(i) (*($(CurrentVersionValue),4)) == $(NT400VersionConstant) 
  1361.  
  1362.  
  1363. Debug-Output "$(InfFile) : (Install_Shortcuts) == $(Install_Shortcuts)" 
  1364. ifstr(i) $(Install_Shortcuts) == "YES" 
  1365. Debug-Output "$(InfFile) : (Install_Shortcuts) == "YES"" 
  1366. RunProgram ExitCode "Windows Directory" "" COMSMD.EXE "-setup" 
  1367.  
  1368. Debug-Output "$(InfFile) : Enabling Tray Icon" 
  1369. OpenRegKey $(!REG_H_LOCAL) "" "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" +
  1370.  $(!REG_KEY_ALL_ACCESS) KeyNt 
  1371.  
  1372. set TrayIconList = {COMSMDEXE,$(NoTitle),$(!REG_VT_SZ),$(TrayIconExe)" -try"} 
  1373. SetRegValue $(KeyNt) $(TrayIconList) 
  1374. CloseRegKey $(KeyNt) 
  1375. endif 
  1376.  
  1377. endif 
  1378. endif 
  1379.  
  1380.  
  1381.  
  1382. endif
  1383.  
  1384.  goto end
  1385.  
  1386. successful = +
  1387.  Debug-Output "$(InfFile) : Successful"
  1388.  goto end
  1389.  
  1390. abandon = +
  1391.  Debug-Output "$(InfFile) : Abandon"
  1392.  ForListDo $(OEM_ABANDON_OPTIONS)
  1393.  Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  1394.  $(ProductSoftwareName), $($)
  1395.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1396.  goto ShellCodeError
  1397.  endif
  1398.  set RegistryErrorIndex = $($R0)
  1399.  Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1400.  goto fatalregistry
  1401.  endif
  1402.  EndForListDo
  1403.  Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  1404.  Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  1405.  $(ProductSoftwareName), FALSE
  1406.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1407.  goto ShellCodeError
  1408.  endif
  1409.  set RegistryErrorIndex = $($R0)
  1410.  Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  1411.  goto fatalregistry
  1412.  endif
  1413.  endif
  1414.  goto end
  1415.  
  1416. warning = +
  1417.  Debug-Output "$(InfFile) : warning"
  1418.  Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  1419.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1420.  goto ShellCodeError
  1421.  endif
  1422.  ifstr(i) $($R1) == "OK"
  1423.  goto $(to)
  1424.  else-ifstr(i) $($R1) == "CANCEL"
  1425.  goto $(from)
  1426.  else
  1427.  goto "end"
  1428.  endif
  1429.  
  1430. nonfatalinfo = +
  1431.  Debug-Output "$(InfFile) : nonfatalinfo"
  1432.  Set CommonStatus = STATUS_USERCANCEL
  1433.  Set Severity = STATUS
  1434.  goto nonfatalmsg
  1435.  
  1436. nonfatal = +
  1437.  Debug-Output "$(InfFile) : nonfatal"
  1438.  Set Severity = NONFATAL
  1439.  goto nonfatalmsg
  1440.  
  1441. nonfatalmsg = +
  1442.  Debug-Output "$(InfFile) : nonfatalmsg"
  1443.  ifstr(i) $(Error) == ""
  1444.  Set Severity = NONFATAL
  1445.  Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1446.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1447.  goto ShellCodeError
  1448.  endif
  1449.  set Error = $($R0)
  1450.  endif
  1451.  Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  1452.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1453.  goto ShellCodeError
  1454.  endif
  1455.  ifstr(i) $($R1) == "OK"
  1456.  goto $(from)
  1457.  else
  1458.  
  1459. goto "RemoveAdapter"
  1460.  endif
  1461.  
  1462. fatalregistry = +
  1463.  Debug-Output "$(InfFile) : fatalregistry"
  1464.  Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  1465.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1466.  goto ShellCodeError
  1467.  endif
  1468.  set Error = $($R0)
  1469.  goto fatal
  1470.  
  1471. fatal = +
  1472.  Debug-Output "$(InfFile) : fatal"
  1473.  ifstr(i) $(Error) == ""
  1474.  Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1475.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1476.  goto ShellCodeError
  1477.  endif
  1478.  set Error = $($R0)
  1479.  endif
  1480.  Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  1481.  ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1482.  goto ShellCodeError
  1483.  endif
  1484.  goto setfailed
  1485.  
  1486. ShellCodeError = +
  1487.  ifint $($ShellCode) == $(!SHELL_CODE_NO_SUCH_INF)
  1488.  Debug-Output "$(InfFile) : ShellCodeError - SHELL_CODE_NO_SUCH_INF"
  1489.  else-ifint $($ShellCode) == $(!SHELL_CODE_NO_SUCH_SECTION)
  1490.  Debug-Output "$(InfFile) : ShellCodeError - SHELL_CODE_NO_SUCH_SECTION"
  1491.  else
  1492.  Debug-Output "$(InfFile) : ShellCodeError - SHELL_CODE_ERROR"
  1493.  endif
  1494.  set DlgType = "MessageBox"
  1495.  set STF_MB_TITLE = $(ShellCodeErrorTitle)
  1496.  set STF_MB_TEXT = $(ShellCodeErrorText) 
  1497. set STF_MB_TYPE = 1
  1498.  set STF_MB_ICON = 3
  1499.  set STF_MB_DEF = 1
  1500.  ui start "Error Message"
  1501.  goto setfailed
  1502.  
  1503. setfailed = +
  1504.  Debug-Output "$(InfFile) : Setfailed"
  1505.  set CommonStatus = STATUS_FAILED
  1506.  ifstr(i) $(OEM_ABANDON_ON) == TRUE
  1507.  set OEM_ABANDON_ON = FALSE
  1508.  goto abandon
  1509.  endif
  1510.  goto end
  1511.  
  1512. end = +
  1513.  goto term
  1514.  
  1515. term = +
  1516.  Return $(CommonStatus)
  1517.  
  1518.  
  1519. [Install-Option]
  1520.  set STF_VITAL = ""
  1521.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1522.  Debug-Output $(InfName)"Adding files: Files-$(NDIS_VER), SrcDir=$(SrcDir)"
  1523.  AddSectionFilesToCopyList Files-$(NDIS_VER) $(SrcDir)WIN32\$(!STF_PLATFORM) $(!STF_WINDOWSSYSPATH)\drivers
  1524.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1525.  CopyFilesInCopyList
  1526.  Exit
  1527.  
  1528. [Install-Uninstaller]
  1529.  set STF_VITAL = ""
  1530.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1531.  AddSectionFilesToCopyList Files-Uninstaller $(SrcDir)win32 $(!STF_WINDOWSSYSPATH)
  1532.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1533.  CopyFilesInCopyList
  1534.  Exit
  1535.  
  1536.  
  1537. [Install-3nicdiag]
  1538.  set STF_VITAL = ""
  1539.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1540.  AddSectionFilesToCopyList Files-3nicdiag $(SrcDir)win32 $(!STF_WINDOWSSYSPATH)
  1541.  AddSectionFilesToCopyList Files-HwDll $(SrcDir)WINNT $(!STF_WINDOWSSYSPATH)
  1542.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1543.  CopyFilesInCopyList
  1544.  Exit
  1545.  
  1546. [Install-PACE]
  1547.  set STF_VITAL = ""
  1548.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1549.  AddSectionFilesToCopyList Files-PACE $(SrcDir)win32 $(!STF_WINDOWSSYSPATH)
  1550.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1551.  CopyFilesInCopyList
  1552.  Exit
  1553.  
  1554. [Install-Tray]
  1555.  set STF_VITAL = ""
  1556.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1557.  AddSectionFilesToCopyList Files-Tray $(SrcDir)win32 $(!STF_WINDOWSSYSPATH)
  1558.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1559.  CopyFilesInCopyList
  1560.  Exit
  1561.  
  1562. [Install-dRMON]
  1563.  set STF_VITAL = ""
  1564.  set STF_OVERWRITE = "VERIFYSOURCEOLDER"
  1565.  AddSectionFilesToCopyList Files-dRMON $(SrcDir)drmon $(!STF_WINDOWSSYSPATH)
  1566.  AddSectionFilesToCopyList Files-dRMONINF $(SrcDir)WINNT $(!STF_WINDOWSSYSPATH)
  1567.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1568.  CopyFilesInCopyList
  1569.  Exit
  1570.  
  1571. [Install-INF]
  1572.  set STF_VITAL = ""
  1573.  AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
  1574.  set !STF_NCPA_FLUSH_COPYLIST = TRUE
  1575.  CopyFilesInCopyList
  1576.  Exit
  1577.  
  1578. [Source Media Descriptions]
  1579.  1 = "Windows NT Setup Disk #1" 
  1580. 2 = "3Com Etherdisk for Fast EtherLink XL / EtherLink XL Adapters (DISK 1)", TAGFILE = DISK1
  1581.  3 = "3Com Etherdisk for Fast EtherLink XL / EtherLink XL Adapters (DISK 2)", TAGFILE = DISK2
  1582.  
  1583. [ProductType]
  1584. STF_PRODUCT = Winnt
  1585.  
  1586. [Files-Inf] 
  1587. 3, oemsetup.inf,SIZE=36000, RENAME=$(!UG_Filename)
  1588.  
  1589. [Files-3nicdiag]
  1590. 3,3nicdiag.exe, SIZE=165504
  1591. 3,3nicdiag.hlp, SIZE=20877
  1592. 3,3varaddr.txt, SIZE=113
  1593.  
  1594. [Files-HwDll]
  1595. 3,hwaccess.dll,SIZE=20198
  1596. 3,pcomdrv.sys, SIZE=5000
  1597. 3,3c90xcfg.dll, SIZE=59458
  1598. 3,drmonnt.inf, SIZE=15000
  1599.  
  1600. [Files-Tray]
  1601. 3,comsmd.exe, SIZE=8957
  1602.  
  1603. [Files-dRMON]
  1604. 3,undrmon.exe, SIZE=8957
  1605.  
  1606. [Files-dRMONINF]
  1607. 3,drmonnt.inf, SIZE=8957
  1608.  
  1609. [Files-PACE]
  1610. 3,pacecfg.cpl, SIZE=107457
  1611. 3,pacecfg.hlp, SIZE=6617
  1612.  
  1613. [Files-Uninstaller]
  1614. 3,UN3C90X.EXE, SIZE=6617
  1615. 3,daconfig.exe, SIZE=20000 
  1616.  
  1617. [Files-NDIS3]
  1618. 3,EL90xnd3.SYS , SIZE=25001
  1619.  
  1620. [Files-NDIS4]
  1621. 3,EL90xnd4.SYS , SIZE=25001
  1622.  
  1623.  
  1624. [LanguagesSupported]
  1625.  ENG
  1626.  
  1627. [OptionsTextENG]
  1628.  3C90X = "3Com Fast EtherLink/Etherlink XL PCI Busmaster NIC"
  1629.  
  1630. [FileConstantsENG]
  1631.  ProCaption = "Windows NT NIC Setup"
  1632.  ProCancel = "Cancel"
  1633.  ProCancelMsg = "Windows NT Networking is not correctly installed. "+
  1634.  "Are you sure you want to cancel copying files?"
  1635.  ProCancelCap = "Network Setup Message"
  1636.  ProText1 = "Copying:"
  1637.  ProText2 = "To:"
  1638.  
  1639. ConnectionList = ^(ConnectionChoices, 1)
  1640. ConnectionValues = ^(ConnectionChoices, 2)
  1641. NoList = ^(NoChoices, 1)
  1642. NoValues = ^(NoChoices, 2)
  1643. ShellCodeErrorTitle = "Error: "$(Function$(Option)Title)
  1644. ShellCodeErrorText = "Shell Code Error."
  1645. CANNOT_FIND_ANY_CARD = "Network card is not present in the system"
  1646.  
  1647. [DialogConstantsENG]
  1648. Help = "&Help"
  1649. Exit = "Cancel"
  1650. OK = "OK"
  1651. HelpContext = ""
  1652. Continue = "Continue"
  1653. Cancel = "Cancel"
  1654.  
  1655.  
  1656.  
  1657.  
  1658.  
  1659.  
  1660.  
  1661.