home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / oemnsvbh.inf < prev    next >
INI File  |  1998-04-25  |  21KB  |  532 lines

  1. [Identification]
  2.     OptionType = NetService
  3. [Options]
  4.     NETMON
  5.     NETMONTOOLS
  6. [FileConstants]
  7. UtilityInf      = "UTILITY.INF"
  8. subroutineinf   = "SUBROUTN.INF"
  9. SoftwareType    = "service"
  10. Exit_Code       = 0
  11. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  12. Manufacturer    = "Microsoft"
  13. ProductMajorVersion     = "4"
  14. ProductMinorVersion     = "0"
  15. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  16. ProductSoftwareName     = "bh"
  17. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\bhnt.sys"
  18. NetRuleSoftwareType     = "bloodhound ndisTransport bhService"
  19. NetRuleSoftwareClass    = {"bhService ndisTransport"}
  20. NetRuleSoftwareUse      = "transport yes yes"
  21. NetRuleSoftwareBindForm = """bh"" yes yes simple"
  22. ProductNMAgentName    = "nmagent"
  23. ProductNMAgentImagePath    = "%SystemRoot%\System32\nmagent.exe"
  24. ProductNMAgentSvcType    = "service"
  25. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  26. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductSoftwareName)"\Parameters"
  27. ServiceKeyName    = $(!NTN_ServiceBase)"\"$(ProductSoftwareName)
  28. NMAgentKeyName    = $(!NTN_ServiceBase)"\"$(ProductNMAgentName)
  29. [GeneralConstants]
  30. from      = ""
  31. to        = ""
  32. ExitCodeOk     = 0
  33. ExitCodeCancel = 1
  34. ExitCodeFatal  = 2
  35. KeyNull         = ""
  36. MAXIMUM_ALLOWED   = 33554432
  37. RegistryErrorIndex = NO_ERROR
  38. KeyProduct      = ""
  39. KeyParameters   = ""
  40. TRUE            = 1
  41. FALSE           = 0
  42. NoTitle            = 0
  43. ExitState   = "Active"
  44. OldVersionExisted = $(FALSE)
  45. DriverPath      = $(!STF_NTPATH)\drivers
  46. [date]
  47.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  48. [Identify]
  49.     read-syms Identification
  50.     set Status     = STATUS_SUCCESSFUL
  51.     set Identifier = $(OptionType)
  52.     set Media      = #("Source Media Descriptions", 1, 1)
  53.     Return $(Status) $(Identifier) $(Media)
  54. [ReturnOptions]
  55.     set Status        = STATUS_FAILED
  56.     set OptionList     = {}
  57.     set OptionTextList = {}
  58.     set LanguageList = ^(LanguagesSupported, 1)
  59.     Ifcontains(i) $($0) in $(LanguageList)
  60.         goto returnoptions
  61.     else
  62.         set Status = STATUS_NOLANGUAGE
  63.         goto finish_ReturnOptions
  64.     endif
  65. returnoptions = +
  66.     set AllOptionsList     = ^(Options, 1)
  67.     set AllOptionsTextList = ^(OptionsText$($0), 1)
  68.     ifstr(i) $(!STF_PRODUCT) == "WINNT"
  69.         set OptionList = >({}, *($(AllOptionsList),1))
  70.         set OptionTextList = >({}, *($(AllOptionsTextList), 1))
  71.     else
  72.         set OptionList = $(AllOptionsList)
  73.         set OptionTextList = $(AllOptionsTextList)
  74.     endif
  75.     set Status         = STATUS_SUCCESSFUL
  76. finish_ReturnOptions = +
  77.     Return $(Status) $(OptionList) $(OptionTextList)
  78. [InstallOption]
  79.     set Option   = $($1)
  80.     set AddCopy  = $($3)
  81.     set DoCopy   = "NO"
  82.     set DoConfig = $($5)
  83.     Split-String $($2), "\", lSrcDirParts
  84.     QueryListSize cSrcDirParts $(lSrcDirParts)
  85.     ifstr(i) *($(lSrcDirParts),$(cSrcDirParts)) != "\"
  86.         Set SrcDir = $($2)"\"
  87.     else
  88.         Set SrcDir = $($2)
  89.     Endif
  90.     set LanguageList = ^(LanguagesSupported, 1)
  91.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  92.         Return STATUS_NOLANGUAGE
  93.     endif
  94.     Debug-Output "OEMNSVBH.INF: STF_CWDDIR is: "$(!STF_CWDDIR)
  95.     Debug-Output "OEMNSVBH.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  96.     set-subst LF = "\n"
  97.     read-syms GeneralConstants
  98.     read-syms FileConstants
  99.     read-syms DialogConstants$(!STF_LANGUAGE)
  100.     ifstr(i) $(!NTN_Origination) == "NCPA"
  101.         set Continue = $(OK)
  102.     endif
  103.     read-syms FileConstants$(!STF_LANGUAGE)
  104.     read-syms $(Option)Constants$(!STF_LANGUAGE)
  105.     detect date
  106.     set-title  $(FunctionTitle)
  107.     set to   = Begin
  108.     set from = Begin
  109.     set CommonStatus = STATUS_SUCCESSFUL
  110.     EndWait
  111. Begin = +
  112.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  113.         set StartLabel = removeadapter
  114.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  115.         set StartLabel = UpgradeSoftware
  116.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  117.         set StartLabel = bindingadapter
  118.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  119.         Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  120.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  121.             Debug-Output "OEMNSVBH.INF: ShellCode error: cannot get an error string."
  122.             goto ShellCodeError
  123.         endif
  124.         set Error = $($R0)
  125.         set from = end
  126.         set to = end
  127.         goto nonfatalinfo
  128.     else
  129.         set StartLabel = installadapter
  130.     endif
  131.     set RadioDefault = 2
  132.     set RadioIn = {$(RadioDefault)}
  133.     set from = $(fatal)
  134.     set to = $(fatal)
  135.     goto $(StartLabel)
  136. installadapter = +
  137.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  138.     Ifstr $(KeyProduct) != $(KeyNull)
  139.         CloseRegKey $(KeyProduct)
  140.         Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  141.             $(ProductVersion)
  142.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  143.             Debug-Output "ShellCode error: cannot get an error string."
  144.             goto ShellCodeError
  145.         endif
  146.         goto end
  147.     endif
  148.     CloseRegKey $(KeyProduct)
  149.     goto installproduct
  150. installproduct = +
  151.     StartWait
  152.     ifint $(OldVersionExisted) == $(FALSE)
  153.         Ifstr(i) $(DoCopy) == "YES"
  154.            Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  155.            Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  156.                Goto ShellCodeError
  157.            Else-Ifstr(i) $($R0) == STATUS_FAILED
  158.                Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  159.                ifint $($ShellCode) != $(!SHELL_CODE_OK)
  160.                    goto ShellCodeError
  161.                endif
  162.                set Error = $($R0)
  163.                Goto fatal
  164.            Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  165.                Goto successful
  166.            Endif
  167.            Split-String $($R1), "\", lSrcDirParts
  168.            QueryListSize cSrcDirParts $(lSrcDirParts)
  169.            ifstr(i) *($(lSrcDirParts),$(cSrcDirParts)) != "\"
  170.                Set SrcDir = $($R1)"\"
  171.            else
  172.                Set SrcDir = $($R1)
  173.            Endif
  174.         Endif
  175.         install "Install-Option"
  176.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  177.            Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  178.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  179.                goto ShellCodeError
  180.            endif
  181.            set Error = $($R0)
  182.            goto fatal
  183.         endif
  184.         set OEM_ABANDON_ON = TRUE
  185.         Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  186.             $(ProductSoftwareName), +
  187.             $(ProductSoftwareName), +
  188.             $(ProductSoftwareDisplayName), $(STF_CONTEXTINFNAME), +
  189.             $(ProductSoftwareImagePath), "kernel", "", {}, "",+
  190.             $(NetEventDLL)
  191.         set RegistryErrorIndex = $($R0)
  192.         Ifstr(i) $(RegistryErrorIndex) !=  NO_ERROR
  193.             EndWait
  194.             CloseRegKey $($R1)
  195.             CloseRegKey $($R2)
  196.             CloseRegKey $($R3)
  197.             CloseRegKey $($R4)
  198.             CloseRegKey $($R5)
  199.             goto fatalRegistry
  200.         endif
  201.         Set SoftProductKey      = $($R1)
  202.         Set SoftNetRuleKey      = $($R2)
  203.         Set BhServiceKey        = $($R3)
  204.         set KeyParameters       = $($R4)
  205.         Set SoftLinkageKey      = $($R5)
  206.         set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  207.                            {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  208.                            {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  209.                            {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  210.                            {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  211.                            {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  212.                            {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  213.         Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  214.         set RegistryErrorIndex = $($R0)
  215.         Ifstr $(RegistryErrorIndex) != NO_ERROR
  216.             CloseRegKey $(SoftProductKey)
  217.             CloseRegKey $(SoftNetRuleKey)
  218.             CloseRegKey $(BhServiceKey)
  219.             CloseRegKey $(SoftLinkageKey)
  220.             CloseRegKey $(KeyParameters)
  221.             goto fatalRegistry
  222.         endif
  223.         set NewValueList = {{type    ,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)}, +
  224.                             {use     ,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  225.                             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  226.                             {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  227.                             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  228.         Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  229.         set RegistryErrorIndex = $($R0)
  230.         Ifstr $(RegistryErrorIndex) != NO_ERROR
  231.             CloseRegKey $(SoftProductKey)
  232.             CloseRegKey $(SoftNetRuleKey)
  233.             CloseRegKey $(BhServiceKey)
  234.             CloseRegKey $(SoftLinkageKey)
  235.             CloseRegKey $(KeyParameters)
  236.             goto fatalRegistry
  237.         endif
  238.         CloseRegKey $(SoftProductKey)
  239.         CloseRegKey $(SoftNetRuleKey)
  240.         CloseRegKey $(SoftLinkageKey)
  241.         set NewValueList = {{Nal,$(NoTitle),$(!REG_VT_MULTI_SZ),{"NDIS30","RNAL"}}}
  242.         Shell  $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
  243.         set RegistryErrorIndex = $($R0)
  244.         Ifstr $(RegistryErrorIndex) != NO_ERROR
  245.             CloseRegKey $(BhServiceKey)
  246.             goto fatalRegistry
  247.         endif
  248.         CloseRegKey $(KeyParameters)
  249.         CreateRegKey $(BhServiceKey) {"Performance",$(NoTitle),GenericClass} "" +
  250.                 $(MAXIMUM_ALLOWED) "" KeyPerformance
  251.         set NewValueList = {{Library,$(NoTitle),$(!REG_VT_SZ),bhmon.dll}, +
  252.                             {Open,$(NoTitle),$(!REG_VT_SZ),"BhOpenPerformanceData"}, +
  253.                             {Close,$(NoTitle),$(!REG_VT_SZ),"BhClosePerformanceData"}, +
  254.                             {Collect,$(NoTitle),$(!REG_VT_SZ),"BhCollectPerformanceData"}}
  255.         Shell  $(UtilityInf), AddValueList, $(KeyPerformance), $(NewValueList)
  256.         set RegistryErrorIndex = $($R0)
  257.         Ifstr $(RegistryErrorIndex) != NO_ERROR
  258.             CloseRegKey $(KeyPerformance)
  259.             CloseRegKey $(BhServiceKey)
  260.             goto fatalRegistry
  261.         endif
  262.         CloseRegKey $(KeyPerformance)
  263.         Shell $(UtilityInf), CreateService, $(ProductNMAgentName),+
  264.             $(ProductNMAgentDisplayName),+
  265.             $(ProductNMAgentImagePath),+
  266.             $(ProductNMAgentSvcType), "",+
  267.             {"bh"}, ""
  268.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  269.             Debug-Output "OEMNSVBH.INF: ShellCode error"
  270.             goto ShellCodeError
  271.         endif
  272.         set RegistryErrorIndex = $($R0)
  273.         CloseRegKey $($R1)
  274.         CloseRegKey $($R2)
  275.         CloseRegKey $($R3)
  276.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  277.             EndWait
  278.             Debug-Output "OEMNSVBH.INF: Registry error creating Network Monitor Agent service"
  279.             goto fatalregistry
  280.         endif
  281.     endif
  282.     ifstr(i) $(Option) == "NETMONTOOLS"
  283.         read-syms IconInfo$(!STF_LANGUAGE)
  284.         Install Install-Shortcuts
  285.     endif
  286.     goto successful
  287. bindingadapter =+
  288.     set Error = "Binding: Sorry, not yet implemented."
  289.     goto fatal
  290. removeadapter = +
  291.     ifstr(i) $(Option) == "NETMONTOOLS"
  292.         read-syms IconInfo$(!STF_LANGUAGE)
  293.         Install Remove-Shortcuts
  294.         LibraryProcedure ResultList, $(!LIBHANDLE), Delnode, $(!STF_WINDOWSSYSPATH)"\netmon"
  295.     endif
  296.     AddfileToDeleteList $(!STF_WINDOWSSYSPATH)"\BHCTRL.CPL"
  297.     Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  298.         $(ProductSoftwareName)
  299.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  300.         Debug-Output "ShellCode error"
  301.         goto ShellCodeError
  302.     endif
  303.     set RegistryErrorIndex = $($R0)
  304.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  305.         goto fatalregistry
  306.     endif
  307.     Shell $(UtilityInf), RemoveService,  $(ProductNMAgentName), "YES"
  308.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  309.         Debug-Output "ShellCode error"
  310.         goto ShellCodeError
  311.     endif
  312.     set RegistryErrorIndex = $($R0)
  313.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  314.         goto fatalregistry
  315.     endif
  316.     goto end
  317. UpgradeSoftware = +
  318.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  319.     Ifstr $(KeyProduct) != $(KeyNull)
  320.         install "Install-Update"
  321.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  322.             goto fatal
  323.         endif
  324.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  325.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  326.         SetRegValue $(KeyProduct) {"Description",$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)}
  327.         SetRegValue $(KeyProduct) {"Title",$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)}
  328.         SetRegValue $(KeyProduct) {"SoftwareType",$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)}
  329.         CloseRegKey $(KeyProduct)
  330.         OpenRegKey $(!REG_H_LOCAL) "" $(ServiceKeyName) $(MAXIMUM_ALLOWED) ServiceKey
  331.         ifstr(i) $(ServiceKey) != ""
  332.             SetRegValue $(ServiceKey) {"DisplayName",$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDisplayName)}
  333.             CloseRegKey $(ServiceKey)
  334.         endif
  335.         OpenRegKey $(!REG_H_LOCAL) "" $(NMAgentKeyName) $(MAXIMUM_ALLOWED) NMAgentKey
  336.         ifstr(i) $(NMAgentKey) != ""
  337.             SetRegValue $(NMAgentKey) {"DisplayName",$(NoTitle),$(!REG_VT_SZ),$(ProductNMAgentDisplayName)}
  338.             CloseRegKey $(NMAgentKey)
  339.         endif
  340.     else
  341.         goto fatalregistry
  342.     endif
  343.     goto end
  344. successful = +
  345.     goto end
  346. warning = +
  347.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  348.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  349.         goto ShellCodeError
  350.     endif
  351.     ifstr(i) $($R1) == "OK"
  352.         goto $(to)
  353.     else-ifstr(i) $($R1) == "CANCEL"
  354.         goto $(from)
  355.     else
  356.         goto "end"
  357.     endif
  358. nonfatalinfo = +
  359.     Set CommonStatus = STATUS_USERCANCEL
  360.     Set Severity = STATUS
  361.     goto nonfatalmsg
  362. nonfatal = +
  363.     Set Severity = NONFATAL
  364.     goto nonfatalmsg
  365. nonfatalmsg = +
  366.     ifstr(i) $(Error) == ""
  367.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  368.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  369.             goto ShellCodeError
  370.         endif
  371.         set Error = $($R0)
  372.     endif
  373.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  374.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  375.         goto ShellCodeError
  376.     endif
  377.     ifstr(i) $($R1) == "OK"
  378.         goto $(from)
  379.     else
  380.         goto "end"
  381.     endif
  382. fatalregistry = +
  383.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  384.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  385.         goto ShellCodeError
  386.     endif
  387.     set Error = $($R0)
  388.     goto fatal
  389. fatal = +
  390.     ifstr(i) $(Error) == ""
  391.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  392.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  393.             goto ShellCodeError
  394.         endif
  395.         set Error = $($R0)
  396.     endif
  397.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  398.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  399.         goto ShellCodeError
  400.     endif
  401.     goto setfailed
  402. ShellCodeError = +
  403.     set DlgType      = "MessageBox"
  404.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  405.     set STF_MB_TEXT  = $(ShellCodeErrorText) 
  406.     set STF_MB_TYPE  = 1
  407.     set STF_MB_ICON  = 3
  408.     set STF_MB_DEF   = 1
  409.     ui start "Error Message"
  410.     goto setfailed
  411. setfailed = +
  412.     set CommonStatus = STATUS_FAILED
  413.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  414.         set OEM_ABANDON_ON = FALSE
  415.         goto removeadapter
  416.     endif
  417.     goto end
  418. end = +
  419.     goto term
  420. term = +
  421.     Return $(CommonStatus)
  422. [Install-Shortcuts]
  423.     ShowCommonProgManGroup $(NetAdminGroupName), 1
  424.     RemoveCommonProgManItem $(NetAdminGroupName), $(NetMonitor)
  425.     CreateCommonProgManItem $(NetAdminGroupName), $(NetMonitor), "netmon\netmon.exe" ""  0
  426.     ShowCommonProgManGroup $(NetAdminGroupName), 6
  427.     exit
  428. [Remove-Shortcuts]
  429.     ShowCommonProgManGroup $(NetAdminGroupName), 1
  430.     RemoveCommonProgManItem $(NetAdminGroupName), $(NetMonitor)
  431.     ShowCommonProgManGroup $(NetAdminGroupName), 6
  432.     exit
  433. [Install-Option]
  434.     set STF_VITAL = ""
  435.     ifstr(i) $(AddCopy) == "YES"
  436.         ifstr(i) $(Option) == "NETMONTOOLS"
  437.             CreateDir $(!STF_WINDOWSSYSPATH)\Netmon
  438.             CreateDir $(!STF_WINDOWSSYSPATH)\Netmon\Parsers
  439.             CreateDir $(!STF_WINDOWSSYSPATH)\Netmon\Captures
  440.             AddSectionFilesToCopyList Files-TOOLS $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon
  441.             AddSectionFilesToCopyList Files-PARSERS $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon\Parsers
  442.             AddSectionFilesToCopyList Files-CAPTURES $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon\Captures
  443.         endif
  444.         AddSectionFilesToCopyList Files-NETMON $(SrcDir) $(!STF_WINDOWSSYSPATH)
  445.         AddSectionFilesToCopyList Files-DRIVERS $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  446.     endif
  447.     ifstr(i) $(DoCopy) == "YES"
  448.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  449.        CopyFilesInCopyList
  450.     else
  451.         ifstr(i) $(Option) == "NETMONTOOLS"
  452.             LibraryProcedure STATUS,$(!LIBHANDLE), CopySingleFile $(SrcDir)netmon\netmon.exe $(!STF_WINDOWSSYSPATH)\Netmon\netmon.exe
  453.         endif
  454.     endif
  455.     ifstr(i) $(DoConfig) == "YES"
  456.     endif
  457.     Exit
  458. [Install-Update]
  459.    set STF_VITAL        = ""
  460.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  461.     ifstr(i) $(Option) == "NETMONTOOLS"
  462.         AddSectionFilesToCopyList Files-TOOLS $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon
  463.         AddSectionFilesToCopyList Files-PARSERS $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon\Parsers
  464.         AddSectionFilesToCopyList Files-CAPTURES $(SrcDir)"netmon" $(!STF_WINDOWSSYSPATH)\Netmon\Captures
  465.     endif
  466.    AddSectionFilesToCopyList Files-NETMON $(SrcDir) $(!STF_WINDOWSSYSPATH)
  467.    AddSectionFilesToCopyList Files-DRIVERS $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  468.    exit
  469. [Source Media Descriptions]
  470.     1 = "Windows NT Workstation CD-ROM" , TAGFILE = cdrom.w
  471. [Signature]
  472.     FileType = MICROSOFT_FILE
  473. [GetSignature]
  474.     read-syms Signature
  475.     return $(FileType)
  476. [ProductType]
  477. STF_PRODUCT  = Winnt
  478. STF_PLATFORM = I386
  479. [Files-Inf]
  480. 2,    oemsetup.inf,     SIZE=1000,    RENAME=$(!UG_Filename)
  481. [Files-DRIVERS]
  482. 1,BHNT.SYS , SIZE=999
  483. [Files-NETMON]
  484. 1,BHCTRL.CPL , SIZE=999
  485. 1,BHMON.DLL , SIZE=999
  486. 1,BHNETB.DLL , SIZE=999
  487. 1,BHSUPP.DLL , SIZE=999
  488. 1,NAL.DLL , SIZE=999
  489. 1,NDIS30.DLL , SIZE=999
  490. 1,NMAGENT.EXE , SIZE=999
  491. 1,RNAL.DLL , SIZE=999
  492. [LanguagesSupported]
  493.     ENG
  494. [OptionsTextENG]
  495.     NETMON      = "Network Monitor Agent"
  496.     NETMONTOOLS = "Network Monitor Tools and Agent"
  497. [FileConstantsENG]
  498. ProCaption   = "Windows NT Setup"
  499. ProCancel    = "Cancel"
  500. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  501.                "Are you sure you want to cancel copying files?"
  502. ProCancelCap = "Network Setup Message"
  503. ProText1     = "Copying:"
  504. ProText2     = "To:"
  505. ProductNMAgentDisplayName  = "Network Monitor Agent"
  506. NETMONTOOLSSoftwareTitle  = "Network Monitor Tools and Agent"
  507. NETMONSoftwareTitle       = "Network Monitor Agent"
  508. [NETMONConstantsENG]
  509. ProductSoftwareTitle       = $(NETMONSoftwareTitle)
  510. ProductSoftwareDescription = "Microsoft "$(ProductSoftwareTitle)
  511. ProductSoftwareDisplayName = $(ProductSoftwareTitle)" Driver"
  512. FunctionTitle   =  $(ProductSoftwareTitle)
  513. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  514. ShellCodeErrorText      = "Shell Code Error."
  515. [NETMONTOOLSConstantsENG]
  516. ProductSoftwareTitle       = $(NETMONTOOLSSoftwareTitle)
  517. ProductSoftwareDescription = "Microsoft "$(ProductSoftwareTitle)
  518. ProductSoftwareDisplayName = $(ProductSoftwareTitle)" Drivers"
  519. FunctionTitle   = $(ProductSoftwareTitle)
  520. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  521. ShellCodeErrorText      = "Shell Code Error."
  522. [DialogConstantsENG]
  523. Help        = "&Help"
  524. Exit        = "Cancel"
  525. OK          = "OK"
  526. HelpContext = ""
  527. Continue    = "Continue"
  528. Cancel      = "Cancel"
  529. [IconInfoENG]
  530.     NetAdminGroupName = "Network Administration"
  531.     NetMonitor = "Network Monitor"
  532.