home *** CD-ROM | disk | FTP | other *** search
/ Windows NT Super Tune-Up Kit / PIE-WindowsNTSuperTuneUpKit-1997.iso / DRIVERS / SCSI_CD / PHILIPS / 206_NT / OEMSETUP.INF < prev    next >
INI File  |  1994-05-11  |  21KB  |  662 lines

  1. ;-----------------------------------------------------------------------
  2. ;    Lms206 Device Driver Installation/Setup File
  3. ;-----------------------------------------------------------------------
  4.  
  5. [Identification]
  6.     OptionType = SCSI
  7.  
  8.  
  9. [LanguagesSupported]
  10.     ENG
  11.  
  12.  
  13. ;-----------------------------------------------------------------------
  14. ; OPTION LIST
  15. ; -----------
  16. ; This section lists the Option key names.  These keys are locale
  17. ; independent and used to represent the option in a locale independent
  18. ; manner.
  19. ;
  20. ;-----------------------------------------------------------------------
  21.  
  22. [Options]
  23.     "OEMSRC"    = Lms206Cdrom
  24.  
  25. ;-----------------------------------------------------------------------
  26. ; OPTION TEXT SECTION
  27. ; -------------------
  28. ; These are text strings used to identify the option to the user.  There
  29. ; are separate sections for each language supported.  The format of the
  30. ; section name is "OptionsText" concatenated with the Language represented
  31. ; by the section.
  32. ;
  33. ;-----------------------------------------------------------------------
  34.  
  35. [OptionsTextENG]
  36.     "OEMSRC"    = "Lms206 CD-Rom Device Driver"
  37.  
  38.  
  39. ;-----------------------------------------------------------------------------------------
  40. ; SCSI MINIPORT DRIVERS:
  41. ;
  42. ; Order of the information:
  43. ;
  44. ; Class driver = Type, Group, ErrorControl, Tag, EventMessageFile, TypesSupported
  45. ;
  46. ;-----------------------------------------------------------------------------------------
  47.  
  48. [MiniportDrivers]
  49.     Lms206Cdrom  = !SERVICE_KERNEL_DRIVER, "SCSI Miniport", !SERVICE_ERROR_NORMAL,  17, %SystemRoot%\System32\IoLogMsg.dll , 7
  50.  
  51. ;---------------------------------------------------------------------------
  52. ; 1. Identify
  53. ;
  54. ; DESCRIPTION:   To verify that this INF deals with the same type of options
  55. ;                as we are choosing currently.
  56. ;
  57. ; INPUT:         None
  58. ;
  59. ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL
  60. ;                $($R1): Option Type (COMPUTER ...)
  61. ;                $($R2): Diskette description
  62. ;---------------------------------------------------------------------------
  63.  
  64. [Identify]
  65.     ;
  66.     ;
  67.     read-syms Identification
  68.  
  69.     set Status     = STATUS_SUCCESSFUL
  70.     set Identifier = $(OptionType)
  71.     set Media      = #("Source Media Descriptions", 1, 1)
  72.  
  73.     Return $(Status) $(Identifier) $(Media)
  74.  
  75.  
  76.  
  77. ;------------------------------------------------------------------------
  78. ; 2. ReturnOptions:
  79. ;
  80. ; DESCRIPTION:   To return the option list supported by this INF and the
  81. ;                localised text list representing the options.
  82. ;
  83. ;
  84. ; INPUT:         $($0):  Language used. ( ENG | FRN | ... )
  85. ;
  86. ; OUTPUT:        $($R0): STATUS: STATUS_SUCCESSFUL |
  87. ;                                STATUS_NOLANGUAGE
  88. ;                                STATUS_FAILED
  89. ;
  90. ;                $($R1): Option List
  91. ;                $($R2): Option Text List
  92. ;------------------------------------------------------------------------
  93.  
  94. [ReturnOptions]
  95.     ;
  96.     ;
  97.     set Status        = STATUS_FAILED
  98.     set OptionList     = {}
  99.     set OptionTextList = {}
  100.  
  101.     ;
  102.     ; Check if the language requested is supported
  103.     ;
  104.     set LanguageList = ^(LanguagesSupported, 1)
  105.     Ifcontains(i) $($0) in $(LanguageList)
  106.         goto returnoptions
  107.     else
  108.         set Status = STATUS_NOLANGUAGE
  109.         goto finish_ReturnOptions
  110.     endif
  111.  
  112.     ;
  113.     ; form a list of all the options and another of the text representing
  114.     ;
  115.  
  116. returnoptions = +
  117.     set OptionList     = ^(Options, 0)
  118.     set OptionTextList = ^(OptionsText$($0), 1)
  119.     set Status         = STATUS_SUCCESSFUL
  120.  
  121. finish_ReturnOptions = +
  122.     Return $(Status) $(OptionList) $(OptionTextList)
  123.  
  124.  
  125. ;
  126. ; 3. InstallOption:
  127. ;
  128. ; FUNCTION:  To copy files representing Options
  129. ;            To configure the installed option
  130. ;            To update the registry for the installed option
  131. ;
  132. ; INPUT:     $($0):  Language to use
  133. ;            $($1):  OptionID to install
  134. ;            $($2):  SourceDirectory
  135. ;            $($3):  AddCopy  (YES | NO)
  136. ;            $($4):  DoCopy   (YES | NO)
  137. ;            $($5):  DoConfig (YES | NO)
  138. ;
  139. ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
  140. ;                            STATUS_NOLANGUAGE |
  141. ;                            STATUS_USERCANCEL |
  142. ;                            STATUS_FAILED
  143. ;
  144.  
  145. [InstallOption]
  146.  
  147.     ;
  148.     ; Set default values for
  149.     ;
  150.     set Status = STATUS_FAILED
  151.     set DrivesToFree = {}
  152.  
  153.     ;
  154.     ; extract parameters
  155.     ;
  156.     set Option   = $($1)
  157.     set SrcDir   = $($2)
  158.     set AddCopy  = $($3)
  159.     set DoCopy   = $($4)
  160.     set DoConfig = $($5)
  161.  
  162.     ;
  163.     ; Check if the language requested is supported
  164.     ;
  165.     set LanguageList = ^(LanguagesSupported, 1)
  166.     Ifcontains(i) $($0) in $(LanguageList)
  167.     else
  168.         set Status = STATUS_NOLANGUAGE
  169.         goto finish_InstallOption
  170.     endif
  171.     read-syms Strings$($0)
  172.  
  173.     ;
  174.     ; check to see if Option is supported.
  175.     ;
  176.  
  177.     set OptionList = ^(Options, 0)
  178.     ifcontains $(Option) in $(OptionList)
  179.     else
  180.         goto finish_InstallOption
  181.     endif
  182.     set OptionList = ""
  183.  
  184.     ;
  185.     ; Option has been defined already
  186.     ;
  187.  
  188.     set MiniportDriver   =   #(Options,         $(Option),         1)
  189.     set Type             = $(#(MiniportDrivers, $(MiniportDriver), 1))
  190.     set Group            =   #(MiniportDrivers, $(MiniportDriver), 2)
  191.     set ErrorControl     = $(#(MiniportDrivers, $(MiniportDriver), 3))
  192.     set Tag              =   #(MiniportDrivers, $(MiniportDriver), 4)
  193.     set EventMessageFile =   #(MiniportDrivers, $(MiniportDriver), 5)
  194.     set TypesSupported   =   #(MiniportDrivers, $(MiniportDriver), 6)
  195.  
  196.     set Start            =   $(!SERVICE_BOOT_START)
  197.  
  198. installtheoption = +
  199.  
  200.     ;
  201.     ; Code to add files to copy list
  202.     ;
  203.  
  204.     ifstr(i) $(AddCopy) == "YES"
  205.         set DoActualCopy = NO
  206.         set FileToCheck = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  207.         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
  208.         ifstr(i) $(STATUS) == NO
  209.             set DoActualCopy = YES
  210.         endif
  211.  
  212.         ifstr(i) $(DoActualCopy) == NO
  213.             shell "subroutn.inf" DriversExist $($0) $(String1)
  214.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  215.                 goto finish_InstallOption
  216.             endif
  217.  
  218.             ifstr(i) $($R0) == STATUS_CURRENT
  219.             else-ifstr(i) $($R0) == STATUS_NEW
  220.                 set DoActualCopy = YES
  221.             else-ifstr(i) $($R0) == STATUS_USERCANCEL
  222.                 goto finish_InstallOption
  223.             else
  224.                 goto finish_InstallOption
  225.             endif
  226.         endif
  227.  
  228.         ifstr(i) $(DoActualCopy) == YES
  229.  
  230.             shell "subroutn.inf" DoAskSourceEx $(SrcDir) $(String2)
  231.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  232.                 goto finish_InstallOption
  233.             endif
  234.  
  235.             ifstr(i) $($R0) == STATUS_SUCCESSFUL
  236.                 set SrcDir = $($R1)
  237.                 ifstr(i) $($R2) != ""
  238.                     set DrivesToFree = >($(DrivesToFree), $($R2))
  239.                 endif
  240.             else
  241.                 goto finish_InstallOption
  242.             endif
  243.  
  244.             install Install-AddCopyOption
  245.             ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
  246.                 goto finish_InstallOption
  247.             endif
  248.         else
  249.             set DoCopy = NO
  250.         endif
  251.  
  252.     endif
  253.  
  254.     ifstr(i) $(DoCopy) == "YES"
  255.         read-syms ProgressCopy$($0)
  256.         install Install-DoCopyOption
  257.         ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
  258.             goto finish_InstallOption
  259.         else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
  260.             set Status = STATUS_USERCANCEL
  261.             goto finish_InstallOption
  262.         endif
  263.     endif
  264.  
  265.     ifstr(i) $(DoConfig) == "YES"
  266.         ;
  267.         ; run a privilege check on modifying the setup node
  268.         ;
  269.  
  270.         shell "registry.inf" CheckSetupModify
  271.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  272.             goto finish_InstallOption
  273.         endif
  274.  
  275.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  276.             goto finish_InstallOption
  277.         endif
  278.  
  279.         ;
  280.         ; Get optional user parameters
  281.         ;
  282. ;        read-syms GetDevParamsDlg$(!STF_LANGUAGE)
  283. ;        shell "" DoGetUserEx $(String9) $(DlgText)
  284. ;        ifstr(i) $($R0) == STATUS_SUCCESSFUL
  285. ;            set String9 = $($R1)
  286. ;        endif
  287.  
  288.         ;
  289.         ; make a new SCSI entry, the entry is created automatically
  290.         ; enabled
  291.         ;
  292.         set ServiceNode   = $(MiniportDriver)
  293.         set ServiceBinary = System32\drivers\#(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  294.  
  295.         set ServicesValues   = { +
  296.                 {Type,           0, $(!REG_VT_DWORD),     $(Type)                  }, +
  297.                 {Start,          0, $(!REG_VT_DWORD),     $(Start)                 }, +
  298.                 {Group,          0, $(!REG_VT_SZ),        $(Group)                 }, +
  299.                 {ErrorControl,   0, $(!REG_VT_DWORD),     $(ErrorControl)          }, +
  300.                 {Tag,            0, $(!REG_VT_DWORD),     $(Tag)                   }, +
  301.                 {BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary)         }  +
  302.                 }
  303.         set ParametersValues = ""
  304.         set DeviceValues     = {}
  305.         set EventLogValues   = { +
  306.                 {EventMessageFile, 0, $(!REG_VT_EXPAND_SZ), $(EventMessageFile) }, +
  307.                 {TypesSupported,   0, $(!REG_VT_DWORD),     $(TypesSupported)   }  +
  308.                 }
  309.  
  310.         shell "registry.inf"  MakeServicesEntry $(ServiceNode)      +
  311.                                                 $(ServicesValues)   +
  312.                                                 $(ParametersValues) +
  313.                                                 $(DeviceValues)     +
  314.                                                 $(EventLogValues)   +
  315.                                                 Parameters
  316.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  317.             goto finish_InstallOption
  318.         endif
  319.  
  320.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  321.             goto finish_InstallOption
  322.         endif
  323.     endif
  324.  
  325.     set Key1 = "SYSTEM\CurrentControlSet\Services\Lms206Cdrom\Parameters"
  326.     OpenRegKey $(!REG_H_LOCAL) "" $(Key1) $(MaskAllAccess) Key1Handle
  327.     ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  328.         CreateRegKey $(!REG_H_LOCAL) {$(Key1),0,GenericClass} "" $(MaskAllAccess) "" Key1Handle
  329.     endif
  330.     ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  331.         CloseRegKey $(Key1Handle)
  332.         goto finish_InstallOption
  333.     endif
  334.  
  335.  
  336.     set Key2 = $(Key1)"\Device0"
  337.     OpenRegKey $(!REG_H_LOCAL) "" $(Key2) $(MaskAllAccess) Key2Handle
  338.     ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  339.         CreateRegKey $(!REG_H_LOCAL) {$(Key2),0,GenericClass} "" $(MaskAllAccess) "" Key2Handle
  340.     endif
  341.     ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  342.         CloseRegKey $(Key1Handle)
  343.         CloseRegKey $(Key2Handle)
  344.         goto finish_InstallOption
  345.     endif
  346.  
  347.  
  348. ;    Shell "", ReduceInfPath, $(Key2)
  349. ;    SetRegValue $(Key2Handle) {Key2,0,$(!REG_VT_EXPAND_SZ),"DriverParameter"}
  350.  
  351.     CloseRegKey $(Key1Handle)
  352.     CloseRegKey $(Key2Handle)
  353.     set Status = STATUS_SUCCESSFUL
  354. finish_InstallOption = +
  355.     ForListDo $(DrivesToFree)
  356.         LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
  357.     EndForListDo
  358.     Return $(Status)
  359.  
  360.  
  361. [Install-AddCopyOption]
  362.  
  363.     ;
  364.     ; Add the files to the copy list
  365.     ;
  366.     AddSectionKeyFileToCopyList   Files-ScsiMiniportDrivers         +
  367.                                   $(MiniportDriver)                 +
  368.                                   $(SrcDir)                      +
  369.                                   $(!STF_WINDOWSSYSPATH)\drivers
  370.  
  371.     exit
  372.  
  373.  
  374. [Install-DoCopyOption]
  375.  
  376.     ;
  377.     ; Copy files in the copy list
  378.     ;
  379.     CopyFilesInCopyList
  380.     exit
  381.  
  382. ;-------------------------------------------------------------------------
  383. ; 4. DeInstallOption:
  384. ;
  385. ; FUNCTION:  To remove files representing Option
  386. ;            To remove the registry entry corresponding to the Option
  387. ;
  388. ; INPUT:     $($0):  Language to use
  389. ;            $($1):  OptionID to install
  390. ;
  391. ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
  392. ;                            STATUS_NOLANGUAGE |
  393. ;                            STATUS_USERCANCEL |
  394. ;                            STATUS_FAILED
  395. ;-------------------------------------------------------------------------
  396. [DeInstallOption]
  397.     ;
  398.     ; Set default values for
  399.     ;
  400.     set Status   = STATUS_FAILED
  401.     ;
  402.     ; extract parameters
  403.     ;
  404.     set Option   = $($1)
  405.  
  406.     ;
  407.     ; Check if the language requested is supported
  408.     ;
  409.     set LanguageList = ^(LanguagesSupported, 1)
  410.     Ifcontains(i) $($0) in $(LanguageList)
  411.     else
  412.         set Status = STATUS_NOLANGUAGE
  413.         goto finish_DeInstallOption
  414.     endif
  415.     read-syms Strings$($0)
  416.  
  417.     ;
  418.     ; check to see if Option is supported.
  419.     ;
  420.  
  421.     set OptionList = ^(Options, 0)
  422.     ifcontains $(Option) in $(OptionList)
  423.     else
  424.         goto finish_DeInstallOption
  425.     endif
  426.     set OptionList = ""
  427.  
  428.     ;
  429.     ; fetch details about option
  430.     ;
  431.  
  432.     set MiniportDriver = #(Options, $(Option), 1)
  433.     set MiniportFile   = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  434.     set FilePath       = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
  435.  
  436.     ;
  437.     ; check to see if file is installed
  438.     ; if not give success
  439.     ;
  440.  
  441.     LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
  442.     ifstr(i) $(STATUS) == "NO"
  443.         set Status = STATUS_SUCCESSFUL
  444.         goto finish_DeInstallOption
  445.     endif
  446.  
  447.     shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
  448.     ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
  449.         ; this could happen if there is no start value or there is no
  450.         ; key, in which case the option is not installed
  451.         set Status = STATUS_SUCCESSFUL
  452.         goto finish_DeInstallOption
  453.     endif
  454.  
  455.     ifstr(i) $($R1) == $(!SERVICE_BOOT_START)
  456.         shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "WARNING" $(String3)
  457.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  458.             goto do_removal
  459.         endif
  460.         ifstr(i) $($R1) == "CANCEL"
  461.             goto finish_DeInstallOption
  462.         endif
  463.     endif
  464.  
  465. do_removal =+
  466.     ;
  467.     ; disable the registry entry
  468.     ;
  469.  
  470.     shell "registry.inf" RemoveServicesEntry $(MiniportDriver)
  471.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  472.         goto finish_DeInstallOption
  473.     endif
  474.  
  475.     ifstr(i) $($R0) != STATUS_SUCCESSFUL
  476.         goto finish_DeInstallOption
  477.     endif
  478.  
  479.     ;
  480.     ; we won't remove the file because we can only do so during the next boot.
  481.     ; if the user chooses to reinstall the same driver during this boot
  482.     ; he will still end up deleting the driver on next boot. if the file
  483.     ; should be deleted a warning should be put up saying that the user should
  484.     ; not try to reinstall the driver during this boot
  485.     ;
  486.     ;    AddFileToDeleteList $(FilePath)
  487.  
  488.     set Status = STATUS_SUCCESSFUL
  489.  
  490. finish_DeInstallOption =+
  491.     return $(Status)
  492.  
  493.  
  494. ;-------------------------------------------------------------------------
  495. ; 5. GetInstalledOptions:
  496. ;
  497. ; FUNCTION:  To find out the list of options which are installed
  498. ;
  499. ; INPUT:     $($0): Language to Use
  500. ;
  501. ; OUTPUT:    $($R0): STATUS: STATUS_SUCCESSFUL |
  502. ;                            STATUS_FAILED
  503. ;
  504. ;            $($R1): List of options installed
  505. ;            $($R2): Option installed Text List
  506. ;-------------------------------------------------------------------------
  507. [GetInstalledOptions]
  508.     set Status = STATUS_FAILED
  509.     set InstalledOptions = {}
  510.     set InstalledOptionsText = {}
  511.  
  512.     ;
  513.     ; Check if the language requested is supported
  514.     ;
  515.     set LanguageList = ^(LanguagesSupported, 1)
  516.     Ifcontains(i) $($0) in $(LanguageList)
  517.     else
  518.         set Status = STATUS_NOLANGUAGE
  519.         goto finish_GetInstalledOptions
  520.     endif
  521.  
  522.     set OptionList = ^(Options, 0)
  523.     ForListDo $(OptionList)
  524.         set MiniportDriver = #(Options, $($), 1)
  525.         set MiniportFile   = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  526.         set FilePath       = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
  527.         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
  528.         ifstr(i) $(STATUS) == "YES"
  529.             shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
  530.             ifint $($ShellCode) == $(!SHELL_CODE_OK)
  531.                 ifstr(i) $($R0) == STATUS_SUCCESSFUL
  532.                     ifstr(i) $($R1) != $(!SERVICE_DISABLED)
  533.  
  534.                         set OptionText = #(OptionsText$($0), $($), 1)
  535.                         set InstalledOptions     = >($(InstalledOptions), $($))
  536.                         set InstalledOptionsText = >($(InstalledOptionsText), $(OptionText))
  537.  
  538.                     endif
  539.                 endif
  540.             endif
  541.         endif
  542.     EndForListDo
  543.     set Status = STATUS_SUCCESSFUL
  544. finish_GetInstalledOptions =+
  545.     Return $(Status) $(InstalledOptions) $(InstalledOptionsText)
  546.  
  547.  
  548. ;**************************************************************************
  549. ; PROGRESS GUAGE VARIABLES
  550. ;**************************************************************************
  551.  
  552. [ProgressCopyENG]
  553.     ProCaption   = "Windows NT Setup"
  554.     ProCancel    = "Cancel"
  555.     ProCancelMsg = "Windows NT is not correcly installed.  Are you sure you want "+
  556.                    "to cancel copying files?"
  557.     ProCancelCap = "Setup Message"
  558.     ProText1     = "Copying:"
  559.     ProText2     = "To:"
  560.  
  561. [StringsENG]
  562.     String1 = "SCSI Adapter"
  563.     String2 = "Please enter the full path to the OEM SCSI "+
  564.               "Adapter files.  Then choose Continue."
  565.     String3 = "The SCSI Adapter has been marked as a boot device.  Removing "+
  566.               "it may cause the system not to boot."$(!LF)$(!LF)"Are you sure "+
  567.               "you want to remove the Adapter."
  568.     String9 = "Irq3=15 Mem3=24"
  569.  
  570.  
  571. [GetDevParamsDlgENG]
  572.     Caption        = "Lms Cd-Rom Setup"
  573.     Continue       = "Continue"
  574.     Cancel         = "Cancel"
  575.     Ok             = "Ok"
  576.     DlgType        = "Edit"
  577.     DlgTemplate    = "GetDevParams"
  578.     DlgText    = "Enter the Optional Parameters IRQx, and MEMx where x represents the "+
  579.                  "Cd-Rom Unit Number 0,1,2, or 3."
  580.     Edit1Label     = ""
  581.     EditTextIn     = $(Src)
  582.     EditFocus      = "ALL"
  583.  
  584.  
  585. [DoGetUserEx]
  586.     set Status      = STATUS_FAILED
  587.     set Src         = $($0)
  588.     set DriveToFree = ""
  589. GetUser = +
  590.     read-syms DisketteDlg$(!STF_LANGUAGE)
  591.     ui start "Diskette"
  592.     ifstr(i) $(DLGEVENT) == "CONTINUE"
  593.             set Src = $(EditTextOut)
  594.         ui pop 1
  595.         LibraryProcedure STATUS, $(!LIBHANDLE), AppendBackSlash $(Src)
  596.         ifstr(i) $(STATUS) == "ERROR"
  597.             goto finish_DoGetUser
  598.         else
  599.             set Src = $(STATUS)
  600.             set Status = STATUS_SUCCESSFUL
  601.             goto finish_DoGetUser
  602.         endif
  603.     else-ifstr(i) $(DLGEVENT) == "BACK"
  604.         ui pop 1
  605.         set Status = STATUS_USERCANCEL
  606.         goto finish_DoGetUser
  607.     else
  608.         ui pop 1
  609.         goto finish_DoGetUser
  610.     endif
  611. finish_DoGetUser = +
  612.     Return $(Status) $(Src) $(DriveToFree) $(EditTextOut)
  613.  
  614.  
  615. [DisketteDlgENG]
  616.     Caption        = "LMS Cd-Rom Setup"
  617.     Continue       = "Continue"
  618.     Cancel         = "Cancel"
  619.     DlgType        = "Edit"
  620.     DlgTemplate    = "DISKETTE"
  621.     DlgText        = $($1)
  622.     Edit1Label     = ""
  623.     EditTextIn     = $(Src)
  624.     EditFocus      = "ALL"
  625.  
  626.  
  627. [ReduceInfPath]
  628.     Set RIP_Result = $($0)
  629.     Split-String $(RIP_Result) "\" InList
  630.     Set BasePath = $(!STF_WINDOWSSYSPATH)"\"
  631.     Split-String $(BasePath) "\" BaseList
  632.     Set Indx = 0
  633.     Set Matched = 0
  634.     QueryListSize InListSize, $(InList)
  635.     ForListDo $(BaseList)
  636.         Set-add Indx = $(Indx),1
  637.         Ifint $(Indx) <= $(InListSize)
  638.             Set Instr = *($(InList),$(Indx))
  639.             Ifstr(i) $($) == $(Instr)
  640.                 Set-add Matched = $(Matched),1
  641.             Endif
  642.         Endif
  643.     EndForListDo
  644.     Ifint $(Indx) == $(Matched)
  645.         Set RIP_Result = ""
  646.         Set Indx2 = 0
  647.         ForListDo $(InList)
  648.             Set-add Indx2 = $(Indx2),1
  649.             Ifint $(Indx2) > $(Indx)
  650.                 Set RIP_Result = $(RIP_Result)$($)
  651.             Endif
  652.         EndForListDo
  653.     Endif
  654.     Return $(RIP_Result)
  655.  
  656.  
  657. [Source Media Descriptions]
  658.     1  = "OEM DISK (SCSI)"  , TAGFILE = disk1
  659.  
  660. [Files-ScsiMiniportDrivers]
  661. Lms206Cdrom = 1,lms206.sys
  662.