home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April (Special) / Chip-Special_1997-04_cd.bin / panasoni / 740setup / 740setup.exe / OEMSETUP.INF < prev    next >
INI File  |  1996-06-06  |  14KB  |  389 lines

  1. ;***********************************************************************
  2. ; OEMSETUP.INF (06/06/96 up version)
  3. ;         GUI setup file for Panasonic qlmini based products
  4. ;    All Rights Reserved,
  5. ;           (C)COPYRIGHT 1995,96 KYUSHU MATSUSHITA ELECTRIC CO., LTD.
  6. ;***********************************************************************
  7.  
  8. [Identification]
  9.     OptionType = SCSI
  10.  
  11. [LanguagesSupported]
  12.     ENG
  13.  
  14. [Options]
  15.     "qlmini"       = qlmini
  16.  
  17. [OptionsTextENG]
  18.     "qlmini"      = "Panasonic KXLC002 SCSI Host Adapter, for NT3.51"
  19.  
  20. [MiniportDrivers]
  21.     qlmini    = !SERVICE_KERNEL_DRIVER, "SCSI Miniport", !SERVICE_ERROR_NORMAL,  17, %SystemRoot%\System32\IoLogMsg.dll , 7
  22.  
  23. [Identify]
  24.     read-syms Identification
  25.  
  26.     set Status     = STATUS_SUCCESSFUL
  27.     set Identifier = $(OptionType)
  28.     set Media      = #("Source Media Descriptions", 1, 1)
  29.  
  30.     Return $(Status) $(Identifier) $(Media)
  31.  
  32. [ReturnOptions]
  33.     set Status        = STATUS_FAILED
  34.     set OptionList     = {}
  35.     set OptionTextList = {}
  36.  
  37.     ; Check if the language requested is supported
  38.     set LanguageList = ^(LanguagesSupported, 1)
  39.     Ifcontains(i) $($0) in $(LanguageList)
  40.         goto returnoptions
  41.     else
  42.         set Status = STATUS_NOLANGUAGE
  43.         goto finish_ReturnOptions
  44.     endif
  45.  
  46.     ; form a list of all the options and another of the text representing
  47.  
  48. returnoptions = +
  49.     set OptionList     = ^(Options, 0)
  50.     set OptionTextList = ^(OptionsText$($0), 1)
  51.     set Status         = STATUS_SUCCESSFUL
  52.  
  53. finish_ReturnOptions = +
  54.     Return $(Status) $(OptionList) $(OptionTextList)
  55.  
  56. [InstallOption]
  57.     set KeyName = "System\CurrentControlSet\Services\Pcmcia\DataBase"
  58.     OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_ALL_ACCESS) PcmciaKeyHandle
  59.     ifstr(i) $(PcmciaKeyHandle) != ""
  60.         OpenRegKey $(!REG_H_LOCAL) "" $(KeyName)"\KME" $(!REG_KEY_ALL_ACCESS) TestKeyHandle
  61.                 ifstr(i) $(TestKeyHandle) == ""
  62.             CreateRegKey $(PcmciaKeyHandle) {"KME",0,GenericClass} "" $(!REG_KEY_ALL_ACCESS) "" KmeKeyHandle
  63.                     CreateRegKey $(KmeKeyHandle) {"KXLC002",0,GenericClass} "" $(!REG_KEY_ALL_ACCESS) "" Kxlc002KeyHandle
  64.                     SetRegValue    $(Kxlc002KeyHandle) {Driver,0,$(!REG_VT_SZ),"qlmini"}
  65.                 CloseRegKey $(Kxlc002KeyHandle)
  66.             CloseRegKey $(KmeKeyHandle)
  67.         endif
  68.         CloseRegKey $(TestKeyHandle)
  69.     endif
  70.     CloseRegKey $(PcmciaKeyHandle)
  71.  
  72.     set KeyName = "System\CurrentControlSet\Services\Scsidisk"
  73.     OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_ALL_ACCESS) ScsidiskKeyHandle
  74.     ifstr(i) $(ScsidiskKeyHandle) != ""
  75.         GetRegValue $(ScsidiskKeyHandle) Start StartInfo
  76.         ifint *($(StartInfo),4) == 4      
  77.             SetRegValue    $(ScsidiskKeyHandle) {Start,0,$(!REG_VT_DWORD),1}
  78.         endif
  79.     endif
  80.     CloseRegKey $(PcmciaKeyHandle)
  81.  
  82.     set Status = STATUS_FAILED
  83.     set DrivesToFree = {}
  84.  
  85.     set Option   = $($1)
  86.     set SrcDir   = $($2)
  87.     set AddCopy  = $($3)
  88.     set DoCopy   = $($4)
  89.     set DoConfig = $($5)
  90.  
  91.     set LanguageList = ^(LanguagesSupported, 1)
  92.     Ifcontains(i) $($0) in $(LanguageList)
  93.     else
  94.         set Status = STATUS_NOLANGUAGE
  95.         goto finish_InstallOption
  96.     endif
  97.     read-syms Strings$($0)
  98.  
  99.     set OptionList = ^(Options, 0)
  100.     ifcontains $(Option) in $(OptionList)
  101.     else
  102.         Debug-Output "SCSI.INF: SCSI option is not supported."
  103.         goto finish_InstallOption
  104.     endif
  105.     set OptionList = ""
  106.  
  107.     set MiniportDriver   =   #(Options,         $(Option),         1)
  108.     set Type             = $(#(MiniportDrivers, $(MiniportDriver), 1))
  109.     set Group            =   #(MiniportDrivers, $(MiniportDriver), 2)
  110.     set ErrorControl     = $(#(MiniportDrivers, $(MiniportDriver), 3))
  111.     set Tag              =   #(MiniportDrivers, $(MiniportDriver), 4)
  112.     set EventMessageFile =   #(MiniportDrivers, $(MiniportDriver), 5)
  113.     set TypesSupported   =   #(MiniportDrivers, $(MiniportDriver), 6)
  114.  
  115.     set Start            =   $(!SERVICE_BOOT_START)
  116.  
  117. installtheoption = +
  118.  
  119.     ifstr(i) $(AddCopy) == "YES"
  120.         set DoActualCopy = NO
  121.         set FileToCheck = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  122.         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck)
  123.         ifstr(i) $(STATUS) == NO
  124.             set DoActualCopy = YES
  125.         endif
  126.  
  127.         ifstr(i) $(DoActualCopy) == NO
  128.             shell "subroutn.inf" DriversExist $($0) $(String1)
  129.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  130.                 Debug-Output "SCSI.INF: shelling DriversExist failed"
  131.                 goto finish_InstallOption
  132.             endif
  133.  
  134.             ifstr(i) $($R0) == STATUS_CURRENT
  135.             else-ifstr(i) $($R0) == STATUS_NEW
  136.                 set DoActualCopy = YES
  137.             else-ifstr(i) $($R0) == STATUS_USERCANCEL
  138.                 Debug-Output "SCSI.INF: User cancelled SCSI installation"
  139.                 goto finish_InstallOption
  140.             else
  141.                 Debug-Output "SCSI.INF: Error reported in DriversExist routine in SUBROUTN.INF"
  142.                 goto finish_InstallOption
  143.             endif
  144.         endif
  145.  
  146.         ifstr(i) $(DoActualCopy) == YES
  147.  
  148.             shell "subroutn.inf" DoAskSourceEx $(SrcDir) $(String2)
  149.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  150.                 Debug-Output "SCSI.INF: shelling DoAskSourceEx failed"
  151.                 goto finish_InstallOption
  152.             endif
  153.  
  154.             ifstr(i) $($R0) == STATUS_SUCCESSFUL
  155.                 set SrcDir = $($R1)
  156.                 ifstr(i) $($R2) != ""
  157.                     set DrivesToFree = >($(DrivesToFree), $($R2))
  158.                 endif
  159.             else
  160.                 Debug-Output "SCSI.INF: User cancelled asking source."
  161.                 goto finish_InstallOption
  162.             endif
  163.  
  164.             install Install-AddCopyOption
  165.             ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS"
  166.                 Debug-Output "Adding SCSI files to copy list failed"
  167.                 goto finish_InstallOption
  168.             endif
  169.         else
  170.             set DoCopy = NO
  171.         endif
  172.  
  173.     endif
  174.  
  175.     ifstr(i) $(DoCopy) == "YES"
  176.         read-syms ProgressCopy$($0)
  177.         install Install-DoCopyOption
  178.         ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
  179.             Debug-Output "Copying files failed"
  180.             goto finish_InstallOption
  181.         else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
  182.             set Status = STATUS_USERCANCEL
  183.             goto finish_InstallOption
  184.         endif
  185.     endif
  186.  
  187.     ifstr(i) $(DoConfig) == "YES"
  188.  
  189.         shell "registry.inf" CheckSetupModify
  190.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  191.             goto finish_InstallOption
  192.         endif
  193.  
  194.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  195.             goto finish_InstallOption
  196.         endif
  197.  
  198.         set ServiceNode   = $(MiniportDriver)
  199.         set ServiceBinary = System32\drivers\#(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  200.  
  201.         set ServicesValues   = { +
  202.                 {Type,           0, $(!REG_VT_DWORD),     $(Type)                  }, +
  203.                 {Start,          0, $(!REG_VT_DWORD),     $(Start)                 }, +
  204.                 {Group,          0, $(!REG_VT_SZ),        $(Group)                 }, +
  205.                 {ErrorControl,   0, $(!REG_VT_DWORD),     $(ErrorControl)          }, +
  206.                 {Tag,            0, $(!REG_VT_DWORD),     $(Tag)                   }, +
  207.                 {BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary)         }  +
  208.                 }
  209.         set ParametersValues = ""
  210.         set DeviceValues     = {}
  211.         set EventLogValues   = { +
  212.                 {EventMessageFile, 0, $(!REG_VT_EXPAND_SZ), $(EventMessageFile) }, +
  213.                 {TypesSupported,   0, $(!REG_VT_DWORD),     $(TypesSupported)   }  +
  214.                 }
  215.  
  216.         shell "registry.inf"  MakeServicesEntry $(ServiceNode)      +
  217.                                                 $(ServicesValues)   +
  218.                                                 $(ParametersValues) +
  219.                                                 $(DeviceValues)     +
  220.                                                 $(EventLogValues)   +
  221.                                                 Parameters
  222.  
  223.  
  224.  
  225.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  226.             Debug-Output "Couldn't execute MakeServicesEntry in registry.inf"
  227.             goto finish_InstallOption
  228.         endif
  229.  
  230.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  231.             Debug-Output "MakeServicesEntry failed for SCSI"
  232.             goto finish_InstallOption
  233.         endif
  234.  
  235.     endif
  236.  
  237.     set Status = STATUS_SUCCESSFUL
  238. finish_InstallOption = +
  239.     ForListDo $(DrivesToFree)
  240.         LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE"
  241.     EndForListDo
  242.  
  243.     Return $(Status)
  244.  
  245.  
  246. [Install-AddCopyOption]
  247.     AddSectionKeyFileToCopyList   Files-ScsiMiniportDrivers         +
  248.                                   $(MiniportDriver)                 +
  249.                                   $(SrcDir)                      +
  250.                                   $(!STF_WINDOWSSYSPATH)\drivers
  251.  
  252.     exit
  253.  
  254.  
  255. [Install-DoCopyOption]
  256.     CopyFilesInCopyList
  257.     exit
  258.  
  259. [DeInstallOption]
  260.     set KeyName = "System\CurrentControlSet\Services\Pcmcia\DataBase"
  261.     OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_ALL_ACCESS) PcmciaKeyHandle
  262.         OpenRegKey $(!REG_H_LOCAL) "" $(KeyName)"\KME" $(!REG_KEY_ALL_ACCESS) TestKeyHandle
  263.         ifstr(i) $(TestKeyHandle) != ""
  264.             DeleteRegTree $(PcmciaKeyHandle) "KME"
  265.         endif
  266.         CloseRegKey $(TestKeyHandle)
  267.     CloseRegKey $(PcmciaKeyHandle)
  268.  
  269.     set Status   = STATUS_FAILED
  270.     set Option   = $($1)
  271.  
  272.     set LanguageList = ^(LanguagesSupported, 1)
  273.     Ifcontains(i) $($0) in $(LanguageList)
  274.     else
  275.         set Status = STATUS_NOLANGUAGE
  276.         goto finish_DeInstallOption
  277.     endif
  278.     read-syms Strings$($0)
  279.  
  280.     set OptionList = ^(Options, 0)
  281.     ifcontains $(Option) in $(OptionList)
  282.     else
  283.         goto finish_DeInstallOption
  284.     endif
  285.     set OptionList = ""
  286.  
  287.     set MiniportDriver = #(Options, $(Option), 1)
  288.     set MiniportFile   = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  289.     set FilePath       = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
  290.  
  291.     LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
  292.     ifstr(i) $(STATUS) == "NO"
  293.         set Status = STATUS_SUCCESSFUL
  294.         goto finish_DeInstallOption
  295.     endif
  296.  
  297.     shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
  298.     ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
  299.         set Status = STATUS_SUCCESSFUL
  300.         goto finish_DeInstallOption
  301.     endif
  302.  
  303.     ifstr(i) $($R1) == $(!SERVICE_BOOT_START)
  304.         shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "WARNING" $(String3)
  305.         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  306.             goto do_removal
  307.         endif
  308.         ifstr(i) $($R1) == "CANCEL"
  309.             goto finish_DeInstallOption
  310.         endif
  311.     endif
  312.  
  313. do_removal =+
  314.     shell "registry.inf" RemoveServicesEntry $(MiniportDriver)
  315.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  316.         Debug-Output "SCSI.INF: Failed to shell RemoveServicesEntry"
  317.         goto finish_DeInstallOption
  318.     endif
  319.  
  320.     ifstr(i) $($R0) != STATUS_SUCCESSFUL
  321.         Debug-Output "SCSI.INF: Failed to disable services entry"
  322.         goto finish_DeInstallOption
  323.     endif
  324.  
  325.     set Status = STATUS_SUCCESSFUL
  326.  
  327. finish_DeInstallOption =+
  328.     return $(Status)
  329.  
  330. [GetInstalledOptions]
  331.     set Status = STATUS_FAILED
  332.     set InstalledOptions = {}
  333.     set InstalledOptionsText = {}
  334.  
  335.     set LanguageList = ^(LanguagesSupported, 1)
  336.     Ifcontains(i) $($0) in $(LanguageList)
  337.     else
  338.         set Status = STATUS_NOLANGUAGE
  339.         goto finish_GetInstalledOptions
  340.     endif
  341.  
  342.     set OptionList = ^(Options, 0)
  343.     ForListDo $(OptionList)
  344.         set MiniportDriver = #(Options, $($), 1)
  345.         set MiniportFile   = #(Files-ScsiMiniportDrivers, $(MiniportDriver), 2)
  346.         set FilePath       = $(!STF_WINDOWSSYSPATH)"\drivers\"$(MiniportFile)
  347.         LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FilePath)
  348.         ifstr(i) $(STATUS) == "YES"
  349.             shell "registry.inf" GetServicesEntryStart $(MiniportDriver)
  350.             ifint $($ShellCode) == $(!SHELL_CODE_OK)
  351.                 ifstr(i) $($R0) == STATUS_SUCCESSFUL
  352.                     ifstr(i) $($R1) != $(!SERVICE_DISABLED)
  353.  
  354.                         set OptionText = #(OptionsText$($0), $($), 1)
  355.                         set InstalledOptions     = >($(InstalledOptions), $($))
  356.                         set InstalledOptionsText = >($(InstalledOptionsText), $(OptionText))
  357.  
  358.                     endif
  359.                 endif
  360.             endif
  361.         endif
  362.     EndForListDo
  363.     set Status = STATUS_SUCCESSFUL
  364. finish_GetInstalledOptions =+
  365.     Return $(Status) $(InstalledOptions) $(InstalledOptionsText)
  366.  
  367. [ProgressCopyENG]
  368.     ProCaption   = "Windows NT Setup"
  369.     ProCancel    = "Cancel"
  370.     ProCancelMsg = "Windows NT is not correcly installed.  Are you sure you want "+
  371.                    "to cancel copying files?"
  372.     ProCancelCap = "Setup Message"
  373.     ProText1     = "Copying:"
  374.     ProText2     = "To:"
  375.  
  376. [StringsENG]
  377.     String1 = "SCSI Adapter"
  378.     String2 = "Please enter a:\ or b:\ to copy the KXLC002 SCSI "+
  379.               "Adapter files. Then choose Continue."
  380.     String3 = "The SCSI Adapter has been marked as a boot device. Removing "+
  381.               "it may cause the system not to boot."$(!LF)$(!LF)"Are you sure "+
  382.               "you want to remove the Adapter."
  383.  
  384. [Source Media Descriptions]
  385.     1  = "Panasonic KXL-D740 SETUP DISK"  , TAGFILE = disk1
  386.  
  387. [Files-ScsiMiniportDrivers]
  388. qlmini   = 1, qlmini.sys, SIZE=10656
  389.