home *** CD-ROM | disk | FTP | other *** search
/ Network Support Encyclopedia 96-1 / novell-nsepro-1996-1-cd2.iso / download / netware / ntws1.exe / NTCLI / NTCLNT_1.350 / I386 / OEMNSVIP.IN_ / OEMNSVIP.IN
Text File  |  1995-05-19  |  32KB  |  1,123 lines

  1. ;***********************************************************************
  2. ;
  3. ; OEMNSVIP.INF
  4. ;
  5. ;    Novell NetWare support for IP
  6. ;
  7. ;
  8. ;***********************************************************************
  9.  
  10. ;-----------------------------------------------------------------------
  11. ; OPTION TYPE
  12. ; -----------
  13. ; This identifies the Option type we are dealing with.  The different
  14. ; possible types are:
  15. ;
  16. ; COMPUTER, DISPLAY, MOUSE, KEYBOARD, LAYOUT, SCSI, PRINTER, ...
  17. ;
  18. ;  Types specific to networking:
  19. ;
  20. ; NetAdapter,     a netcard / adapter combination or just a netcard
  21. ; NetDriver,      just a netcard driver
  22. ; NetTransport,    a complete NDIS-compliant TDI transport stack
  23. ; NetService,     an NT networking service
  24. ; NetWork,        a complete network ensemble.
  25. ; NetProvider     a complete network which supports NT MPR protocol
  26. ;-----------------------------------------------------------------------
  27.  
  28. [Identification]
  29.     OptionType = NetService
  30.  
  31. ;-----------------------------------------------------------------------
  32. ; OPTION LIST
  33. ; -----------
  34. ; This section lists the OEM Option key names.  These keys are locale
  35. ; independent and used to represent the option in a locale independent
  36. ; manner.
  37. ;
  38. ;-----------------------------------------------------------------------
  39.  
  40. [Options]
  41.     NWIP
  42.  
  43. ;-----------------------------------------------------------------------
  44. ; LANGUAGES SUPPORTED
  45. ; -------------------
  46. ;
  47. ; The languages supported by the OEM INF, For every language supported
  48. ; we need to have a separate text section for every displayable text
  49. ; section.
  50. ;
  51. ;-----------------------------------------------------------------------
  52.  
  53. [LanguagesSupported]
  54.     ENG, ENGLISH
  55.  
  56. ;-----------------------------------------------------------------------
  57. ; OPTION TEXT SECTION
  58. ; -------------------
  59. ; These are text strings used to identify the option to the user.  There
  60. ; are separate sections for each language supported.  The format of the
  61. ; section name is "OptionsText" concatenated with the Language represented
  62. ; by the section.
  63. ;
  64. ;-----------------------------------------------------------------------
  65.  
  66. [OptionsTextENG]
  67.     NWIP    = "Novell NetWare/IP Support"
  68.  
  69. ;***********************************************************************
  70. ; Language-Dependent Dialog Constants
  71. ;***********************************************************************
  72. [FileConstantsENG]
  73. ;
  74. ;  Variables to support thermometer gauge and error dialogs
  75. ;
  76.  
  77. [InitBaseVars]
  78.  
  79. KeyNull        = ""
  80. MAXIMUM_ALLOWED    = 33554432
  81. KeyInfo        = {}
  82. RegistryErrorIndex = NO_ERROR
  83. NoTitle        = 0
  84.  
  85. CurrentControlSet  = "SYSTEM\CurrentControlSet"
  86. ServicesBaseName    = $(CurrentControlSet)"\Services"
  87.  
  88. [FileConstants]
  89. ;
  90. ;  File names, etc.
  91. ;
  92. UtilityInf    = "UTILITY.INF"
  93. subroutineinf    = "SUBROUTN.INF"
  94. NwSubsInf    = "NWSUBS.INF"
  95. NwSetupDll    = "nwsetup.dll"
  96. SoftwareType    = "service"
  97. Exit_Code    = 0
  98.  
  99. ; Product Info
  100. ;
  101. Manufacturer    = "Novell"
  102. ProductMajorVersion    = "1"
  103. ProductMinorVersion    = "0"
  104. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  105. UserModeRoot    = "%SystemRoot%"
  106. System32Root    = $(UserModeRoot)"\System32\"
  107. SoftwareBinHome = $(System32Root)"NetWare\"
  108. DriverBinHome    = $(System32Root)"Drivers\"
  109. NetWareEventFile= $(System32Root)"nwevents.dll"
  110.  
  111. ;
  112. ; Services
  113. ;
  114.  
  115. ; NWIP: NetWare IP Service
  116.  
  117. ProductNWIPControl    = component
  118. ProductNWIPHidden     = 0
  119. ProductNWIPReviewBindings = 1
  120. ProductNWIPInstrumentation    = FALSE
  121. ProductNWIPName     = "NWIP"
  122. ProductNWIPDisplayName = "Novell NetWare/IP Support"
  123. ProductNWIPTitle = "Novell NetWare/IP Support"
  124. ProductNWIPImagePath    = $(SoftwareBinHome)nwip.sys
  125. ProductNWIPDescription = "Novell NetWare/IP Support"
  126. ProductNWIPSvcType    = "kernelautostart"
  127. ProductNWIPSoftType    = "service"
  128. ProductNWIPGroup    = ""
  129. ProductNWIPDependList  = {"TCPIP"}
  130. ProductNWIPEventFile    = $(NetWareEventFile)
  131. ProductNWIPKeySoftware = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductNWIPName)"\CurrentVersion"
  132.  
  133. NetRuleNWIPSoftwareType    = "nwip nwNwIPDriver"
  134. NetRuleNWIPSoftwareUse    = "service yes yes"
  135. NetRuleNWIPSoftwareBindForm = """NwIP"" yes yes container"
  136. NetRuleNWIPSoftwareClass    = {"nwNwIPDriver basic"}
  137. NetRuleNWIPSoftwareBindable = {"nwNwIPDriver tcpipTransport non non 100"}
  138.  
  139. [GeneralConstants]
  140. ;
  141. ;  Program flow control variables.
  142. ;
  143. from    = ""
  144. to     = ""
  145. ;
  146. ;  Return codes; Exit_Code is set to one of these
  147. ;
  148. ExitCodeOk    = 0
  149. ExitCodeCancel = 1
  150. ExitCodeFatal  = 2
  151.  
  152. KeyNull      = ""
  153. MAXIMUM_ALLOWED    = 33554432
  154. RegistryErrorIndex = NO_ERROR
  155. KeyProduct    = ""
  156. KeyParameters    = ""
  157.  
  158. TRUE        = 1
  159. FALSE        = 0
  160. NoTitle        = 0
  161.  
  162. ExitState    = "Active"
  163. OldVersionExisted = $(FALSE)
  164.  
  165. [date]
  166.     ; Now is a list which contains { Sec from 1-1-1970, Year, Month, Day, Hour,
  167.     ; Minute, Second }
  168.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  169.  
  170.  
  171.  
  172. [DetectSystemMemory]
  173.     SystemMemory    = "" ? $(!LIBHANDLE) GetMemorySize
  174.  
  175. [ProcessorDetect]
  176.     !STF_PROCESSOR = "" ? $(!LIBHANDLE) GetProcessor
  177.  
  178. ;---------------------------------------------------------------------------
  179. ; 1. Identify
  180. ;
  181. ; DESCRIPTION:    To verify that this INF deals with the same type of options
  182. ;          as we are choosing currently.
  183. ;
  184. ; INPUT:      None
  185. ;
  186. ; OUTPUT:     $($R0): STATUS: STATUS_SUCCESSFUL
  187. ;          $($R1): Option Type (COMPUTER ...)
  188. ;          $($R2): Diskette description
  189. ;---------------------------------------------------------------------------
  190.  
  191. [Identify]
  192.     ;
  193.     ;
  194.     read-syms Identification
  195.  
  196.     set Status    = STATUS_SUCCESSFUL
  197.     set Identifier = $(OptionType)
  198.     set Media    = #("Source Media Descriptions", 1, 1)
  199.  
  200.     Return $(Status) $(Identifier) $(Media)
  201.  
  202. ;------------------------------------------------------------------------
  203. ; 2. ReturnOptions:
  204. ;
  205. ; DESCRIPTION:    To return the option list supported by this INF and the
  206. ;          localised text list representing the options.
  207. ;
  208. ;
  209. ; INPUT:      $($0):  Language used. ( ENG | FRN | ... )
  210. ;
  211. ; OUTPUT:     $($R0): STATUS: STATUS_SUCCESSFUL |
  212. ;                    STATUS_NOLANGUAGE
  213. ;                    STATUS_FAILED
  214. ;
  215. ;          $($R1): Option List
  216. ;          $($R2): Option Text List
  217. ;------------------------------------------------------------------------
  218. [ReturnOptions]
  219.     ;
  220.     ;
  221.     set Status     = STATUS_FAILED
  222.     set OptionList    = {}
  223.     set OptionTextList = {}
  224.  
  225.     ;
  226.     ; Check if the language requested is supported
  227.     ;
  228.     set LanguageList = ^(LanguagesSupported, 1)
  229.     Ifcontains(i) $($0) in $(LanguageList)
  230.         goto returnoptions
  231.     else
  232.         set Status = STATUS_NOLANGUAGE
  233.         goto finish_ReturnOptions
  234.     endif
  235.  
  236.     ;
  237.     ; form a list of all the options and another of the text representing
  238.     ;
  239.  
  240. returnoptions = +
  241.     set OptionList    = ^(Options, 1)
  242.     set OptionTextList = ^(OptionsText$($0), 1)
  243.     set Status      = STATUS_SUCCESSFUL
  244.  
  245. finish_ReturnOptions = +
  246.     Return $(Status) $(OptionList) $(OptionTextList)
  247.  
  248. ;----------InstallOption-------------------------------------------------
  249. ;
  250. ; InstallOption:
  251. ;
  252. ;    This section is shelled to by main installation processing
  253. ;    or by NCPASHEL.INF during reconfig, removal, update, etc.
  254. ;
  255. ;
  256. ; FUNCTION:  To copy files representing Options
  257. ;        To configure the installed option
  258. ;        To update the registry for the installed option
  259. ;
  260. ; INPUT:    $($0):  Language to use
  261. ;        $($1):  OptionID to install
  262. ;        $($2):  SourceDirectory
  263. ;        $($3):  AddCopy  (YES | NO)
  264. ;        $($4):  DoCopy    (YES | NO)
  265. ;        $($5):  DoConfig (YES | NO)
  266. ;
  267. ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
  268. ;                STATUS_NOLANGUAGE |
  269. ;                STATUS_USERCANCEL |
  270. ;                STATUS_FAILED
  271. ;
  272. ;------------------------------------------------------------------------
  273. [InstallOption]
  274.     ;
  275.     ; extract parameters
  276.     ;
  277.     set Option    = $($1)
  278.     set SrcDir    = $($2)
  279.     set AddCopy  = $($3)
  280.     set DoCopy    = $($4)
  281.     set DoConfig = $($5)
  282.  
  283.     set OriginalAddCopy = $($3)
  284.     set OriginalDoCopy = $($4)
  285.  
  286.  
  287.     ;
  288.     ;  For now,
  289.     ;
  290.  
  291.     ;
  292.     ; Check if the language requested is supported
  293.     ;
  294.     set LanguageList = ^(LanguagesSupported, 1)
  295.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  296.         Return STATUS_NOLANGUAGE
  297.     endif
  298.  
  299. ;    set LANGUAGE = *( ^(LanguagesSupported, 2), ~(LanguageList, $(!STF_LANGUAGE))
  300.  
  301.     Debug-Output "OEMNPRNW.INF: Language used: LANGUAGE = "$(LANGUAGE)
  302.     Debug-Output "1: STF_PLATFORM  = "$(!STF_PLATFORM)
  303.     Debug-Output "1: STF_PROCESSOR = "$(!STF_PROCESSOR)
  304.  
  305.     detect ProcessorDetect
  306.  
  307.     ;
  308.     ;    Here's the service name used in this file
  309.     ;
  310.     Set SvcOpt = NWIP
  311.  
  312.     Debug-Output "2: STF_PROCESSOR = "$(!STF_PROCESSOR)
  313.  
  314.     ifstr(i) $(!STF_PROCESSOR) == "I386"
  315.         set !STF_PLATFORM = "I386"
  316.     else-ifstr(i) $(!STF_PROCESSOR) == "I486"
  317.         set !STF_PLATFORM = "I386"
  318.     else-ifstr(i) $(!STF_PROCESSOR) == "I586"
  319.         set !STF_PLATFORM = "I386"
  320.     else-ifstr(i) $(!STF_PROCESSOR) == "R4000"
  321.         set !STF_PLATFORM = "Mips"
  322.     else
  323.         set !STF_PLATFORM = "Alpha"
  324.     endif
  325.  
  326.     Debug-Output "2: STF_PLATFORM  = "$(!STF_PLATFORM)
  327.  
  328.     StartWait
  329.  
  330.     ; define all the constants
  331.  
  332.     set-subst LF = "\n"
  333.     set-subst CR = "\r"
  334.     set-subst CRLF = "\r\n"
  335.  
  336.     read-syms GeneralConstants
  337.     read-syms FileConstants
  338.  
  339.     ifstr(i) $(!NTN_Origination) == "NCPA"
  340.         set Continue = "OK"
  341.     endif
  342.     read-syms FileConstants$(!STF_LANGUAGE)
  343.  
  344.     detect date
  345.  
  346.     set-title  $(FunctionTitle)
  347.  
  348.     set to    = Begin
  349.     set from = Begin
  350. ;
  351. ;  Assume all is well.
  352. ;
  353.     set CommonStatus = STATUS_SUCCESSFUL
  354.  
  355. Begin = +
  356.     Set OEM_ABANDON_SERVICES = {}
  357.     Set OEM_ABANDON_COMPONENTS = {}
  358.     Set DoReboot = "NO"
  359.  
  360.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  361.         set StartLabel = removeNWIP
  362.     else-Ifstr(i) $(!NTN_InstallMode) == update
  363.         set StartLabel = upgradeNWIP
  364.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  365.         set StartLabel = bindNWIP
  366.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  367.         Set StartLabel = configureNWIP
  368.     else
  369.         set StartLabel = installNWIP
  370.     endif
  371.  
  372.     set from = $(fatal)
  373.     set to = $(fatal)
  374.  
  375.     goto $(StartLabel)
  376.  
  377. ;-----------------------------------------------
  378. ; Installation Section
  379. ;-----------------------------------------------
  380.  
  381. installNWIP = +
  382. ;
  383. ;    First, check whether the same version of the software exists
  384. ;
  385.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP" $(MAXIMUM_ALLOWED) KeyProduct
  386.  
  387.     Ifstr $(KeyProduct) != $(KeyNull)
  388.         ;
  389.         ; Same version already existed in the local machine
  390.         ; Popup the dialog and ask the user whether he wants to continue
  391.         ;
  392.         CloseRegKey $(KeyProduct)
  393.  
  394.          Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", +
  395.             "The NetWare Support for IP is already installed. "
  396.  
  397.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  398.             goto ShellCodeError
  399.         endif
  400.  
  401.          set CommonStatus = STATUS_USERCANCEL
  402.          goto term
  403.     endif
  404.  
  405. ;
  406. ;  Next, check to see if Tcp/Ip is installed
  407. ;
  408.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Tcpip" $(MAXIMUM_ALLOWED) KeyTcpIp
  409.  
  410.     Ifstr $(KeyTcpIp) == $(KeyNull)
  411.         ;
  412.         ; Ask the user if they want to install Tcp/Ip
  413.         ;
  414.         set MessageText = "Tcp/Ip Protocol is NOT installed, Install it now?"
  415.         set DlgType = "MessageBox"
  416.         set STF_MB_TITLE = "Install Tcp/Ip Protocol"
  417.         set STF_MB_TEXT  = $(MessageText)
  418.         set STF_MB_TYPE  = 3
  419.         set STF_MB_ICON  = 4
  420.         set STF_MB_DEF    = 1
  421.         ui start "InstallTcpIp"
  422.  
  423.         Ifstr(i) $(DLGEVENT) == "NO"
  424.             Debug-Output "NWSUBS.INF: Don't install Tcp/Ip"
  425.             set CommonStatus = STATUS_USERCANCEL
  426.             goto term
  427.         Endif
  428.  
  429.         Debug-Output "OEMNSVIP.INF: Install Tcp/Ip"
  430.         Set OldInstallMode = $(!NTN_InstallMode)
  431.         Set !NTN_InstallMode = install
  432.         Shell "oemnxptc.inf" InstallOption $(!STF_LANGUAGE) "TC" "" YES YES NO
  433.         Set !NTN_InstallMode = $(OldInstallMode)
  434.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  435.             goto ShellCodeError
  436.         Endif
  437.         set CommonStatus = $($R0)
  438.         Ifstr(i) $(CommonStatus) != STATUS_SUCCESSFUL
  439.             Debug-Output "OEMNSVIP.INF: Install of Tcp/Ip returned "$(CommonStatus)
  440.             goto term
  441.         Endif
  442.     Else
  443.         CloseRegKey $(KeyTcpIp)
  444.     Endif
  445.  
  446.     Ifstr(i) $(Product$(SvcOpt)Control) == component
  447.         Debug-Output "OEMNPRNW.INF: install component: "$(SvcOpt)
  448.         Shell $(UtilityInf), AddSoftwareComponent +
  449.             $(Manufacturer), +
  450.             $(Product$(SvcOpt)Name), +
  451.             $(Product$(SvcOpt)Name), +
  452.             $(Product$(SvcOpt)DisplayName), +
  453.             $(STF_CONTEXTINFNAME), +
  454.             $(Product$(SvcOpt)ImagePath), +
  455.             $(Product$(SvcOpt)SvcType), +
  456.             $(Product$(SvcOpt)Group), +
  457.             $(Product$(SvcOpt)DependList), "" +
  458.             $(Product$(SvcOpt)EventFile), "", "", 1
  459.  
  460.         Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  461.             Debug-Output "OEMNPRNW.INF: AddSoftwareComponent ShellCode error "$($ShellCode)" installing "$(SvcOpt)
  462.             EndWait
  463.             goto ShellCodeError
  464.         Endif
  465.         StartWait
  466.  
  467.         Set RegistryErrorIndex = $($R0)
  468.  
  469.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  470.             EndWait
  471.             CloseRegKey $($R1)
  472.             CloseRegKey $($R2)
  473.             CloseRegKey $($R3)
  474.             Debug-Output "OEMNPRNW.INF: Registry error "$(RegistryErrorIndex)" installing "$(SvcOpt)
  475.             EndWait
  476.             goto fatalregistry
  477.         Endif
  478.  
  479.         Set SvcVersion  = $($R1)
  480.         Set SvcNetRules = $($R2)
  481.         Set SvcSvcKey    = $($R3)
  482.         Set SvcParamKey = $($R4)
  483.         Set SvcLinkKey  = $($R5)
  484.  
  485.         ifint $(Product$(SvcOpt)ReviewBindings) == 1
  486.             Set ReviewBindingsValue = 1
  487.         else
  488.             Set ReviewBindingsValue = 0
  489.         endif
  490.  
  491.         Set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)SoftType)},+
  492.                 {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(Product$(SvcOpt)Hidden)},+
  493.                 {Review,$(NoTitle),$(!REG_VT_DWORD),$(ReviewBindingsValue)},+
  494.                 {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  495.                 {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  496.                 {Title,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)Title)},+
  497.                 {Description,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)Description)},+
  498.                 {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(Product$(SvcOpt)Name)},+
  499.                 {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  500.  
  501.         Shell  $(UtilityInf), AddValueList, $(SvcVersion), $(NewValueList)
  502.         StartWait
  503.         Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  504.             Debug-Output "OEMNPRNW.INF: ShellCode error: AddValueList for version info for "$(SvcOpt)
  505.             EndWait
  506.             goto ShellCodeError
  507.         Endif
  508.  
  509.         ;
  510.         ;  Add the NetRules info
  511.         ;
  512.         Set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareType)},+
  513.                 {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRule$(SvcOpt)SoftwareClass)}, +
  514.                 {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRule$(SvcOpt)SoftwareBindable)}, +
  515.                 {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareUse)}, +
  516.                 {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(SvcOpt)SoftwareBindForm)}, +
  517.                 {InfOption,$(NoTitle),$(!REG_VT_SZ),$(SvcOpt)}}
  518.  
  519.         Shell  $(UtilityInf), AddValueList, $(SvcNetRules), $(NewValueList)
  520.         StartWait
  521.         Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  522.             Debug-Output "OEMNPRNW.INF: AddValueList ShellCode error = "$($ShellCode)
  523.             EndWait
  524.             Goto ShellCodeError
  525.         Endif
  526.         Set RegistryErrorIndex = $($R0)
  527.  
  528.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  529.             CloseRegKey $(SvcSvcKey)
  530.             CloseRegKey $(SvcParamKey)
  531.             CloseRegKey $(SvcLinkKey)
  532.             CloseRegKey $(SvcVersion)
  533.             CloseRegKey $(SvcNetRules)
  534.             Debug-Output "OEMNPRNW.INF: Registry error adding NetRules to "$(SvcOpt)
  535.             EndWait
  536.             goto fatalregistry
  537.         Endif
  538.     Else
  539.         Debug-Output "OEMNPRNW.INF: install service: "$(SvcOpt)
  540.  
  541.         Shell $(UtilityInf), CreateService, +
  542.             $(Product$(SvcOpt)Name), +
  543.             $(Product$(SvcOpt)DisplayName), +
  544.             $(Product$(SvcOpt)ImagePath), +
  545.             $(Product$(SvcOpt)SvcType), +
  546.             $(Product$(SvcOpt)Group), +
  547.             $(Product$(SvcOpt)DependList), "" +
  548.             $(Product$(SvcOpt)EventFile), "", "", 1
  549.  
  550.         StartWait
  551.         Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  552.             Debug-Output "OEMNPRNW.INF: ShellCode error installing "$(SvcOpt)
  553.             EndWait
  554.             goto ShellCodeError
  555.         Endif
  556.  
  557.         Set RegistryErrorIndex = $($R0)
  558.  
  559.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  560.             CloseRegKey $($R1)
  561.             CloseRegKey $($R2)
  562.             CloseRegKey $($R3)
  563.             Debug-Output "OEMNPRNW.INF: Registry error installing "$(SvcOpt)
  564.             EndWait
  565.             goto fatalregistry
  566.         Endif
  567.  
  568.         Set SvcVersion  = ""
  569.         Set SvcNetRules = ""
  570.         Set SvcSvcKey    = $($R1)
  571.         Set SvcParamKey = $($R2)
  572.         Set SvcLinkKey  = $($R3)
  573.     Endif
  574.  
  575.     set DoReboot = YES
  576.  
  577.  
  578. ;-----------------------------------------------
  579. ; Configure section
  580. ;-----------------------------------------------
  581. configureNWIP = +
  582.  
  583.     Set Error = ""
  584.  
  585.     Debug-Output "OEMNSVIP.INF: Configure NWIP"
  586.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP\Parameters" $(MAXIMUM_ALLOWED) KeyParameters
  587.     Ifstr $(KeyParameters) != $(KeyNull)
  588.         set KeyValueList = ""
  589.         GetRegValue $(KeyParameters) "NetWare/IP Domain" KeyValueList
  590.         set DomainNameString = *($(KeyValueList), 4)
  591.         set KeyValueList = ""
  592.         GetRegValue $(KeyParameters) "Preferred DSS" KeyValueList
  593.         set PreferredDSS = *($(KeyValueList), 4)
  594.         Debug-Output "OEMNSVIP.INF: PreferredDSS = "$(PreferredDSS)
  595.         ifstr $(PreferredDSS) != {}
  596.             QueryListSize ListSize $(PreferredDSS)
  597.             ifint $(ListSize) > 1
  598.                 set NewName = ""
  599.                 ForListDo $(PreferredDSS)
  600.                     set NewName = $(NewName)$($)$(CRLF)
  601.                 EndForListDo
  602.                 set PreferredDSS = $(NewName)
  603.             else
  604.                 set PreferredDSS = *($(PreferredDSS),1)
  605.             endif
  606.         endif
  607.         Ifstr $(PreferredDSS) == {}
  608.             set PreferredDSS = ""
  609.         Endif
  610.         Debug-Output "OEMNSVIP.INF: New PreferredDSS = "$(PreferredDSS)
  611.         set KeyValueList = ""
  612.         GetRegValue $(KeyParameters) "Nearest NetWare/IP Server" KeyValueList
  613.         set NearestServer = *($(KeyValueList), 4)
  614.         Debug-Output "OEMNSVIP.INF: NearestServer = "$(NearestServer)
  615.         ifstr $(NearestServer) != {}
  616.             QueryListSize ListSize $(NearestServer)
  617.             ifint $(ListSize) > 1
  618.                 set NewName = ""
  619.                 ForListDo $(NearestServer)
  620.                     set NewName = $(NewName)$($)$(CRLF)
  621.                 EndForListDo
  622.                 set NearestServer = $(NewName)
  623.             else
  624.                 set NearestServer = *($(NearestServer),1)
  625.             endif
  626.         endif
  627.         Ifstr $(NearestServer) == {}
  628.             set NearestServer = ""
  629.         Endif
  630.         Debug-Output "OEMNSVIP.INF: New NearestServer = "$(NearestServer)
  631.         set KeyValueList = ""
  632.         GetRegValue $(KeyParameters) "NSQ Broadcast" KeyValueList
  633.         Debug-Output "OEMNSVIP.INF: NSQBroadcasts list = "$(KeyValueList)
  634.         Ifstr $(KeyValueList) == ""
  635.             set NSQBroadcastsFlag = 1
  636.         Else
  637.             set NSQBroadcastsFlag = *($(KeyValueList), 4)
  638.         Endif
  639.         ifint $(NSQBroadcastsFlag) != 0
  640.             set NSQBroadcasts = "ON"
  641.         else
  642.             set NSQBroadcasts = "OFF"
  643.         endif
  644.         Debug-Output "OEMNSVIP.INF: NSQBroadcasts = "$(NSQBroadcasts)
  645.         set KeyValueList = ""
  646.         GetRegValue $(KeyParameters) "AutoRetries" KeyValueList
  647.         set AutoRetries = *($(KeyValueList), 4)
  648.         ifstr(i) $(AutoRetries) == ""
  649.             set AutoRetries = 1
  650.             Debug-Output "OEMNSVIP.INF: AutoRetries set to default"
  651.         endif
  652.         set KeyValueList = ""
  653.         GetRegValue $(KeyParameters) "AutoRetry Secs" KeyValueList
  654.         set AutoRetryTime = *($(KeyValueList), 4)
  655.         ifstr(i) $(AutoRetryTime) == ""
  656.             set AutoRetryTime = 4
  657.             Debug-Output "OEMNSVIP.INF: AutoRetryTime set to default"
  658.         endif
  659.  
  660.         Ifstr(i) $(StartLabel) != installNWIP
  661.  
  662.             LoadLibrary "NetWare for Windows NT" nwsetup.dll NwLibHandle
  663.             SetHelpFile $(!STF_WINDOWSSYSPATH)"\nls\english\nwnthelp.hlp" $(!MinimumID) $(!MaximumID)
  664.  
  665. DoTheDialog = +
  666.             read-syms "NWIPDlg"$(!STF_LANGUAGE)
  667.  
  668.  
  669.             Debug-Output "DlgType     = "$(DlgType)
  670.             Debug-Output "DlgTemplate = "$(DlgTemplate)
  671.             Debug-Output "Caption     = "$(Caption)
  672.             Debug-Output "OK          = "$(OK)
  673.             Debug-Output "Cancel      = "$(Cancel)
  674.             Debug-Output "Help        = "$(Help)
  675.             Debug-Output "DomainName  = "$(DomainName)
  676.             Debug-Output "GroupName   = "$(GroupName)
  677.             Debug-Output "DSS         = "$(DSS)
  678.             Debug-Output "NNS         = "$(NNS)
  679.             Debug-Output "NSQ         = "$(NSQ)
  680.             Debug-Output "Retries     = "$(Retries)
  681.             Debug-Output "RetryTime   = "$(RetryTime)
  682.             Debug-Output "CBOptionGreyed = "$(CBOptionGreyed)
  683.             Debug-Output "RadioOptionsGreyed = "$(RadioOptionsGreyed)
  684.             Debug-Output "IDH_NWIP             =  "$(IDH_NWIP)
  685.             Debug-Output "HelpContext       = "$(HelpContext)
  686.             Debug-Output "NotifyFields      = "$(NotifyFields)
  687.  
  688.             Debug-Output "EditTextIn       = "$(EditTextIn)
  689.             Debug-Output "EditTextLim      = "$(EditTextLim)
  690.             Debug-Output "CheckItemsIn     = "$(CheckItemsIn)
  691.             Debug-Output "ComboListItemsIn = "$(ComboListItemsIn)
  692.  
  693.             ui start "NWIPDlg" $(NwLibHandle)
  694.             StartWait
  695.  
  696.             Debug-Output "EditTextOut = "$(EditTextOut)
  697.             Debug-Output "CheckItemsOut = "$(CheckItemsOut)
  698.             Debug-Output "ComboListItemsOut = "$(ComboListItemsOut)
  699.  
  700.             Ifstr(i) $(DLGEVENT) == "CONTINUE"
  701.                 Debug-Output "OK hit"
  702.                 set ReDisplayDialog = "NO"
  703.                 set DomainNameString = *($(EditTextOut), 1)
  704.                 set PreferredDSS = *($(EditTextOut), 2)
  705.                 set NearestServer = *($(EditTextOut), 3)
  706.                 set AutoRetries = *($(EditTextOut), 4)
  707.                 set AutoRetryTime = *($(EditTextOut), 5)
  708.                 set NSQBroadcasts = *($(CheckItemsOut), 1)
  709.                 Ifint $(AutoRetries) < 0
  710.                     set AutoRetries = 1
  711.                     set ReDisplayDialog = "YES"
  712.                 Endif
  713.                 Ifint $(AutoRetries) > 50
  714.                     set AutoRetries = 1
  715.                     set ReDisplayDialog = "YES"
  716.                 Endif
  717.                 Ifstr(i) $(ReDisplayDialog) == "YES"
  718.                     Set DlgType = "MessageBox"
  719.                     Set STF_MB_TITLE = "Novell NetWare/IP Service Setup"
  720.                     Set STF_MB_TEXT  = "Invalid AutoRetries. AutoRetries must be in the range 0 - 50."
  721.                     Set STF_MB_TYPE  = 1
  722.                     Set STF_MB_ICON  = 2
  723.                     Set STF_MB_DEF    = 1
  724.                     ui start "Error Message"
  725.                 Endif
  726.                 set InvalidAutoRetryTime = "NO"
  727.                 Ifint $(AutoRetryTime) < 1
  728.                     set AutoRetryTime = 4
  729.                     set InvalidAutoRetryTime = "YES"
  730.                     set ReDisplayDialog = "YES"
  731.                 Endif
  732.                 Ifint $(AutoRetryTime) > 100
  733.                     set AutoRetryTime = 4
  734.                     set InvalidAutoRetryTime = "YES"
  735.                     set ReDisplayDialog = "YES"
  736.                 Endif
  737.                 Ifstr(i) $(InvalidAutoRetryTime) == "YES"
  738.                     Set DlgType = "MessageBox"
  739.                     Set STF_MB_TITLE = "Novell NetWare/IP Service Setup"
  740.                     Set STF_MB_TEXT  = "Invalid AutoRetryTime. AutoRetryTime must be in the range 1 - 100."
  741.                     Set STF_MB_TYPE  = 1
  742.                     Set STF_MB_ICON  = 2
  743.                     Set STF_MB_DEF    = 1
  744.                     ui start "Error Message"
  745.                 Endif
  746.                 Ifstr(i) $(ReDisplayDialog) == "YES"
  747.                     set ReInit = YES
  748.                     goto DoTheDialog
  749.                 Endif
  750.             Endif
  751.  
  752.             ui pop 1
  753.             FreeLibrary $(NwLibHandle)
  754.  
  755.         Else
  756.             set DLGEVENT = "CONTINUE"
  757.         Endif
  758.  
  759.         ; Configure NWIP.
  760.         ; CONTINUE means the OK button was hit
  761.         ;
  762.         ifstr(i) $(DLGEVENT) == "CONTINUE"
  763.             ;
  764.             ;  The user gave us something.  Turn back on NWIP
  765.             ;
  766.             OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP" $(MAXIMUM_ALLOWED) KeyProduct
  767.             Ifstr $(KeyProduct) != $(KeyNull)
  768.                 Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),2}
  769.                 SetRegValue $(KeyProduct) $(KeyValueList)
  770.                 CloseRegKey $(KeyProduct)
  771.             Endif
  772.  
  773.             ;
  774.             ;  Save DomainString
  775.             ;
  776.             Set KeyValueList = {"NetWare/IP Domain",$(NoTitle),$(!REG_VT_SZ),$(DomainNameString)}
  777.             SetRegValue $(KeyParameters) $(KeyValueList)
  778.             ;
  779.             ; Save PreferredDSS
  780.             ;
  781.             Debug-Output "OEMNSVIP.INF: SetRegValue PreferredDSS = "$(PreferredDSS)
  782.             Ifstr(i) $(PreferredDSS) != ""
  783.                 Split-String $(PreferredDSS) $(CRLF) BrokenupString
  784.                 QueryListSize ListSize $(BrokenupString)
  785.                 ifint $(ListSize) > 1
  786.                     set NewList = {}
  787.                     ForListDo $(BrokenupString)
  788.                         ifstr $($) != $(CR)
  789.                             ifstr $($) != $(LF)
  790.                                 set NewList = >($(NewList),$($))
  791.                             endif
  792.                         endif
  793.                     EndForListDo
  794.                     set PreferredDSS = $(NewList)
  795.                 else
  796.                     set PreferredDSS = { $(PreferredDSS) }
  797.                 endif
  798.             Endif
  799.             Ifstr $(PreferredDSS) == ""
  800.                 set PreferredDSS = {}
  801.             Endif
  802.             
  803.             Debug-Output "OEMNSVIP.INF: SetRegValue New PreferredDSS = "$(PreferredDSS)
  804.             Set KeyValueList = {"Preferred DSS",$(NoTitle),$(!REG_VT_MULTI_SZ),$(PreferredDSS)}
  805.             SetRegValue $(KeyParameters) $(KeyValueList)
  806.             ;
  807.             ; Save NearestServer
  808.             ;
  809.             Debug-Output "OEMNSVIP.INF: SetRegValue NearestServer = "$(NearestServer)
  810.             Ifstr(i) $(NearestServer) != ""
  811.                 Split-String $(NearestServer) $(CRLF) BrokenupString
  812.                 QueryListSize ListSize $(BrokenupString)
  813.                 ifint $(ListSize) > 1
  814.                     set NewList = {}
  815.                     ForListDo $(BrokenupString)
  816.                         ifstr $($) != $(CR)
  817.                             ifstr $($) != $(LF)
  818.                                 set NewList = >($(NewList),$($))
  819.                             endif
  820.                         endif
  821.                     EndForListDo
  822.                     set NearestServer = $(NewList)
  823.                 else
  824.                     set NearestServer = { $(NearestServer) }
  825.                 endif
  826.             Endif
  827.             Ifstr $(NearestServer) == ""
  828.                 set NearestServer = {}
  829.             Endif
  830.  
  831.             Debug-Output "OEMNSVIP.INF: SetRegValue New NearestServer = "$(NearestServer)
  832.             Set KeyValueList = {"Nearest NetWare/IP Server",$(NoTitle),$(!REG_VT_MULTI_SZ),$(NearestServer)}
  833.             SetRegValue $(KeyParameters) $(KeyValueList)
  834.             ;
  835.             ; Save NSQBroadcasts
  836.             ;
  837.             Ifstr(i) $(NSQBroadcasts) == "OFF"
  838.                 set NSQBroadcastsFlag = 0
  839.             Else
  840.                 set NSQBroadcastsFlag = 1
  841.             Endif
  842.             Set KeyValueList = {"NSQ Broadcast",$(NoTitle),$(!REG_VT_DWORD),$(NSQBroadcastsFlag)}
  843.             SetRegValue $(KeyParameters) $(KeyValueList)
  844.             ;
  845.             ; Save AutoRetries
  846.             ;
  847.             Set KeyValueList = {"AutoRetries",$(NoTitle),$(!REG_VT_DWORD),$(AutoRetries)}
  848.             SetRegValue $(KeyParameters) $(KeyValueList)
  849.             ;
  850.             ; Save AutoRetryTime
  851.             ;
  852.             Set KeyValueList = {"AutoRetry Secs",$(NoTitle),$(!REG_VT_DWORD),$(AutoRetryTime)}
  853.             SetRegValue $(KeyParameters) $(KeyValueList)
  854.  
  855.             SetRegValue $(KeyParameters) {"1.1Compatibility",$(NoTitle),$(!REG_VT_DWORD),0}
  856.  
  857.             set DoReboot = YES
  858.         ;
  859.         ; Cancel hit
  860.         ;
  861.         Else
  862.             ;
  863.             ;  If nothing was in the registry and the user hit cancel, do nothing.
  864.             ;
  865.             Debug-Output "OEMNSVIP.INF: User hit cancel."
  866.         Endif
  867.         CloseRegKey $(KeyParameters)
  868.     Else
  869.         Set Error = "NWIP/Parameters was deleted somehow.  NWIP disabled."
  870.     Endif
  871.  
  872.     ;
  873.     ; Error! Disable NWIP
  874.     ;
  875.     Ifstr $(Error) != ""
  876.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWIP" $(MAXIMUM_ALLOWED) KeyProduct
  877.         Ifstr $(KeyProduct) != $(KeyNull)
  878.             Set KeyValueList = {"Start",$(NoTitle),$(!REG_VT_DWORD),4}
  879.             SetRegValue $(KeyProduct) $(KeyValueList)
  880.             CloseRegKey $(KeyProduct)
  881.         Endif
  882.         ;  Message to print already in the Error variable
  883.         goto fatal
  884.     Endif
  885.  
  886.     goto end
  887.  
  888. ;-----------------------------------------------
  889. ; Binding section
  890. ;-----------------------------------------------
  891. bindNWIP =+
  892.  
  893.     ;
  894.     ; Fix up the keys in IPXSPX
  895.     ;
  896.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\IpxSpx\Parameters" $(MAXIMUM_ALLOWED) KeyProduct
  897.     Ifstr $(KeyProduct) != $(KeyNull)
  898.         Set KeyValueList = {"Card Name",$(NoTitle),$(!REG_VT_SZ),"NWIP"}
  899.         SetRegValue $(KeyProduct) $(KeyValueList)
  900.  
  901.         Set KeyValueList = {"Frame Type",$(NoTitle),$(!REG_VT_SZ),"ETHERNET_II"}
  902.         SetRegValue $(KeyProduct) $(KeyValueList)
  903.         CloseRegKey $(KeyProduct)
  904.     Else
  905.         Set Error = "NWIP: Failed setting values in IPXSPX"
  906.         goto fatal
  907.     Endif
  908.  
  909.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\IpxSpx" $(MAXIMUM_ALLOWED) KeyProduct
  910.     Ifstr $(KeyProduct) != $(KeyNull)
  911.         Set KeyValueList = {"DependOnService",$(NoTitle),$(!REG_VT_MULTI_SZ),{"NWIP"}}
  912.         SetRegValue $(KeyProduct) $(KeyValueList)
  913.     Else
  914.         Set Error = "NWIP: Failed setting DependOnService values in IPXSPX"
  915.         goto fatal
  916.     Endif
  917.  
  918.     Debug-Output "OEMNSVIP.INF: CommonStatus = "$(CommonStatus)
  919.  
  920.     goto end
  921.  
  922. ;-----------------------------------------------
  923. ; Remove section
  924. ;-----------------------------------------------
  925. removeNWIP = +
  926.     Ifstr(i) $(Product$(SvcOpt)Control) == component
  927.         Debug-Output "RemoveSoftwareComponent: Manufacturer = "$(Manufacturer)" Product$(SvcOpt)Name = "$(Product$(SvcOpt)Name)
  928.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  929.             $(Product$(SvcOpt)Name)
  930.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  931.             Debug-Output "OEMNSVIP.INF: RemoveSoftwareComponent ShellCode error "$($ShellCode)
  932.             goto ShellCodeError
  933.         endif
  934.         set RegistryErrorIndex = $($R0)
  935.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  936.             goto fatalregistry
  937.         Endif
  938.     Else-Ifstr(i) $(Product$(SvcOpt)Control) == service
  939.         Shell $(UtilityInf), RemoveService, $(Product$(SvcOpt)Name), "YES"
  940.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  941.             Debug-Output "OEMNSVIP.INF: RemoveService ShellCode error "$($ShellCode)
  942.             goto ShellCodeError
  943.         endif
  944.         set RegistryErrorIndex = $($R0)
  945.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  946.             goto fatalregistry
  947.         Endif
  948.     Endif
  949.  
  950.     ;
  951.     ;  Remove DependOnService in IPXSPX
  952.     ;
  953.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\IpxSpx" $(MAXIMUM_ALLOWED) KeyProduct
  954.     Ifstr $(KeyProduct) != $(KeyNull)
  955.         Set KeyValueList = {"DependOnService",$(NoTitle),$(!REG_VT_MULTI_SZ),{}}
  956.         SetRegValue $(KeyProduct) $(KeyValueList)
  957.     Else
  958.         Set Error = "NWIP: Failed setting DependOnService values in IPXSPX"
  959.         goto fatal
  960.     Endif
  961.  
  962.  
  963.     Debug-Output "CommonStatus = "$(CommonStatus)
  964.  
  965.     set CommonStatus = STATUS_SUCCESSFUL
  966.  
  967.     goto end
  968.  
  969. ;-----------------------------------------------
  970. ; Upgrade Software section
  971. ;-----------------------------------------------
  972. upgradeNWIP = +
  973.     set Error = "Upgrade: Sorry, not yet implemented."
  974.     goto fatal
  975.  
  976. ;
  977. ;  Escape hatches
  978. ;
  979. successful = +
  980.     goto end
  981.  
  982. ;
  983. ; warning display
  984. ;
  985. warning = +
  986.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  987.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  988.         goto ShellCodeError
  989.     endif
  990.     ifstr(i) $($R1) == "OK"
  991.         goto $(to)
  992.     else-ifstr(i) $($R1) == "CANCEL"
  993.         goto $(from)
  994.     else
  995. ;        Debug-Msg "Error Error Bad DLGEVENT"
  996.         goto end
  997.     endif
  998.  
  999.  
  1000. ;
  1001. ; non fatal error display
  1002. ;
  1003. nonfatalinfo = +
  1004.     Set CommonStatus = STATUS_USERCANCEL
  1005.     Set Severity = STATUS
  1006.     goto nonfatalmsg
  1007. nonfatal = +
  1008.     Set Severity = NONFATAL
  1009.     goto nonfatalmsg
  1010. nonfatalmsg = +
  1011.     ifstr(i) $(Error) == ""
  1012.         Set Severity = NONFATAL
  1013.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1014.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1015.             goto ShellCodeError
  1016.         endif
  1017.         set Error = $($R0)
  1018.     endif
  1019.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  1020.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1021.         goto ShellCodeError
  1022.     endif
  1023.     ifstr(i) $($R1) == "OK"
  1024.         goto $(from)
  1025.     else
  1026.         goto "end"
  1027.     endif
  1028.  
  1029. ;
  1030. ;  Registry is broken
  1031. ;
  1032. fatalregistry = +
  1033.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  1034.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1035.         goto ShellCodeError
  1036.     endif
  1037.     set Error = $($R0)
  1038.     goto fatal
  1039. ;
  1040. ; fatal error display
  1041. ;
  1042. fatal = +
  1043.     ifstr(i) $(Error) == ""
  1044.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  1045.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1046.             goto ShellCodeError
  1047.         endif
  1048.         set Error = $($R0)
  1049.     endif
  1050.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  1051.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  1052.         goto ShellCodeError
  1053.     endif
  1054.  
  1055.     goto setfailed
  1056.  
  1057. ;
  1058. ;  Shelling error
  1059. ;
  1060. ShellCodeError = +
  1061.     set DlgType    = "MessageBox"
  1062.     set STF_MB_TITLE = "Error: "$(FunctionTitle)
  1063.     set STF_MB_TEXT  = "Shell Code Error "$(TWM_ShellErrorTitle)
  1064.     set STF_MB_TYPE  = 1
  1065.     set STF_MB_ICON  = 3
  1066.     set STF_MB_DEF    = 1
  1067.     ui start "Error Message"
  1068.     goto setfailed
  1069.  
  1070. setfailed = +
  1071.     set CommonStatus = STATUS_FAILED
  1072.     ;
  1073.     ; If OEM_ABANDON_ON, we need to clean up the registry
  1074.     ;
  1075.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  1076.         set OEM_ABANDON_ON = FALSE
  1077.         goto removeNWIP
  1078.     endif
  1079.     goto end
  1080.  
  1081. end = +
  1082.     ifstr(i) $(DoReboot) == "YES"
  1083.         shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" +
  1084.         "The changes you have made will not take effect until the computer is restarted."
  1085.     endif
  1086.  
  1087.     EndWait
  1088.     goto term
  1089.  
  1090. term = +
  1091.  
  1092.     Return $(CommonStatus)
  1093.  
  1094. [NWIPDlgENG]
  1095. DlgType = "RadioCombination"
  1096. DlgTemplate = "NWIP_CONFIG"
  1097. Caption = "Novell NetWare/IP Support"
  1098. OK = "&OK"
  1099. Cancel = "&Cancel"
  1100. Help = "&Help"
  1101. DomainName = "NetWare/IP Domain"
  1102. GroupName = "Advanced Settings"
  1103. DSS = "Preferred DSS"
  1104. NNS = "Nearest NetWare/IP Server"
  1105. NSQ = "Enable NSQ Broadcasts"
  1106. Retries = "AutoRetries"
  1107. RetryTime = "RetryTime"
  1108. CBOptionsGreyed = {}
  1109. RadioOptionsGreyed = {}
  1110. IDH_NWIP        =  909
  1111. HelpContext = $(IDH_NWIP)
  1112. ComboListItemsIn = {}
  1113. ComboListItemsOut = {}
  1114. NotifyFields = {}
  1115. EditTextIn = { $(DomainNameString) $(PreferredDSS) $(NearestServer) $(AutoRetries) $(AutoRetryTime) }
  1116. EditTextLim = {"","","","",""}
  1117. CheckItemsIn = {$(NSQBroadcasts)}
  1118.  
  1119.  
  1120. [Source Media Descriptions]
  1121.     1  = "NetWare Client for Windows NT Disk 1"  , TAGFILE = NTCLNT_1
  1122.  
  1123.