home *** CD-ROM | disk | FTP | other *** search
/ Chip Special: HTML & Java / Chip-Special_1997-01_HTML-a-Java.bin / actvx31.sdk / mvbrefs / inetsdk / inetsdk.inf next >
Encoding:
INI File  |  1996-10-29  |  75.2 KB  |  2,186 lines

  1.  
  2.     ;***********************************************************************
  3.     ; SOURCE MEDIA DESCRIPTION            
  4.     ; ------------------------
  5.     ;***********************************************************************
  6.     [Source Media Descriptions]
  7.         1 = "CD-Rom Labelled Windows NT"
  8.         2 = "CD-Rom Labelled ActiveX(tm) SDK"
  9.     
  10.     
  11.     
  12.     ;***********************************************************************
  13.     ; CONSTANTS FOR USING DIALOGS
  14.     ;***********************************************************************
  15.     [GeneralConstants]
  16.     
  17.         ;
  18.         ; Constants to support the use of radio button dialogs
  19.         ;
  20.     
  21.         Radio1  = "1"
  22.         Radio2  = "2"
  23.         Radio3  = "3"
  24.         Radio4  = "4"
  25.         Radio5  = "5"
  26.         Radio6  = "6"
  27.         Radio7  = "7"
  28.         Radio8  = "8"
  29.         Radio9  = "9"
  30.     
  31.         ;
  32.         ; Constants to support the use of checkbox dialogs
  33.     
  34.         Chosen    = "ON"
  35.         NotChosen = "OFF"
  36.     
  37.     
  38.     [RegistryConstants]
  39.     
  40.         MaskAllAccess = 33554432
  41.         NoTitle       = 0
  42.         RegLastError  = $(!REG_ERROR_SUCCESS)
  43.     
  44.     
  45.     ;************************************************************************
  46.     ; CONFIGURATION CHOICES
  47.     ; ---------------------
  48.     ; the sections below contain the different choices supported for
  49.     ; the configuration items shown.  an id section establishes the
  50.     ; language independent IDs supported by nt setup.  for each language
  51.     ; supported a text section displays the text used for the different
  52.     ; choices
  53.     ;************************************************************************
  54.     
  55.     ;********************************
  56.     ; PLATFORM INDEPENDENT CHOICES
  57.     ;********************************
  58.     ;----------------------------------------------------
  59.     ; LANGUAGE CHOICES
  60.     ;----------------------------------------------------
  61.     
  62.     ;----------------------------------------------------
  63.     ; PROCESSOR CHOICES
  64.     ;----------------------------------------------------
  65.     [ProcessorID]
  66.     
  67.         ProcessorID_I386  = I386
  68.         ProcessorID_I486  = I486
  69.         ProcessorID_I586  = I586
  70.         ProcessorID_R4000 = R4000
  71.         ProcessorID_ALPHA = ALPHA_AXP
  72.         ProcessorID_PPC601 = PPC601
  73.         ProcessorID_PPC603 = PPC603
  74.         ProcessorID_PPC604 = PPC604
  75.         ProcessorID_PPC620 = PPC620
  76.     
  77.     ;----------------------------------------------------
  78.     ; PLATFORM CHOICES
  79.     ;----------------------------------------------------
  80.     [PlatformID]
  81.     
  82.         PlatformID_I386 = i386
  83.         PlatformID_MIPS = mips
  84.         PlatformID_ALPHA = alpha
  85.         PlatformID_PPC = ppc
  86.     
  87.     ;**************************************************************
  88.     ;  UI VARIABLES
  89.     ;**************************************************************
  90.     
  91.     [ProcessorVar]
  92.     
  93.         STF_PROCESSOR = "" ? $(LIBHANDLE) GetProcessor
  94.         STF_PLATFORM  = ""
  95.     
  96.     [LocaleVar]
  97.         ;
  98.         ; Locale for Win95 debug dlls
  99.         ;
  100.     
  101.         STF_LOCALE       = "" ? $(SDKLIBHANDLE) GetWindowsLocaleID
  102.     
  103.         ;
  104.         ; On the topic of locales, set manifest constants
  105.         ;
  106.     
  107.         LANGID_JPN = "JPN"
  108.         LANGID_ENG = "ENG"
  109.     
  110.     
  111.     
  112.     [UiVars]
  113.     
  114.         ;
  115.         ; Destination TOOLS Drive Particulars
  116.         ;
  117.         VolumeList      = {} ? $(LIBHANDLE) GetHardDriveLetters
  118.         VolumeFreeList  = {} ? $(LIBHANDLE) GetHardDriveFreeSpace
  119.         VolumeFSList    = {} ? $(LIBHANDLE) GetHardDriveFileSystems
  120.         DestVolume      = ""
  121.         ;
  122.     
  123.         ;
  124.         ; Windows NT Directory
  125.         ;
  126.     
  127.         STF_WINDOWSPATH    = "" ? $(!LIBHANDLE) GetWindowsNtDir
  128.         STF_HOSTOS         = "" ? $(!SDKLIBHANDLE) GetWindowsPlatform
  129.     
  130.         ;
  131.         ; INetSDK directory
  132.         ;
  133.     
  134.         INETSDK = "\INetSDK"
  135.     
  136.         ;
  137.         ; Installation mode
  138.         ;
  139.     
  140.         MinInteract         = $(Radio1)
  141.         MaxInteract         = $(Radio2)
  142.         STF_INSTALL_MODE    = $(MinInteract)
  143.     
  144.         ;
  145.         ; INetSDK Setup Help IDs
  146.         ;
  147.     
  148.         !IDH_DB_TOOLSWELCOME_INS   = 3000
  149.         !IDH_DB_MSTINSTALLMODE_INS = 3010
  150.         !IDH_DB_MSTDEST_INS        = 3020
  151.         !IDH_DB_MSTOPTIONS_INS     = 3030
  152.     
  153.     
  154.     [EnvironmentVars]
  155.         ;
  156.         ; user environment variables in the current user's profile
  157.         ;
  158.     
  159.         PathEnvVar     = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Path
  160.         LibEnvVar      = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Lib
  161.         IncludeEnvVar  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Include
  162.         InitEnvVar     = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) init
  163.         INetSDKRootEnvVar  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) INetSDKRoot
  164.         MsToolsRootEnvVar  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) MsToolsRoot
  165.         INetSDKRootEnvVar2  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) INetSDK
  166.         MsToolsRootEnvVar2  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) MsTools
  167.     
  168.     
  169.     [VarsPlatformCommon]
  170.         ;
  171.         ; Installation options
  172.         ;
  173.     
  174.         DoTools        = $(Chosen)
  175.         DoBins         = $(Chosen)
  176.         DoLibs         = $(Chosen)
  177.         DoHeaders      = $(Chosen)
  178.         DoOnlineHelp   = $(Chosen)
  179.         DoSamples      = $(Chosen)
  180.         DoSample       = $(Chosen)
  181.         DoINetSDK          = $(Chosen)
  182.         DoPDCOther     = $(Chosen)
  183.      
  184.         HeadersSize      = 0
  185.         OnlineHelpSize   = 9908000  ;this is in primary
  186.         SamplesSize      = 0
  187.         SampleSize       = 0  ;this is the other choice on size
  188.     
  189.         ;
  190.         ; Options to disable
  191.         ;
  192.     
  193.         DisableList = {}
  194.         SamplesDisableList = {}
  195.         ToolsDisableList = {}
  196.     
  197.         TotalList = {Tools, OnlineHelp, Samples}
  198.         ToolsList = {Bins, Headers, Libs, OnlineHelp}
  199.         SamplesList = {Sample}
  200.     
  201.     [VarsI386]
  202.         ;
  203.         MinToolsSize     = 12
  204.         MaxToolsSize     = 12
  205.         BinsSize         = 0
  206.         LibsSize         = 0
  207.         WinntDLLSize     = 0
  208.         ToolsSize        = 0
  209.     
  210.     [VarsMips]
  211.         MinToolsSize     = 12
  212.         MaxToolsSize     = 12
  213.         BinsSize         = 0
  214.         LibsSize         = 0
  215.         WinntDLLSize     = 0
  216.         ToolsSize        = 0
  217.     
  218.     [VarsAlpha]
  219.         MinToolsSize     = 12
  220.         MaxToolsSize     = 12
  221.         BinsSize         = 0
  222.         LibsSize         = 0
  223.         WinntDLLSize     = 0
  224.         ToolsSize        = 0
  225.     
  226.     [Varsppc]
  227.         MinToolsSize     = 12
  228.         MaxToolsSize     = 12
  229.         BinsSize         = 0
  230.         LibsSize         = 0
  231.         WinntDLLSize     = 0
  232.         ToolsSize        = 0
  233.     
  234.     [VarsOS]
  235.         Target95    = $(Chosen)
  236.         TargetNT    = $(Chosen)
  237.     
  238.     [StringsENG]
  239.         String1 = "Setup cannot install on the current processor."$(!LF)$(!LF)+
  240.                   "Cannot proceed with install."
  241.     
  242.         String4 = "Setup couldn't copy over the ActiveX SDK files. "$(!LF)$(!LF)+
  243.                   "Cannot proceed with install."
  244.     
  245.         String5 = "Error querying init directory. "$(!LF)$(!LF)+
  246.                   "Initializing our own init directory."
  247.     
  248.         String6 = "Error querying environment variables."$(!LF)$(!LF)+
  249.                   "Cannot proceed with install."
  250.     
  251.         String7 = "Error modifying environment variables."$(!LF)$(!LF)+
  252.                   "Cannot proceed with install."
  253.     
  254.         String8  = "Size required for full installation is: "
  255.         String9  = "Minimum size required for custom installation is: "
  256.         String10 = " MB.  "
  257.         String11 = "No drive was found with this much space."$(!LF)$(!LF)+
  258.                    "Cannot proceed with install."
  259.     
  260.         String12 = "There is enough space for the minimum ActiveX SDK installation. "+
  261.                    "You need to run Setup again and choose custom installation."
  262.     
  263.         String13 = "Setup needs a full path specification of your destination.  Please "+
  264.                    "reenter a new path.  An example of af full path is: "
  265.     
  266.         String14 = "The drive entered in the ActiveX SDK destination path does not "+
  267.                    "have enough space for a minimal installation.  Please reenter a "+
  268.                    "new path."
  269.     
  270.         String15 = "There is no space free for the optional ActiveX SDK components."
  271.         String16 = "Setup has detected that you have chosen to install to a network "+
  272.                    "drive.  If you are certain that this drive is a valid drive, and "+
  273.                    "that it has sufficient space, please hit OK to continue.  Otherwise, "+
  274.                    "choose Cancel to select another drive."
  275.         String17 = "The chosen drive does not have enough space to install the chosen "+
  276.                    "components.  Please choose less components, or another destination."
  277.         String18 = "Setup was unable to locate the Windows NT CD in the specified"+
  278.                    " location.  Please choose OK to select a new drive, or CANCEL "+
  279.                    "to continue without copying the .DBG files."
  280.         String19 = "Setup will attempt to copy the .DBG files from the ActiveX SDK "+
  281.                    "or network image. These files are used by Windbg to provide "+
  282.                    "complete symbolic information for the Win32 API. Please enter the "+
  283.                        "full path to the root of the ActiveX SDK."
  284.         String20 = "Please re-enter a pathname which does not include spaces."
  285.         String21 = "Setup was unable to copy the .DBG files, please see the ActiveX SDK"+
  286.                    " Getting Started manual for further information."
  287.     
  288.     
  289.     
  290.     ;--------------------
  291.     ; BILLBOARD MESSAGES
  292.     ;--------------------
  293.     [BillboardsENG]
  294.     Billboard1 = "Please wait while Setup creates directories on the destination drive."
  295.     
  296.     
  297.     ;***************************************************************************
  298.     ; DIALOGS
  299.     ; -------
  300.     ; the following sections contain the dialogs used to interact with the user.
  301.     ; for each language supported there is a different dialog section.
  302.     ;***************************************************************************
  303.     
  304.     
  305.     ;-----------------------------------------------
  306.     ; WELCOME DIALOG
  307.     ;-----------------------------------------------
  308.     [WelcomeDlgENG]
  309.         DlgType     = Info
  310.         DlgTemplate = SDK_WELCOME
  311.         Caption     = "ActiveX(tm) SDK Setup"
  312.     
  313.         DlgText     = "Welcome to Setup."$(LF)$(LF)+
  314.                       "The Setup program for the Microsoft ActiveX(tm) "+
  315.                       "Development Kit for Microsoft Windows "+
  316.                       "installs ActiveX development tools.  "+
  317.                       "Each Setup dialog has basic instructions for "+
  318.                       "completing a step of the installation.  "$(LF)$(LF)+
  319.                       "To install the ActiveX SDK on your computer now, click Next "+
  320.                       "or press Enter."$(LF)$(LF)+
  321.                       "To exit Setup without installing the ActiveX SDK, click Cancel "+
  322.                       "or press F3."$(LF)$(LF)$(LF)+
  323.                       "Please consult the ReadMe.Txt files in the root of your "+
  324.                       "ActiveX SDK installation for more information."
  325.     
  326.         Continue     = "&Next >" 
  327.         Back         = "< &Back"
  328.         Exit         = "Cancel"
  329.     
  330.     
  331.     ;-----------------------------------------------
  332.     ; INSTALL MODE DIALOG
  333.     ;-----------------------------------------------
  334.     [InstallModeDlgENG]
  335.         DlgType     = "Radio"
  336.         DlgTemplate = "SDK_INSTALLMODE"
  337.         Caption     = "Setup Methods"
  338.         DlgText     = "Express Setup installs the ActiveX SDK using default settings "+
  339.                       "and detected configuration."$(LF)$(LF)+
  340.                       "Custom Setup gives you more control in viewing detected configuration "+
  341.                       "and choosing options."$(LF)$(LF)+
  342.                       "Choose one of the two Setup methods:"
  343.     
  344.         Continue     = "&Next >" 
  345.         Back         = "< &Back"
  346.         Exit         = "Cancel"
  347.     
  348.         RadioHeader   = ""
  349.         Radio1Text    = "&Express Setup"
  350.         Radio2Text    = "&Custom Setup"
  351.         RadioDefault  = $(STF_INSTALL_MODE)
  352.         OptionsGreyed = {}
  353.     
  354.     ;-----------------------------------------------
  355.     ; TOOLS DESTINATION DIALOG
  356.     ;-----------------------------------------------
  357.     [DestinationDlgENG]
  358.         DlgType      = Combination
  359.         DlgTemplate  = "SDK_DESTTOOLS"
  360.         Caption      = "ActiveX SDK Destination"
  361.         DlgText      = "Setup recommends installing the ActiveX SDK on the following "+
  362.                        "hard disk drive."
  363.     
  364.         Combo1Label  = "Destination Drive:"
  365.     
  366.         Continue     = "&Next >"
  367.         Back         = "< &Back"
  368.         Exit         = "Cancel"
  369.     
  370.         GroupLabel   = "Destination Drive Characteristics"
  371.     
  372.         Static1Label = "Available Space:"
  373.         Static1Text  = $(DestVolumeFree)
  374.         footer1      = "MB"
  375.         footer2      = "( For Full Setup )"
  376.         footer3      = "( For Minimal Setup )"
  377.         Static2Label = "Space Needed:"
  378.         Static2Text  = $(MaxToolsSize)
  379.         Static3Text  = $(MinToolsSize)
  380.     
  381.         TextFields   = {$(Static1Text), $(Static2Text), $(Static3Text)}
  382.     
  383.         ;
  384.         ; Editboxes in the dialog
  385.         ;
  386.     
  387.         EditLabel   = "SDK Directory:"
  388.         EditTextLim = 256
  389.         EditTextIn  = $(INetSDKDir)
  390.         EditFocus   = "ALL"
  391.     
  392.         Combo1List   = $(DestVolumeList)
  393.         Combo1Out    = $(DestVolume)
  394.     
  395.         ComboListItemsIn  = {Combo1List}
  396.         ComboListItemsOut = {Combo1Out}
  397.     
  398.         NotifyFields = {YES}
  399.     
  400.     
  401.     ;-------------------------------------------------------------
  402.     ; PARTIAL INSTALL COMPONENTS
  403.     ;-------------------------------------------------------------
  404.     [INetSDKOptionsDlgENG]
  405.         DlgType     = "Check1"
  406.         DlgTemplate = "SDK_COMPONENTS_OPTIONS"
  407.         Caption     = "ActiveX SDK Install Options"
  408.     
  409.         DlgText     = "The following optional groups of files (components) can be "+
  410.                       "installed on your system. "+
  411.                       "To remove a component, clear its checkbox. "+
  412.                       "To install a component, check its checkbox. "+
  413.                       "To remove or install specific files within a component, "+
  414.                       "choose Files... for that component."
  415.     
  416.         Check1Text  = "Copy ActiveX Dev. Environment."
  417.         Check2Text  = "Copy Online Reference files."
  418.         Check3Text  = "Copy ActiveX SDK samples."
  419.     
  420.     
  421.         Continue    = "&Finish"
  422.         Back        = "< &Back"
  423.         Exit        = "Cancel"
  424.     
  425.         CheckHeader    = "Components:"
  426.         Customise      = "Customize:"
  427.         SizeHeader     = "Bytes Used:"
  428.         Files          = "Files..."
  429.         SpaceRequired  = "Disk Space Required:"
  430.         SpaceAvailable = "Disk Space Available:"
  431.         footer1        = "Bytes"
  432.         SizeAvailable  = $(FreeForOptional)
  433.     
  434.         CheckItemsIn      = { $(DoTools), $(DoOnlineHelp), $(DoSamples) }
  435.         CheckItemsInSizes = { $(ToolsSize), $(OnlineHelpSize), $(SampleSize) }
  436.         OptionsGreyed     = $(DisableList)
  437.     
  438.     [INetSDKOptionsDlgENG2]
  439.         DlgType     = "Check1"
  440.         DlgTemplate = "SDK_COMPONENTS_OPTIONS2"
  441.         Caption     = "ActiveX SDK Install Options"
  442.     
  443.         DlgText     = "The following optional groups of files (components) can be "+
  444.                       "installed on your system. "+
  445.                       "To remove a component, clear its checkbox. "+
  446.                       "To install a component, check its checkbox. "+
  447.                       "To remove or install specific files within a component, "+
  448.                       "choose Files... for that component."
  449.     
  450.         Check1Text  = "Copy ActiveX SDK."
  451.         Check2Text  = "Copy Other PDC Files."
  452.     
  453.     
  454.         Continue    = "&Finish"
  455.         Back        = "< &Back"
  456.         Exit        = "Cancel"
  457.     
  458.         CheckHeader    = "Components:"
  459.         Customise      = "Customize:"
  460.         SizeHeader     = "Bytes Used:"
  461.         Files          = "Files..."
  462.         SpaceRequired  = "Disk Space Required:"
  463.         SpaceAvailable = "Disk Space Available:"
  464.         footer1        = "Bytes"
  465.         SizeAvailable  = $(FreeForOptional)
  466.     
  467.         CheckItemsIn      = { $(DoTools), $(DoOnlineHelp) }
  468.         CheckItemsInSizes = { $(ToolsSize), $(SamplesSize)}
  469.         OptionsGreyed     = $(DisableList)
  470.     
  471.     
  472.     ;-------------------------------------------------------------
  473.     ; PARTIAL INSTALL COMPONENTS
  474.     ;-------------------------------------------------------------
  475.     [SDKSamplesDlgENG]
  476.         DlgType     = "Check1"
  477.         DlgTemplate = "SDK_SAMPLES_OPTIONS"
  478.         Caption     = "ActiveX SDK Samples Install Options"
  479.     
  480.         DlgText     = "The following optional groups of samples can be installed "+
  481.                       "on your system. "+
  482.                       "To remove a group, clear its checkbox. "+
  483.                       "To install a group, check its checkbox."$(!LF)$(!LF)
  484.     
  485.         Check1Text  = "Copy Standard ActiveX samples."
  486.         Check2Text  = ""
  487.         Check3Text  = ""
  488.     
  489.         OK          = "OK"
  490.         Cancel      = "Cancel"
  491.     
  492.         CheckHeader    = "Components:"
  493.         Customise      = "Customize:"
  494.         SizeHeader     = "Bytes Used:"
  495.         Files          = "Files..."
  496.         SpaceRequired  = "Disk Space Required:"
  497.         SpaceAvailable = "Disk Space Available:"
  498.         footer1        = "Bytes"
  499.         SizeAvailable  = $(FreeForOptional)
  500.     
  501.         CheckItemsIn      = { $(DoSamples)}
  502.         CheckItemsInSizes = { $(SampleSize) }
  503.         OptionsGreyed     = $(SamplesDisableList)
  504.     
  505.     
  506.     ;-------------------------------------------------------------
  507.     ; PARTIAL TOOLS COMPONENTS
  508.     ;-------------------------------------------------------------
  509.     [THLDlgENG]
  510.         DlgType     = "Check1"
  511.         DlgTemplate = "SDK_THL_OPTIONS"
  512.         Caption     = "ActiveX SDK Environment Install Options"
  513.     
  514.         DlgText     = "The following optional components can be installed "+
  515.                       "on your system. "+
  516.                       "To remove a group, clear its checkbox. "+
  517.                       "To install a group, check its checkbox."$(!LF)$(!LF)
  518.     
  519.         Check1Text  = "Copy ActiveX Development Tools."
  520.         Check2Text  = "Copy ActiveX Headers."
  521.         Check3Text  = "Copy ActiveX Libraries."
  522.     
  523.         OK          = "OK"
  524.         Cancel      = "Cancel"
  525.     
  526.         CheckHeader    = "Components:"
  527.         Customise      = "Customize:"
  528.         SizeHeader     = "Bytes Used:"
  529.         Files          = "Files..."
  530.         SpaceRequired  = "Disk Space Required:"
  531.         SpaceAvailable = "Disk Space Available:"
  532.         footer1        = "Bytes"
  533.         SizeAvailable  = $(FreeForOptional)
  534.     
  535.         CheckItemsIn      = { $(DoBins),   $(DoHeaders),   $(DoLibs) }
  536.         CheckItemsInSizes = { $(BinsSize), $(HeadersSize), $(LibsSize)) }
  537.         OptionsGreyed     = $(ToolsDisableList)
  538.     
  539.     ;--------------------------------------------------------------
  540.     ; k) SETUP DONE - RESTART DIALOG
  541.     ;--------------------------------------------------------------
  542.     [SetupDoneDlgENG]
  543.         DlgType     = "Info"
  544.         DlgTemplate = "SDK_RESTART"
  545.         Caption     = "ActiveX SDK Setup"
  546.         DlgText     = "The Microsoft ActiveX Software Development Kit is now installed.  "+
  547.                       "You must install Internet Explorer 3.0 (final version) and the "+
  548.                       "May '96 release of the Win32 SDK or later to build and run most of the "+
  549.                       "samples."$(LF)$(LF)+
  550.                       $(ShutDownMethod)
  551.         Windows     = "Exit to &Windows"
  552.         OK          = "OK"
  553.     
  554.     
  555.     ;--------------------------------------------------------------
  556.     ; k) SETUP NOT DONE - RESTART DIALOG
  557.     ;--------------------------------------------------------------
  558.     [SetupNotDoneDlgENG]
  559.         DlgType     = "Info"
  560.         DlgTemplate = "SDK_RESTART"
  561.         Caption     = "ActiveX SDK Setup"
  562.         DlgText     = "The Microsoft ActiveX Software Development Kit for Microsoft Windows has not been installed."$(LF)$(LF)+
  563.                       "Please select OK to exit back to Windows."
  564.         Windows     = "Exit to &Windows"
  565.         OK          = "OK"
  566.     
  567.     
  568.     ;--------------------------------------------------------------
  569.     ; k) QUERY IF WANT TO PROCEED WITH INSTALL OF xxx
  570.     ;--------------------------------------------------------------
  571.     [WantToSetupIE]
  572.         STF_MB_TITLE = "Setup Test Platform"
  573.         STF_MB_TEXT  = "Would you like to install a test platform browser "+
  574.                        "to host ActiveX Controls and ActiveX Documents?"
  575.         DlgType      = "MessageBox"
  576.         STF_MB_TYPE  = 3
  577.         STF_MB_ICON  = 5
  578.         STF_MB_DEF   = 2
  579.     
  580.     
  581.     [WantToSetupAVrml]
  582.         STF_MB_TITLE = "Setup Test Platform"
  583.         STF_MB_TEXT  = "Would you like to install ActiveVRML "+
  584.                        "to create and view interactive 3D multimedia?"
  585.         DlgType      = "MessageBox"
  586.         STF_MB_TYPE  = 3
  587.         STF_MB_ICON  = 5
  588.         STF_MB_DEF   = 2
  589.     
  590.       [WantToReplaceSystemFile]
  591.           STF_MB_TITLE = "Replace Newer File"
  592.           STF_MB_TEXT  = "System File: "$($0)$(!LF)$(!LF)+
  593.                          "The file currently on your system is newer than "+
  594.                          "the file setup is installing. "+
  595.                          "Would you like setup to replace it anyway?"
  596.           DlgType      = "MessageBox"
  597.           STF_MB_TYPE  = 3
  598.           STF_MB_ICON  = 4
  599.           STF_MB_DEF   = 2
  600.   
  601.     ;**************************************************************************
  602.     ; DLL LOAD and FREE
  603.     ; the following section contain commands to load specific dll libraries and
  604.     ; to free them
  605.     ;**************************************************************************
  606.     
  607.     ;----------------------------------------------
  608.     ; a) DETECT LIBRARY
  609.     ;----------------------------------------------
  610.     [LoadSetupLibrary]
  611.         LoadLibrary "x" $(STF_CWDDIR)setupdll.dll LIBHANDLE
  612.         exit
  613.     
  614.     [LoadSDKSetupLibrary]
  615.         LoadLibrary "x" $(!STF_SRCDIR)INetsdk\bin\$(STF_PLATFORM)\sdkdlg.dll SDKLIBHANDLE
  616.         exit
  617.     
  618.     [FreeSetupLibrary]
  619.         FreeLibrary $(LIBHANDLE)
  620.         FreeLibrary $(SDKLIBHANDLE)
  621.         exit
  622.     
  623.     
  624.     
  625.     ;**************************************************************************
  626.     ; PROGRESS GUAGE VARIABLES
  627.     ;**************************************************************************
  628.     
  629.     [ProgressCopyENG]
  630.         ProCaption   = "ActiveX SDK Setup"
  631.         ProCancel    = "Cance&l"
  632.         ProCancelMsg = "ActiveX SDK isn't correctly installed.  Are you sure "+
  633.                        "you want to cancel copying files?"
  634.         ProCancelCap = "Setup Message"
  635.         ProText1     = "Copying:"
  636.         ProText2     = "To:"
  637.     
  638.     
  639.     ;-----------------------------------------------------------------------
  640.     ; ROUTINE:      CreateKey
  641.     ;
  642.     ; DESCRIPTION:  Creates a key and fixes the values indicated.
  643.     ;               Key is Handle\Key1\Key2\...\Keyn. Value list
  644.     ;               is for Valuen.
  645.     ;
  646.     ; INPUTS:       $0: Handle into registry
  647.     ;               $1: KeyTreeComponents {Key1Info, Key2Info..}
  648.     ;               $2: ValueList {Value1Info, Value2Info, Value3Info}
  649.     ;
  650.     ; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
  651.     ;                            STATUS_FAILED
  652.     ;                            STATUS_ERROR_CREATEKEY
  653.     ;                            STATUS_ERROR_CREATEVALUE
  654.     ;
  655.     ;               $R1: Handle to created key
  656.     ;
  657.     ;------------------------------------------------------------------------
  658.     
  659.     [CreateKey]
  660.     
  661.         ;
  662.         ; Initialize
  663.         ;
  664.     
  665.         set Status = STATUS_FAILED
  666.         read-syms RegistryConstants
  667.     
  668.         ;
  669.         ; traverse down the keytreecomponents and open/create components as
  670.         ; you go along
  671.         ;
  672.     
  673.     
  674.         set BaseHandle = $($0)
  675.         set KeyHandle  = $(BaseHandle)
  676.     
  677.         ForListDo $($1)
  678.     
  679.             set KeyInfo = $($)
  680.             set KeyName = *($(KeyInfo), 1)
  681.     
  682.             ;
  683.             ; Try opening the key first
  684.     
  685.             OpenRegKey $(BaseHandle) "" $(KeyName) $(MaskAllAccess) KeyHandle
  686.             ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  687.                 ;
  688.                 ; Key doesn't exist
  689.                 ;
  690.                 ;Debug-Output "REGISTRY.INF: Key"$(KeyName)"doesn't exist.  Will create key"
  691.     
  692.                 set RegLastError = 0
  693.                 CreateRegKey $(BaseHandle) $(KeyInfo) "" $(MaskAllAccess) "" KeyHandle
  694.                 ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  695.                     set Status = STATUS_ERROR_CREATEKEY
  696.                      ;Debug-Output "REGISTRY.INF: Error in creating key"
  697.                     goto endcreate
  698.                 endif
  699.             endif
  700.     
  701.             ifstr(i) $(BaseHandle) != $($0)
  702.                 CloseRegKey $(BaseHandle)
  703.                 ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  704.                     set Status = STATUS_ERROR_CREATEKEY
  705.                      ;Debug-Output "REGISTRY.INF: Error in closing base handle"
  706.                     goto endcreate
  707.                 endif
  708.             endif
  709.     
  710.             set BaseHandle = $(KeyHandle)
  711.     
  712.         EndForListDo
  713.     
  714.         ifstr(i) $($2) != {}
  715.             shell "" AddValueList $(KeyHandle) $($2)
  716.             ifstr(i) $($R0) != STATUS_SUCCESSFUL
  717.                 set Status = STATUS_ERROR_CREATEVALUE
  718.                 goto endcreate
  719.             endif
  720.         endif
  721.         set Status = STATUS_SUCCESSFUL
  722.     
  723.     endcreate = +
  724.         ifstr(i) $(Status) != STATUS_SUCCESSFUL
  725.              ;Debug-Output "REGISTRY.INF: CreateKey Error:"$(Status)
  726.         endif
  727.         Return $(Status) $(KeyHandle)
  728.     
  729.     
  730.     ;*************************************************************************
  731.     ;
  732.     ;     SECTION:   AddValueList
  733.     ;
  734.     ;     PURPOSE:   Given a nested list of value items, add each to the given
  735.     ;                key.   Key is left open.
  736.     ;
  737.     ;   ARGUMENTS:   $0    Registry key handle
  738.     ;                $1    List of value items; for example:
  739.     ;                          { {ValueName1,0,$(!REG_VT_SZ),$(ValueData1)}, +
  740.     ;                            {ValueName2,0,$(!REG_VT_SZ),$(ValueData2)} }
  741.     ;
  742.     ;     RETURNS:   $R0   Status
  743.     ;
  744.     ;
  745.     ;*************************************************************************
  746.     
  747.     [AddValueList]
  748.        set Status = STATUS_FAILED
  749.        read-syms RegistryConstants
  750.     
  751.        ForListDo $($1)
  752.            SetRegValue $($0) $($)
  753.            ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  754.                ;Debug-Output "REGISTRY.INF: CreateValue failed:"$($)
  755.                goto end_addvaluelist
  756.            endif
  757.        EndForListDo
  758.        set Status = STATUS_SUCCESSFUL
  759.     
  760.     end_addvaluelist = +
  761.        return $(Status)
  762.     
  763.     ;**************************************************************************
  764.     ;
  765.     ;   SetValue
  766.     ;
  767.     ;   Checks if key is present, and if so, sets the value. The key must exist
  768.     ;
  769.     ;   $0  Key Handle
  770.     ;   $1  Key name
  771.     ;   $2  Value Name
  772.     ;
  773.     ;**************************************************************************
  774.     [SetValue]
  775.         set Status = STATUS_FAILED
  776.         read-syms RegistryConstants
  777.         
  778.         OpenRegKey $($0) "" $($1) $(!REG_KEY_WRITE) TempKey
  779.     
  780.         ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  781.             ;Debug-Output "REGISTRY.INF: OpenRegKey Failed: "$($)" "$($0)" "$($1)" "$($2)
  782.             goto end_set_value
  783.         endif
  784.     
  785.         SetRegValue $(TempKey), $($2)
  786.         
  787.         ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  788.             ;Debug-Output "REGISTRY.INF: SetRegValue Failed:"$($)
  789.             CloseRegKey $(TempKey)
  790.             goto end_set_value
  791.         endif
  792.         
  793.         set Status = STATUS_SUCCESSFUL
  794.     
  795.     end_set_value = +
  796.         return $(Status) $(KeyValue)
  797.             
  798.     
  799.     ;**************************************************************************
  800.     ;
  801.     ;   GetValue
  802.     ;
  803.     ;   Checks if key is present, and if so, returns the value
  804.     ;
  805.     ;   $0  Key Handle
  806.     ;   $1  Key name
  807.     ;   $2  Value Name
  808.     ;
  809.     ;**************************************************************************
  810.     [GetValue]
  811.         set Status = STATUS_FAILED
  812.         read-syms RegistryConstants
  813.         
  814.         OpenRegKey $($0) "" $($1) $(!REG_KEY_READ) TempKey
  815.     
  816.         ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  817.             ;Debug-Output "REGISTRY.INF: OpenRegKey Failed: "$($)" "$($0)" "$($1)" "$($2)
  818.             goto end_get_value
  819.         endif
  820.     
  821.         GetRegValue $(TempKey), $($2), KeyValue
  822.         
  823.         ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
  824.             ;Debug-Output "REGISTRY.INF: GetRegValue Failed:"$($)
  825.             CloseRegKey $(TempKey)
  826.             goto end_get_value
  827.         endif
  828.         
  829.         set Status = STATUS_SUCCESSFUL
  830.     
  831.     end_get_value = +
  832.         return $(Status) $(KeyValue)
  833.             
  834.   [DetectFileTime]
  835.      FileDateTime = {"0","0"} ? $(!LIBHANDLE) GetFileLastWriteTime $(FileDateTimeName)
  836.     
  837.     ;**************************************************************************
  838.     ; SHELL COMMANDS SCRIPT
  839.     ;**************************************************************************
  840.     
  841.     [Shell Commands]
  842.         ;
  843.         ; Initialise the app, by setting the caption and loading the support library
  844.         ;
  845.         set-title "ActiveX SDK"
  846.         set Exit_Code = $(!SETUP_ERROR_GENERAL)
  847.         install   LoadSetupLibrary
  848.     
  849.         StartWait
  850.     
  851.         ;
  852.         ; read general constants
  853.         ;
  854.     
  855.         set-subst LF = "\n"
  856.         read-syms GeneralConstants
  857.     
  858.     
  859.         ;
  860.         ; read and detect the processor we are working on
  861.         ;
  862.     
  863.         read-syms ProcessorID
  864.         read-syms PlatformID
  865.         read-syms ProcessorVar
  866.         detect    ProcessorVar
  867.     
  868.         ;
  869.         ; Check processor type, see if it is supported, if so what platform does it
  870.         ; belong to.
  871.         ;
  872.     
  873.         ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I386)
  874.             set STF_PLATFORM = $(PlatformID_I386)
  875.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I486)
  876.             set STF_PLATFORM = $(PlatformID_I386)
  877.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I586)
  878.             set STF_PLATFORM = $(PlatformID_I386)
  879.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_R4000)
  880.             set STF_PLATFORM = $(PlatformID_MIPS)
  881.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_ALPHA)
  882.             set STF_PLATFORM = $(PlatformID_ALPHA)
  883.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_PPC601)
  884.             set STF_PLATFORM = $(PlatformID_PPC)
  885.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_PPC603)
  886.             set STF_PLATFORM = $(PlatformID_PPC)
  887.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_PPC604)
  888.             set STF_PLATFORM = $(PlatformID_PPC)
  889.         else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_PPC620)
  890.             set STF_PLATFORM = $(PlatformID_PPC)
  891.         else
  892.     
  893.             ; Unfortunately, we haven't detected language yet,
  894.             ;  so default to English, report error, and quit.
  895.     
  896.             STF_LANGUAGE = "ENG"
  897.             shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String1)
  898.             goto setupnotdone
  899.         endif
  900.  
  901.     ;Hack off: here to test code i.e. Set STF_PLATFORM = $(PlatformID_ALPHA)
  902.      ;   set STF_PLATFORM = $(PlatformID_ALPHA)
  903.     
  904.     
  905.         ;
  906.         ; Call into our DLL to determine Locale
  907.         ;  Although NEC is not a proper Windows locale,
  908.         ;  it is a possible return value from our GetWindowsLocaleID()
  909.         ;
  910.     
  911.         install   LoadSDKSetupLibrary
  912.     
  913.         read-syms LocaleVar
  914.         detect    LocaleVar
  915.         ifstr(i) $(STF_LOCALE) == ""
  916.             set STF_LOCALE = "usa"
  917.         endif
  918.     
  919.         set STF_LANGUAGE = $(LANGID_ENG)
  920.     set STF_UI_LANGUAGE = $(LANGID_ENG)
  921.         
  922.         
  923.         read-syms Strings$(!STF_LANGUAGE)
  924.         read-syms Billboards$(!STF_LANGUAGE)
  925.     
  926.         read-syms  RegistryConstants
  927.     
  928.         ;
  929.         ; Call the library function to see if we have admin privileges
  930.         ;
  931.     
  932.         LibraryProcedure STATUS, $(!LIBHANDLE), TestAdmin
  933.         ifstr(i) $(STATUS) == "YES"
  934.          set PRIVILEGES = SYSTEM
  935.         else
  936.             set PRIVILEGES = USER
  937.         endif
  938.     
  939.         ;
  940.         ; read the UI Variables and detect their setting on the current machine
  941.         ;
  942.     
  943.         read-syms UiVars
  944.         detect    UiVars
  945.         read-syms Vars$(STF_PLATFORM)
  946.         read-syms VarsPlatformCommon
  947.         read-syms VarsOS
  948.     
  949.         ;
  950.         ; Dynamically adjust the variables just read.
  951.         ;
  952.     
  953.         EndWait
  954.     
  955.     welcome =+
  956.         read-syms WelcomeDlg$(STF_LANGUAGE)
  957.     
  958.         ui start "Welcome" $(SDKLIBHANDLE)
  959.         ifstr(i) $(DLGEVENT) == "CONTINUE"
  960.             ui pop 1
  961.             goto queryinstallmode
  962.         else-ifstr(i) $(DLGEVENT) == "EXIT"
  963.             shell "" QueryUserQuit
  964.             ifstr(i) $($R1) == "OK"
  965.                 ui pop 1
  966.                 goto setupnotdone
  967.             else
  968.                 goto welcome
  969.             endif
  970.         else
  971.             goto end
  972.         endif
  973.     
  974.         ;
  975.         ; show install mode dialog and query if we are to operate in express mode
  976.         ; or in full install
  977.         ;
  978.     
  979.     queryinstallmode =+
  980.     ;  
  981.     ;  Check for license only once
  982.     ;
  983.     ifstr(i) $(AcceptLicense) != "TRUE"
  984.         ;
  985.         ; Show license agreement and get acceptance
  986.         ;
  987.         LibraryProcedure RetCode, $(SDKLIBHANDLE), ShowLicenseAgreement $(STF_SRCDIR)license\license.txt
  988.  
  989.         ifstr(i) $(RetCode) != "SUCCESS"
  990.             goto setupnotdone
  991.         endif
  992.  
  993.         set AcceptLicense = "TRUE"
  994.     endif
  995.     
  996.         read-syms InstallModeDlg$(STF_LANGUAGE)
  997.         ui start "InstallMode" $(SDKLIBHANDLE)
  998.         ifstr(i) $(DLGEVENT) == "CONTINUE"
  999.             ui pop 1
  1000.             set STF_INSTALL_MODE = $(ButtonChecked)
  1001.             goto setdestination
  1002.         else-ifstr(i) $(DLGEVENT) == "EXIT"
  1003.             shell "" QueryUserQuit
  1004.             ifstr(i) $($R1) == "OK"
  1005.                 ui pop 1
  1006.                 goto setupnotdone
  1007.             else
  1008.                 goto queryinstallmode
  1009.             endif
  1010.         else-ifstr(i) $(DLGEVENT) == "BACK"
  1011.             ui pop 1
  1012.             goto welcome
  1013.         else
  1014.             goto end
  1015.         endif
  1016.     
  1017.     setdestination =+
  1018.     
  1019.         ;
  1020.         ; go through the volume list and form the destination volume list of
  1021.         ; all volumes which have the size needed to install the INetsdk.
  1022.         ;
  1023.         set DestVolumeList = {}
  1024.         set DestVolumeFreeList = {}
  1025.     
  1026.         ForListDo $(VolumeList)
  1027.     
  1028.            set CurrentVolume      = *($(VolumeList), $(#))
  1029.            set CurrentVolumeFree  = *($(VolumeFreeList), $(#))
  1030.            set CurrentVolumeFS    = *($(VolumeFSList), $(#))
  1031.     
  1032.            set DestVolumeList     = >($(DestVolumeList),     $(CurrentVolume))
  1033.            set DestVolumeFreeList = >($(DestVolumeFreeList), $(CurrentVolumeFree))
  1034.     
  1035.     skipvol=+
  1036.         EndForListDo
  1037.     
  1038.         ;
  1039.         ; destination drive is the drive with the maximum space
  1040.         ;
  1041.     
  1042.         set DestVolume     = ""
  1043.         set DestVolumeFree = 0
  1044.     
  1045.         ForListDo $(DestVolumeList)
  1046.             set Volume     = $($)
  1047.             set VolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(Volume)))
  1048.     
  1049.             ifint $(VolumeFree) > $(DestVolumeFree)
  1050.                 set DestVolume     = $(Volume)
  1051.                 set DestVolumeFree = $(VolumeFree)
  1052.             endif
  1053.     
  1054.         EndForListDo
  1055.     
  1056.         ;
  1057.         ; Check for previous installs, and set default target install
  1058.         ;
  1059.     
  1060.         set KeySDKPath = "SOFTWARE\Microsoft\INetSDK\Directories"
  1061.     
  1062.         shell "" GetValue $(!REG_H_CUSER) $(KeySDKPath) "Install Dir"
  1063.     
  1064.         ifstr(i) $($R0) == STATUS_FAILED
  1065.             set INetSDKDir = $(DestVolume)$(INETSDK)
  1066.         else
  1067.             set INetSDKDir = *($($R1),4)
  1068.             GetDriveInPath DestVolume $(INetSDKDir)
  1069.             set DestVolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(DestVolume)))
  1070.         endif
  1071.     
  1072.     
  1073.         ;
  1074.         ; display tools destination, size available and needed for
  1075.         ; user approval
  1076.         ;
  1077.     
  1078.     destination =+
  1079.     
  1080.         ifstr(i) $(STF_INSTALL_MODE) == $(MinInteract)
  1081.            ifint $(DestVolumeFree) < $(MaxToolsSize)
  1082.                shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String8)$(MaxToolsSize)$(String10)$(String12)
  1083.                goto setupnotdone
  1084.            else
  1085.                goto INetsdkdirs
  1086.            endif
  1087.         endif
  1088.     
  1089.         read-syms DestinationDlg$(STF_LANGUAGE)
  1090.         ui start "Destination" $(SDKLIBHANDLE)
  1091.         ifstr(i) $(DLGEVENT) == "NOTIFY"
  1092.     
  1093.             ifstr(i) $(Combo1Out) != $(DestVolume)
  1094.                 set ReInit = YES
  1095.                 set DestVolume     = $(Combo1Out)
  1096.                 set DestVolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(DestVolume)))
  1097.                 set INetSDKDir     = $(DestVolume)$(INETSDK)
  1098.             else
  1099.                 set ReInit = NO
  1100.             endif
  1101.             goto destination
  1102.     
  1103.         else-ifstr(i) $(DLGEVENT) == "CONTINUE"
  1104.             set ReInit = NO
  1105.             LibraryProcedure IsFullPath, $(SDKLIBHANDLE), SDKCheckPathFullPathSpec $(EditTextOut)
  1106.             ifstr(i) $(IsFullPath) == "NO"
  1107.                 shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String13)$(DestVolume)$(INETSDK)
  1108.                 goto destination
  1109.             else
  1110.                 ;
  1111.                 ; see if there is any whitespace in the filename, if so, bail
  1112.                 ;
  1113.                 LibraryProcedure STATUS, $(!LIBHANDLE), WhiteSpaceCheck $(EditTextOut)
  1114.                 ifstr(i) $(STATUS) == "YES"
  1115.                     shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String20)
  1116.                     goto destination
  1117.                 else
  1118.                     GetDriveInPath Drive, $(EditTextOut)
  1119.                     Ifcontains(i) $(Drive) in $(DestVolumeList)
  1120.                         set DestVolume     = $(Drive)
  1121.                         set DestVolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(DestVolume)))
  1122.                         set INetSDKDir     = $(EditTextOut)
  1123.                     else
  1124.                         shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "WARNING" $(String16)
  1125.                         ifstr(i) $($R0) != STATUS_SUCCESSFUL
  1126.                             goto destination
  1127.                         else
  1128.                             ifstr(i) $($R1) == "OK"
  1129.                                 set DestVolume = $(Drive)
  1130.                                 set DestVolumeFree = $(MaxToolsSize)
  1131.                                 set INetSDKDir = $(EditTextOut)
  1132.                             else
  1133.                                 set ReInit = NO
  1134.                                 goto destination
  1135.                             endif
  1136.                         endif
  1137.                     endif
  1138.                 endif
  1139.             endif
  1140.     
  1141.             ui pop 1
  1142.             goto INetsdkdirs
  1143.     
  1144.         else-ifstr(i) $(DLGEVENT) == "EXIT"
  1145.     
  1146.             set ReInit = NO
  1147.             shell "" QueryUserQuit
  1148.             ifstr(i) $($R1) == "OK"
  1149.                 ui pop 1
  1150.                 goto setupnotdone
  1151.             else
  1152.                 goto destination
  1153.             endif
  1154.         else-ifstr(i) $(DLGEVENT) == "BACK"
  1155.             ui pop 1
  1156.             goto queryinstallmode
  1157.         else
  1158.             goto end
  1159.         endif
  1160.     
  1161.     
  1162.     INetsdkdirs = +
  1163.     
  1164.         set INetSDKRoot = $(INetSDKDir)
  1165.     
  1166.         LibraryProcedure INetSDKDir, $(LIBHANDLE), AppendBackSlash $(INetSDKDir)
  1167.     
  1168.         ;
  1169.         ; First find all the destination directories for the tools
  1170.         ;
  1171.     
  1172.         set INetSDKPath    = $(INetSDKDir)Bin
  1173.         set INetSDKLib     = $(INetSDKDir)Lib
  1174.         set INetSDKLicense = $(INetSDKDir)License
  1175.         set INetSDKInclude = $(INetSDKDir)Include
  1176.         ; No doc dir right now just specs
  1177.         set INetSDKSpecs   = $(INetSDKDir)Specs
  1178.         ;set INetSDKDoc    = $(INetSDKDir)
  1179.         set INetSDKHelp    = $(INetSDKDir)Help
  1180.     
  1181.         ;
  1182.         ; main install.  ask user for options on main install.
  1183.         ;
  1184.     
  1185.     INetSDK = +
  1186.         ifstr(i) $(STF_HOSTOS) == "WIN95"
  1187.             goto InstallOptions
  1188.          endif
  1189.     
  1190.         ifstr(i) $(!STF_PLATFORM) == $(PlatformID_I386)
  1191.                 ; NT x86
  1192.                 goto InstallOptions
  1193.          else
  1194.                 ; RISC
  1195.                 ; TODO: set other RISC options here
  1196.                 ; Debug-Output "Installing on RISC"
  1197.  
  1198.             ; * (geraldd, conrisc use)
  1199.               goto InstallOptions
  1200.             ; (geraldd, sanrisc use 
  1201.                 ; set DoLibs = $(NotChosen)
  1202.             
  1203.                 
  1204.         endif
  1205.     
  1206.     InstallOptions = +
  1207.         ifstr(i) $(STF_INSTALL_MODE) == $(MinInteract)
  1208.             goto INetSDKinstall
  1209.         endif
  1210.     
  1211.         ifint $(DestVolumeFree) < $(MaxToolsSize)
  1212.             set DoTools          = $(NotChosen)
  1213.             set DoOnlineHelp     = $(NotChosen)
  1214.         else
  1215.             set DoTools          = $(Chosen)
  1216.             set DoOnlineHelp     = $(Chosen)
  1217.         endif
  1218.     
  1219.     INetSDKrepeat = +
  1220.         ;;
  1221.         ;;  Skip dialog -- TODO review sample options
  1222.         ;;
  1223.     
  1224.         goto INetSDKinstall
  1225.     
  1226.         ;;
  1227.         ;; Install options are still meaningless.  I will remove the misleading
  1228.         ;; dialog and prompt
  1229.         ;;
  1230.     
  1231.         set FreeForOptional = $(DestVolumeFree)
  1232.         ifstr(i) $(FreeForOptional) == 0
  1233.             shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String15)
  1234.         endif
  1235.     
  1236.         set SamplesSize = 0
  1237.         set ToolsSize   = 0
  1238.     
  1239.         ForListDo $(ToolsList)
  1240.             ifstr(i) $(Do$($)) == $(Chosen)
  1241.                 set-add ToolsSize = $(ToolsSize) $($($)Size)
  1242.             endif
  1243.         EndForListDo
  1244.     
  1245.         ForListDo $(SamplesList)
  1246.             ifstr(i) $(Do$($)) == $(Chosen)
  1247.                 ;Debug-Output "Adding stuff for sampleslist"
  1248.                         ;Debug-Output $($)
  1249.                 set-add SamplesSize = $(SamplesSize) $($($)Size)
  1250.             endif
  1251.         EndForListDo
  1252.     
  1253.         read-syms INetSDKOptionsDlg$(STF_LANGUAGE)2
  1254.         ui start "Options" $(SDKLIBHANDLE)
  1255.         ifstr(i) $(DLGEVENT) == "CONTINUE"
  1256.             set DoINetSDK      = *($(CheckItemsOut), 1)
  1257.             set DoPDCOther     = *($(CheckItemsOut), 2)
  1258.             ui pop 1
  1259.             goto checkdestfree
  1260.     
  1261.         else-ifstr(i) $(DLGEVENT) == "BACK"
  1262.             ui pop 1
  1263.             goto destination
  1264.     
  1265.         else-ifstr(i) $(DLGEVENT) == "EXIT"
  1266.             shell "" QueryUserQuit
  1267.             ifstr(i) $($R1) == "OK"
  1268.                 ui pop 1
  1269.                 goto setupnotdone
  1270.             else
  1271.                 goto INetSDKrepeat
  1272.             endif
  1273.         else
  1274.             goto "end"
  1275.         endif
  1276.     
  1277.     checkdestfree =+
  1278.         set ToolsSize = 0
  1279.         set SamplesSize = 0
  1280.         set TotalRequiredSize = 0
  1281.         set BytesFree = $(DestVolumeFree)
  1282.     
  1283.         ForListDo $(ToolsList)
  1284.             ifstr(i) $(Do$($)) == $(Chosen)
  1285.                 set-add ToolsSize = $(ToolsSize) $($($)Size)
  1286.             endif
  1287.         EndForListDo
  1288.     
  1289.         ForListDo $(SamplesList)
  1290.             ifstr(i) $(Do$($)) == $(Chosen)
  1291.                 set-add SamplesSize = $(SamplesSize) $($($)Size)
  1292.             endif
  1293.         EndForListDo
  1294.     
  1295.         ForListDo $(TotalList)
  1296.             ifstr(i) $(Do$($)) == $(Chosen)
  1297.                 set-add TotalRequiredSize = $(TotalRequiredSize) $($($)Size)
  1298.             endif
  1299.         EndForListDo
  1300.     
  1301.         ;
  1302.         ; TotalRequiredSize is bytes, but BytesFree is MB... Convert bytes to MB
  1303.         ;  because other direction causes overflow on drives with > 2 GB free.
  1304.         ;
  1305.     
  1306.         set-div TotalRequiredSize = $(TotalRequiredSize) 1024
  1307.         set-div TotalRequiredSize = $(TotalRequiredSize) 1024
  1308.     
  1309.     
  1310.         ifint $(TotalRequiredSize) > $(BytesFree)
  1311.             shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String17)
  1312.             goto INetSDKrepeat
  1313.         endif
  1314.     
  1315.     
  1316.         ;
  1317.         ; build INetSDK copy list
  1318.         ;
  1319.     
  1320.     INetSDKinstall    =+
  1321.         
  1322.         StartWait
  1323.         shell "" SystemFilesBackup
  1324.         shell "subroutn.inf" PushBillboard STATUSDLG $(Billboard1)
  1325.         install Install-CopyToolsFiles
  1326.         shell "subroutn.inf" PopBillboard
  1327.         EndWait
  1328.     
  1329.     finish = +
  1330.     
  1331.         ;
  1332.         ; first copy all the files over
  1333.         ;
  1334.         
  1335.         read-syms ProgressCopy$(STF_LANGUAGE)
  1336.         install Install-All-Files-Now
  1337.         ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_SUCCESS"
  1338.             goto INetSDKconfig
  1339.         else
  1340.             shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String4)
  1341.             goto setupnotdone
  1342.         endif
  1343.     
  1344.     
  1345.     INetSDKconfig=+
  1346.         ifstr(i) $(STF_HOSTOS) == "WINNT"
  1347.         read-syms EnvironmentVars
  1348.         detect    EnvironmentVars
  1349.     
  1350.            ;to ensure the we come ahead of mstools
  1351.         set MSTdir = *(*($(MsToolsRootEnvVar2),4),1)
  1352.         Set INSdir = *(*($(INetSDKRootEnvVar2),4),1)
  1353.         LibraryProcedure MSTdir, $(LIBHANDLE), AppendBackSlash $(MSTdir)
  1354.           LibraryProcedure INSdir, $(LIBHANDLE), AppendBackSlash $(INSdir)
  1355.         endif
  1356.     
  1357.         install Install-INetSDK-Groups
  1358.  
  1359.  
  1360.  
  1361.     setupdone=+
  1362.  
  1363.         read-syms SetupDoneDlg$(STF_LANGUAGE)
  1364.         EndWait
  1365.         ui start "Done" $(SDKLIBHANDLE)
  1366.         goto end
  1367.  
  1368.     setupnotdone=+
  1369.         read-syms SetupNotDoneDlg$(STF_LANGUAGE)
  1370.         EndWait
  1371.         ui start "NotDone" $(SDKLIBHANDLE)
  1372.         ifstr(i) $(DLGEVENT) == "CONTINUE"
  1373.             ui pop 1
  1374.             goto end
  1375.         else
  1376.             goto end
  1377.         endif
  1378.     
  1379.     end = +
  1380.  
  1381.         install   FreeSetupLibrary
  1382.         exit
  1383.     
  1384.     
  1385.     
  1386.     ;*****************************************************************
  1387.     ;                                                                *
  1388.     ;         INSTALLATION SUPPORT ROUTINES                          *
  1389.     ;                                                                *
  1390.     ;*****************************************************************
  1391.     
  1392.     ;-----------------------------------------------------------------------
  1393.     ; ROUTINE:      QueryUserQuit
  1394.     ;
  1395.     ; DESCRIPTION:  This routine queries whether the user wants to quit setup
  1396.     ;
  1397.     ; INPUTS:       None
  1398.     ;
  1399.     ; OUTPUTS:      $R0: Status:     STATUS_SUCCESSFUL |
  1400.     ;                                STATUS_FAILED
  1401.     ;
  1402.     ;               $R1: UserAction: OK | CANCEL
  1403.     ;
  1404.     ;------------------------------------------------------------------------
  1405.     
  1406.     [QueryUserQuit]
  1407.     
  1408.         set Status     = STATUS_FAILED
  1409.         set UserAction = CANCEL
  1410.     
  1411.         ;
  1412.         ; read in quit message
  1413.         ;
  1414.         read-syms ExitWarningDlg$(!STF_LANGUAGE)
  1415.         ui start "ExitWarning"
  1416.         ifstr(i) $(DLGEVENT) == "YES"
  1417.             set Status     = STATUS_SUCCESSFUL
  1418.             set UserAction = "OK"
  1419.     
  1420.         else-ifstr(i) $(DLGEVENT) == "NO"
  1421.             set Status     = STATUS_SUCCESSFUL
  1422.             set UserAction = "CANCEL"
  1423.         else
  1424.         endif
  1425.     
  1426.     fin_QueryUserQuit = +
  1427.         Return $(Status) $(UserAction)
  1428.     
  1429.     
  1430.     
  1431.     ;----------------------------------------------
  1432.     ; EXIT WINDOWS NT TOOLS SETUP WARNING
  1433.     ;----------------------------------------------
  1434.     
  1435.     [ExitWarningDlgENG]
  1436.         DlgType      = "MessageBox"
  1437.         STF_MB_TITLE = "Exit ActiveX SDK Setup"
  1438.         STF_MB_TEXT  = "ActiveX SDK isn't correctly installed.  Are you "+
  1439.                        "sure you want to exit Setup?"
  1440.         STF_MB_TYPE  = 3
  1441.         STF_MB_ICON  = 5
  1442.         STF_MB_DEF   = 2
  1443.     
  1444.     
  1445.       ;-----------------------------------------------------------------------
  1446.       ; ROUTINE:      QueryReplaceFile
  1447.       ;
  1448.       ; DESCRIPTION:  This routine queries whether the user wants to replace a file
  1449.       ;
  1450.       ; INPUTS:       $0:    UserFile
  1451.       ;               $1:    InstallFile
  1452.       ;
  1453.       ; USER ACTION:  $R0:    YES | NO 
  1454.       ;               only required if current file is newer, if older return YES
  1455.       ;
  1456.       ;------------------------------------------------------------------------
  1457.  
  1458.       [QueryReplaceFile]
  1459.  
  1460.           set FileDateTimeName =  $($0)
  1461.           set UserFileName =  $($0)
  1462.           ;Debug-Output $($0)
  1463.           Detect DetectFileTime
  1464.           set CurrentDate = $(FileDateTime)
  1465.           ;Debug-Output $(CurrentDate)
  1466.   
  1467.           set FileDateTimeName =  $($1)
  1468.           ;Debug-Output $($1)
  1469.           Detect DetectFileTime
  1470.           ;Debug-Output $(FileDateTime)
  1471.       
  1472.           set ReplaceFile = YES
  1473.           ifint *($(CurrentDate),2) > *($(FileDateTime),2)
  1474.               ;Debug-Output "Current later than install"
  1475.               set ReplaceFile = NO
  1476.               ;prompt for replace
  1477. ;              read-syms WantToReplaceSystemFile
  1478. ;
  1479. ;              ui start "Welcome" $(SDKLIBHANDLE)
  1480. ;              ifstr(i) $(DLGEVENT) == "YES"
  1481. ;                  ui pop 1
  1482. ;                  set ReplaceFile = YES
  1483. ;              else
  1484. ;                  ui pop 1
  1485. ;              endif
  1486.           else-ifint *($(CurrentDate),2) == *($(FileDateTime),2)
  1487.               ifint *($(CurrentDate),1) >  *($(FileDateTime),1)
  1488.                   ;Debug-Output "Current later that install"
  1489.                   set ReplaceFile = NO
  1490.                   ;prompt for replace
  1491. ;                  read-syms WantToReplaceSystemFile
  1492. ;
  1493. ;                  ui start "Welcome" $(SDKLIBHANDLE)
  1494. ;                  ifstr(i) $(DLGEVENT) == "YES"
  1495. ;                      ui pop 1
  1496. ;                      set ReplaceFile = YES
  1497. ;                  else
  1498. ;                      ui pop 1
  1499. ;                  endif
  1500.               endif
  1501.           endif
  1502.   
  1503.           return $(ReplaceFile)
  1504.  
  1505.     ;-----------------------------------------------------------------------
  1506.     ; ROUTINE:      AppendNewValueToEnvVar
  1507.     ;
  1508.     ; DESCRIPTION:  Looks at the existing value of an environment variable
  1509.     ;               and appends a new value if it is not already present
  1510.     ;
  1511.     ; INPUTS:       $0:  OldValueList
  1512.     ;               $1:  NewValue
  1513.     ;
  1514.     ; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
  1515.     ;                            STATUS_FAILED
  1516.     ;
  1517.     ;               $R1: Changed?
  1518.     ;               $R2: NewValueList
  1519.     ;
  1520.     ;------------------------------------------------------------------------
  1521.     
  1522.     [AppendNewValueToEnvVar]
  1523.         ;
  1524.         set Status       = STATUS_FAILED
  1525.         set NewValueList = {}
  1526.         set Changed      = TRUE
  1527.         ;
  1528.         set Error = NO
  1529.         ForListDo $($0)
  1530.             ifstr(i) $(Error) == NO
  1531.                 ifstr(i) $(Changed) == TRUE
  1532.                      LibraryProcedure ExpandedValue, $(!LIBHANDLE), ExpandSz $($)
  1533.                      ifstr(i) $(ExpandedValue) == "ERROR"
  1534.                          set Error = YES
  1535.                      else-ifstr(i) $(ExpandedValue) == $($1)
  1536.                          set Changed = FALSE
  1537.                      endif
  1538.                 endif
  1539.             endif
  1540.         EndForListDo
  1541.     
  1542.         ifstr(i) $(Error) == "YES"
  1543.             goto finish_append
  1544.         endif
  1545.     
  1546.         set Status = STATUS_SUCCESSFUL
  1547.         ifstr(i) $(Changed) == TRUE
  1548.            set NewValueList = >($($0), $($1))
  1549.         endif
  1550.     
  1551.     finish_append = +
  1552.         return $(Status) $(Changed) $(NewValueList)
  1553.     
  1554.     ;-----------------------------------------------------------------------
  1555.     ; ROUTINE:      AppendNewValueToEnvVar2
  1556.     ;
  1557.     ; DESCRIPTION:  Looks at the existing value of an environment variable
  1558.     ;               and appends a new value if it is not already present
  1559.     ;
  1560.     ; INPUTS:       $0:  OldValueList
  1561.     ;               $1:  NewValue
  1562.     ;
  1563.     ; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
  1564.     ;                            STATUS_FAILED
  1565.     ;
  1566.     ;               $R1: Changed?
  1567.     ;               $R2: NewValueList
  1568.     ;
  1569.     ;------------------------------------------------------------------------
  1570.     
  1571.     [AppendNewValueToEnvVar2]
  1572.         ;
  1573.         set Status       = STATUS_FAILED
  1574.         set NewValueList = {}
  1575.         set NewValueList2 = {}
  1576.         set Changed      = TRUE
  1577.         set MSTFound = NO
  1578.         ;
  1579.         set Error = NO
  1580.         ForListDo $($0)
  1581.             ifstr(i) $(Error) == NO
  1582.                 ifstr(i) $(Changed) == TRUE
  1583.                      LibraryProcedure ExpandedValue, $(!LIBHANDLE), ExpandSz $($)
  1584.                      ;Debug-Output $(ExpandedValue)
  1585.                      ;Debug-Output $(!MSTdir)"bin"
  1586.                      ifstr(i) $(ExpandedValue) == "ERROR"
  1587.                          set Error = YES
  1588.                      else-ifstr(i) $(ExpandedValue) == $($1)
  1589.                          set Changed = FALSE
  1590.                      else-ifstr(i) $(ExpandedValue) == $(!MSTdir)"bin"
  1591.                          set MSTFound = YES
  1592.                          set Error = YES
  1593.                          set NewValueList2 = >($(NewValueList2), $($1))
  1594.                          set NewValueList2 = >($(NewValueList2), $($))
  1595.                      else
  1596.                      set NewValueList2 = >($(NewValueList2), $($))
  1597.                      endif
  1598.                 endif
  1599.             else
  1600.                ; Error or done
  1601.                set NewValueList2 = >($(NewValueList2), $($))
  1602.             endif
  1603.         EndForListDo
  1604.     
  1605.         ifstr(i) $(Error) == YES
  1606.             ifstr(i) $(MSTFound) == YES
  1607.                 set NewValueList = $(NewValueList2)
  1608.                 set Status = STATUS_SUCCESSFUL
  1609.                 set Changed = TRUE
  1610.             endif
  1611.             goto finish_append2
  1612.         endif
  1613.     
  1614.         set Status = STATUS_SUCCESSFUL
  1615.         ifstr(i) $(Changed) == TRUE
  1616.            set NewValueList = >($($0), $($1))
  1617.         endif
  1618.     
  1619.     finish_append2 = +
  1620.         ;Debug-Output "Here is the old value list"
  1621.         ;Debug-Output $($0)
  1622.         ;Debug-Output "Here is the new value list"
  1623.         ;Debug-Output $(NewValueList)
  1624.         return $(Status) $(Changed) $(NewValueList)
  1625.     
  1626.     ;-----------------------------------------------------------------------
  1627.     ; ROUTINE:      PrependNewValueToEnvVar
  1628.     ;
  1629.     ; DESCRIPTION:  Looks at the existing value of an environment variable
  1630.     ;               and prepends a new value if it is not already present
  1631.     ;
  1632.     ; INPUTS:       $0:  OldValueList
  1633.     ;               $1:  NewValue
  1634.     ;
  1635.     ; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
  1636.     ;                            STATUS_FAILED
  1637.     ;
  1638.     ;               $R1: Changed?
  1639.     ;               $R2: NewValueList
  1640.     ;
  1641.     ;------------------------------------------------------------------------
  1642.     
  1643.     [PrependNewValueToEnvVar]
  1644.         ;
  1645.         set Status       = STATUS_FAILED
  1646.         set NewValueList = {}
  1647.         set Changed      = TRUE
  1648.         ;
  1649.         set Error = NO
  1650.         ForListDo $($0)
  1651.             ifstr(i) $(Error) == NO
  1652.                 ifstr(i) $(Changed) == TRUE
  1653.                      LibraryProcedure ExpandedValue, $(!LIBHANDLE), ExpandSz $($)
  1654.                      ifstr(i) $(ExpandedValue) == "ERROR"
  1655.                          set Error = YES
  1656.                      else-ifstr(i) $(ExpandedValue) == $($1)
  1657.                          set Changed = FALSE
  1658.                      endif
  1659.                 endif
  1660.             endif
  1661.         EndForListDo
  1662.     
  1663.         ifstr(i) $(Error) == "YES"
  1664.             goto finish_prepend
  1665.         endif
  1666.     
  1667.         set Status = STATUS_SUCCESSFUL
  1668.         ifstr(i) $(Changed) == TRUE
  1669.            set NewValueList = $($1)
  1670.            ForListDo $($0)
  1671.                set NewValueList = >($(NewValueList), $($))
  1672.            EndForListDo
  1673.         endif
  1674.     
  1675.     finish_prepend = +
  1676.         return $(Status) $(Changed) $(NewValueList)
  1677.     
  1678.       ;-----------------------------------------------------------------------
  1679.       ; ROUTINE:      QueryReplaceFile
  1680.       ;
  1681.       ; DESCRIPTION:  This routine queries whether the user wants to replace a file
  1682.       ;
  1683.       ; INPUTS:       $0:    UserFile
  1684.       ;               $1:    InstallFile
  1685.       ;
  1686.       ; USER ACTION:  $R0:    YES | NO 
  1687.       ;               only required if current file is newer, if older return YES
  1688.       ;
  1689.       ;------------------------------------------------------------------------
  1690.       [QueryReplaceFile]
  1691.           set FileDateTimeName =  $($0)
  1692.           set UserFileName =  $($0)
  1693.           ;Debug-Output $($0)
  1694.           Detect DetectFileTime
  1695.           set CurrentDate = $(FileDateTime)
  1696.           ;Debug-Output $(CurrentDate)
  1697.   
  1698.           set FileDateTimeName =  $($1)
  1699.           ;Debug-Output $($1)
  1700.           Detect DetectFileTime
  1701.           ;Debug-Output $(FileDateTime)
  1702.       
  1703.           set ReplaceFile = YES
  1704.           ifint *($(CurrentDate),2) > *($(FileDateTime),2)
  1705.               ;Debug-Output "Current later that install"
  1706.               set ReplaceFile = NO
  1707.               ;prompt for replace
  1708.               read-syms WantToReplaceSystemFile
  1709.          
  1710.               ui start "Welcome" $(SDKLIBHANDLE)
  1711.               ifstr(i) $(DLGEVENT) == "YES"
  1712.                   ui pop 1
  1713.                   set ReplaceFile = YES
  1714.               else
  1715.                   ui pop 1
  1716.               endif
  1717.           else-ifint *($(CurrentDate),2) == *($(FileDateTime),2)
  1718.               ifint *($(CurrentDate),1) >  *($(FileDateTime),1)
  1719.                   ;Debug-Output "Current later that install"
  1720.                   set ReplaceFile = NO
  1721.                   ;prompt for replace
  1722.                   read-syms WantToReplaceSystemFile
  1723.           
  1724.                   ui start "Welcome" $(SDKLIBHANDLE)
  1725.                   ifstr(i) $(DLGEVENT) == "YES"
  1726.                       ui pop 1
  1727.                       set ReplaceFile = YES
  1728.                   else
  1729.                       ui pop 1
  1730.                   endif
  1731.               endif
  1732.           endif
  1733.   
  1734.           return $(ReplaceFile)    
  1735.     ;-----------------------------------------------------------------------
  1736.     ; ROUTINE:      SetEnvironmentString
  1737.     ;
  1738.     ; DESCRIPTION:  Set the value for a user environment string
  1739.     ;
  1740.     ; INPUTS:       $0:  VarList
  1741.     ;               $1:  Privileges
  1742.     ;
  1743.     ; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
  1744.     ;                            STATUS_FAILED
  1745.     ;
  1746.     ;
  1747.     ;------------------------------------------------------------------------
  1748.     
  1749.     [SetEnvironmentString]
  1750.         ;
  1751.         ;
  1752.         set Status = STATUS_FAILED
  1753.     
  1754.         set Var          = *($($0), 1)
  1755.         set VarTitle     = *($($0), 2)
  1756.         set VarRegType   = *($($0), 3)
  1757.         set VarValueList = *($($0), 4)
  1758.     
  1759.         set VarValue = ""
  1760.         ForListDo $(VarValueList)
  1761.            ifstr(i) $(VarValue) != ""
  1762.                set VarValue = $(VarValue)";"$($)
  1763.            else
  1764.                set VarValue = $($)
  1765.            endif
  1766.         EndForListDo
  1767.     
  1768.         LibraryProcedure STATUS, $(!LIBHANDLE), SetEnvVar $($1) $(Var) $(VarTitle) $(VarRegType) $(VarValue)
  1769.         ifstr(i) $(STATUS) == "ERROR"
  1770.            goto finish_setenvstr
  1771.         endif
  1772.         set Status = STATUS_SUCCESSFUL
  1773.     
  1774.     finish_setenvstr = +
  1775.         Return $(Status)
  1776.     
  1777.   
  1778.     ;*****************************************************************
  1779.     ;                                                                *
  1780.     ;         INSTALLATION SUPPORT ROUTINES                          *
  1781.     ;                                                                *
  1782.     ;*****************************************************************
  1783.     
  1784.     [Install-INetSDK-Groups]
  1785.     
  1786.         ifstr(i) $(PRIVILEGES) == "SYSTEM"
  1787.             set Common = "Common"
  1788.         else
  1789.             set Common = ""
  1790.         endif
  1791.     
  1792.         set ToolsGroup = "ActiveX SDK"
  1793.         Create$(Common)ProgManGroup $(ToolsGroup) ""
  1794.         Show$(Common)ProgManGroup   $(ToolsGroup), 1
  1795.     
  1796.         ;Debug-Output "About to Jump in to Create Icons"
  1797.         ifstr(i) $(DoOnlineHelp) == $(Chosen)
  1798.             set HelpGroup = $(ToolsGroup)
  1799.             ;Debug-Output "Creating Icon"
  1800.     
  1801.     
  1802.             Create$(Common)ProgmanItem  $(HelpGroup) , "ActiveX SDK Help InfoViewer"  $(INetSDKHelp)\"infoview ActiveX.MVB" "" 0
  1803.   
  1804.         endif
  1805.     
  1806.         Remove$(Common)ProgmanItem  $(ToolsGroup) , "ReadMe"
  1807.         Create$(Common)ProgmanItem  $(ToolsGroup) , "ReadMe" $(INetSDKDir)\"ReadMe.txt" "" ""
  1808.     
  1809.         LibraryProcedure RetCode,$(!LIBHANDLE), CheckFileExistance $(INetSDKDir)\Bin\OLEViewer.exe
  1810.         ifstr(i) $(RetCode) == "YES"
  1811.         Remove$(Common)ProgmanItem  $(ToolsGroup) , "OLE Viewer"
  1812.         Create$(Common)ProgmanItem  $(ToolsGroup) , "OLE Viewer" $(INetSDKDir)\Bin\"OLEViewer.exe" "" ""
  1813.         endif
  1814.     
  1815.         Show$(Common)ProgManGroup   $(ToolsGroup), 6
  1816.     
  1817.         exit
  1818.     
  1819.     ;************************************************************************
  1820.     ;                                                                       *
  1821.     ;  INETSDK SYSTEM FILES REPLACEMENT                                     *
  1822.     ;                                                                       *
  1823.     ;************************************************************************
  1824.     
  1825. [ShellCreateDir]
  1826.   LibraryProcedure STATUS, $(!SDKLIBHANDLE), CreateNestDir  $($0)
  1827.   Return
  1828.  
  1829. [SystemFilesBackup]    
  1830. return    
  1831.     ;************************************************************************
  1832.     ;                                                                       *
  1833.     ;  INETSDK SUPPORT                                                      *
  1834.     ;                                                                       *
  1835.     ;************************************************************************
  1836.     
  1837.     [Install-CopyToolsFiles]
  1838.         set STF_VITAL = ""
  1839.      
  1840.      ifstr(i) $(DoINetSDK) == $(Chosen ) 
  1841.     
  1842.         ;
  1843.         ; 1. INETSDK - always done
  1844.         ;
  1845.     
  1846.         LibraryProcedure STATUS, $(!SDKLIBHANDLE), CreateNestDir  $(INetSDKDir)
  1847.     ;
  1848.     ; Always create \license
  1849.     ;
  1850.  
  1851.         CreateDir  $(INetSDKLicense)
  1852.         AddSectionFilesToCopyList Files-INetSDK-license      $(!STF_SRCDIR)INetSDK\license      $(INetSDKLicense)
  1853.  
  1854.         ;
  1855.         ; 2. Help files - conditional
  1856.         ;
  1857.     
  1858.         ifstr(i) $(!DoOnlineHelp)  == $(!Chosen)
  1859.     
  1860.             CreateDir $(INetSDKHelp)
  1861.  
  1862.             AddSectionFilesToCopyList Files-INetSDK-Help $(!STF_SRCDIR)INetSDK\Help $(INetSDKHelp)
  1863.  
  1864. ;help hack
  1865.             AddSectionFilesToCopyList Files-INetSDK-Help-$(STF_PLATFORM) $(!STF_SRCDIR)INetSDK\Help\$(STF_PLATFORM) $(INetSDKHelp)
  1866.     
  1867.     
  1868.             ;
  1869.             ; The infoview program looks at infoview.ini for config info.
  1870.             ;  provide the minimum set we need to make it work.
  1871.             ;
  1872.     
  1873.             ReplaceIniKeyValue "infoview.ini", "ActiveX.Settings", "licensed.name", "ActiveX SDK User"
  1874.             ReplaceIniKeyValue "infoview.ini", "ActiveX.Settings", "licensed.organization", " "
  1875.             ReplaceIniKeyValue "infoview.ini", "ActiveX.Settings", "license_version", "N/A"
  1876.             ReplaceIniKeyValue "infoview.ini", "ActiveX.Settings", "license_last_read", "N/A"
  1877.     
  1878.             ReplaceIniKeyValue "infoview.ini", "ActiveX.MVB", "title", "Microsoft ActiveX Software Development Kit"
  1879.             ReplaceIniKeyValue "infoview.ini", "ActiveX.MVB", "LocalDir", $(INetSDKHelp)
  1880.             ReplaceIniKeyValue "infoview.ini", "ActiveX.MVB", "Path", $(INetSDKHelp)
  1881.             ReplaceIniKeyValue "infoview.ini", "ActiveX.MVB", "EXE", $(INetSDKHelp)"\infoview.exe"
  1882.     
  1883.             ReplaceIniKeyValue "infoview.ini", "series", "ActiveX", "ActiveX.MVB"
  1884.             ReplaceIniKeyValue "infoview.ini", "all titles", "ActiveX.MVB", "ActiveX.MVB"
  1885.     
  1886.     
  1887.         endif
  1888.     
  1889.         ;
  1890.         ; 3. INetSDK samples - conditional
  1891.         ;
  1892.     
  1893.     
  1894.         ifstr(i) $(!DoSamples) == "Do not do it" ; was == $(!Chosen)
  1895.     
  1896.           CreateDir $(INetSDKDir)Samples
  1897.     
  1898.           CreateDir $(INetSDKDir)Samples\BaseCtl
  1899.           CreateDir $(INetSDKDir)Samples\BaseCtl\FrameWrk
  1900.           CreateDir $(INetSDKDir)Samples\BaseCtl\Include
  1901.     
  1902.           CreateDir $(INetSDKDir)Samples\BaseCtl\IELnk
  1903.           CreateDir $(INetSDKDir)Samples\BaseCtl\IEMime
  1904.           CreateDir $(INetSDKDir)Samples\BaseCtl\ToDoSvr
  1905.           CreateDir $(INetSDKDir)Samples\BaseCtl\WebImage
  1906.           CreateDir $(INetSDKDir)Samples\BaseCtl\Card
  1907.           CreateDir $(INetSDKDir)Samples\BaseCtl\ObjVw
  1908.     
  1909.           CreateDir $(INetSDKDir)Samples\Framer
  1910.           CreateDir $(INetSDKDir)Samples\Progress
  1911.  
  1912. ;          CreateDir $(INetSDKDir)Samples\MSConf
  1913. ;          CreateDir $(INetSDKDir)Samples\MSConf\CnfTest
  1914. ;          CreateDir $(INetSDKDir)Samples\MSConf\Excel
  1915. ;          CreateDir $(INetSDKDir)Samples\MSConf\EzConf
  1916. ;          CreateDir $(INetSDKDir)Samples\MSConf\Word
  1917.  
  1918.           CreateDir $(INetSDKDir)Samples\AXScript
  1919.           CreateDir $(INetSDKDir)Samples\AXScript\Spruuids
  1920.           CreateDir $(INetSDKDir)Samples\AXScript\Spruuids\Src
  1921.           CreateDir $(INetSDKDir)Samples\AXScript\Spruuids\Src\Inc_Ext
  1922.  
  1923.           CreateDir $(INetSDKDir)Samples\Range
  1924.  
  1925.           CreateDir $(INetSDKDir)Samples\UrlPad
  1926.  
  1927.           CreateDir $(INetSDKDir)Samples\VBScript
  1928.  
  1929.           CreateDir $(INetSDKDir)Samples\WinInet
  1930.           CreateDir $(INetSDKDir)Samples\WinInet\FTPJr
  1931.           CreateDir $(INetSDKDir)Samples\WinInet\HTTPDump
  1932.           CreateDir $(INetSDKDir)Samples\WinInet\HTTPAuth
  1933.  
  1934.           CreateDir $(INetSDKDir)Samples\WebPost
  1935.           CreateDir $(INetSDKDir)Samples\WebPost\WbPost
  1936.           CreateDir $(INetSDKDir)Samples\WebPost\WbProv
  1937.  
  1938.           ; Begin Nashville
  1939.  
  1940.          ; CreateDir $(INetSDKDir)Samples\Wab
  1941.          ; CreateDir $(INetSDKDir)Samples\Wab\ApiTest
  1942.  
  1943.           ; End Nashville
  1944.  
  1945.           AddSectionFilesToCopyList Files-INetSDK-Samples                  $(!STF_SRCDIR)INetSDK\Samples                   $(INetSDKDir)Samples
  1946.           
  1947.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl          $(!STF_SRCDIR)INetSDK\Samples\BaseCtl           $(INetSDKDir)Samples\BaseCtl
  1948.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-FrameWrk $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\FrameWrk  $(INetSDKDir)Samples\BaseCtl\FrameWrk
  1949.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-Include  $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\Include   $(INetSDKDir)Samples\BaseCtl\Include
  1950.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-IELnk    $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\IELnk     $(INetSDKDir)Samples\BaseCtl\IELnk
  1951.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-IEMime   $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\IEMime    $(INetSDKDir)Samples\BaseCtl\IEMime
  1952.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-ToDoSvr  $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\ToDoSvr   $(INetSDKDir)Samples\BaseCtl\ToDoSvr
  1953.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-WebImage $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\WebImage  $(INetSDKDir)Samples\BaseCtl\WebImage
  1954.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-Card $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\Card  $(INetSDKDir)Samples\BaseCtl\Card
  1955.           AddSectionFilesToCopyList Files-INetSDK-Samples-BaseCtl-ObjVw $(!STF_SRCDIR)INetSDK\Samples\BaseCtl\ObjVw  $(INetSDKDir)Samples\BaseCtl\ObjVw
  1956.  
  1957.  
  1958.           AddSectionFilesToCopyList Files-INetSDK-Samples-Framer           $(!STF_SRCDIR)INetSDK\Samples\Framer            $(INetSDKDir)Samples\Framer
  1959.  
  1960. ;          AddSectionFilesToCopyList Files-INetSDK-Samples-MSConf           $(!STF_SRCDIR)INetSDK\Samples\MSConf            $(INetSDKDir)Samples\MSConf
  1961. ;          AddSectionFilesToCopyList Files-INetSDK-Samples-MSConf-CnfTest   $(!STF_SRCDIR)INetSDK\Samples\MSConf\CnfTest    $(INetSDKDir)Samples\MSConf\CnfTest
  1962. ;          AddSectionFilesToCopyList Files-INetSDK-Samples-MSConf-Excel     $(!STF_SRCDIR)INetSDK\Samples\MSConf\Excel      $(INetSDKDir)Samples\MSConf\Excel
  1963. ;          AddSectionFilesToCopyList Files-INetSDK-Samples-MSConf-EzConf    $(!STF_SRCDIR)INetSDK\Samples\MSConf\EzConf     $(INetSDKDir)Samples\MSConf\EzConf
  1964. ;          AddSectionFilesToCopyList Files-INetSDK-Samples-MSConf-Word      $(!STF_SRCDIR)INetSDK\Samples\MSConf\Word       $(INetSDKDir)Samples\MSConf\Word
  1965.  
  1966.           AddSectionFilesToCopyList Files-INetSDK-Samples-Progress         $(!STF_SRCDIR)INetSDK\Samples\Progress          $(INetSDKDir)Samples\Progress
  1967.  
  1968.           AddSectionFilesToCopyList Files-INetSDK-Samples-WinInet-Range    $(!STF_SRCDIR)INetSDK\Samples\Range             $(INetSDKDir)Samples\Range
  1969.  
  1970.           AddSectionFilesToCopyList Files-INetSDK-Samples-VBScript-Spruuids $(!STF_SRCDIR)INetSDK\Samples\AXScript\Spruuids  $(INetSDKDir)Samples\AXScript\Spruuids
  1971.           AddSectionFilesToCopyList Files-INetSDK-Samples-VBScript-Spruuids-Src $(!STF_SRCDIR)INetSDK\Samples\AXScript\Spruuids\Src $(INetSDKDir)Samples\AXScript\Spruuids\Src
  1972.  
  1973.           AddSectionFilesToCopyList Files-INetSDK-Samples-UrlPad           $(!STF_SRCDIR)INetSDK\Samples\UrlPad            $(INetSDKDir)Samples\UrlPad
  1974.  
  1975.           AddSectionFilesToCopyList Files-INetSDK-Samples-VBScript         $(!STF_SRCDIR)INetSDK\Samples\VBScript          $(INetSDKDir)Samples\VBScript
  1976.  
  1977.           AddSectionFilesToCopyList Files-INetSDK-Samples-WinInet          $(!STF_SRCDIR)INetSDK\Samples\WinInet           $(INetSDKDir)Samples\WinInet
  1978.           AddSectionFilesToCopyList Files-INetSDK-Samples-WinInet-FTPJr $(!STF_SRCDIR)INetSDK\Samples\WinInet\FTPJr  $(INetSDKDir)Samples\WinInet\FTPJr
  1979.           AddSectionFilesToCopyList Files-INetSDK-Samples-WinInet-HTTPDump $(!STF_SRCDIR)INetSDK\Samples\WinInet\HTTPDump  $(INetSDKDir)Samples\WinInet\HTTPDump
  1980.           AddSectionFilesToCopyList Files-INetSDK-Samples-WinInet-HTTPAuth $(!STF_SRCDIR)INetSDK\Samples\WinInet\HTTPAuth  $(INetSDKDir)Samples\WinInet\HTTPAuth
  1981.  
  1982.           AddSectionFilesToCopyList Files-WebPost-Include                  $(!STF_SRCDIR)INetSDK\Include                   $(INetSDKDir)Include
  1983.           AddSectionFilesToCopyList Files-WebPost-Lib-$(STF_PLATFORM)      $(!STF_SRCDIR)INetSDK\Lib\$(STF_PLATFORM)       $(INetSDKDir)Lib
  1984.  
  1985.           AddSectionFilesToCopyList Files-NashSDK-Samples-WebPost          $(!STF_SRCDIR)INetSDK\Samples\WebPost           $(INetSDKDir)Samples\WebPost
  1986.           AddSectionFilesToCopyList Files-NashSDK-Samples-WebPost-WbPost   $(!STF_SRCDIR)INetSDK\Samples\WebPost\WbPost    $(INetSDKDir)Samples\WebPost\WbPost
  1987.           AddSectionFilesToCopyList Files-NashSDK-Samples-WebPost-WbProv   $(!STF_SRCDIR)INetSDK\Samples\WebPost\WbProv    $(INetSDKDir)Samples\WebPost\WbProv
  1988.  
  1989.           ; Begin Nashville
  1990.  
  1991.          ; AddSectionFilesToCopyList Files-NashSDK-Include                  $(!STF_SRCDIR)INetSDK\Include                   $(INetSDKDir)Include
  1992.          ; AddSectionFilesToCopyList Files-NashSDK-Specs                    $(!STF_SRCDIR)INetSDK\Specs                     $(INetSDKDir)Specs
  1993.          ; AddSectionFilesToCopyList Files-NashSDK-Lib-$(STF_PLATFORM)      $(!STF_SRCDIR)INetSDK\Lib\$(STF_PLATFORM)       $(INetSDKDir)Lib
  1994.  
  1995.          ; AddSectionFilesToCopyList Files-NashSDK-Samples-Wab-ApiTest      $(!STF_SRCDIR)INetSDK\Samples\Wab\ApiTest       $(INetSDKDir)Samples\Wab\ApiTest
  1996.  
  1997.           ; End Nashville
  1998.  
  1999.         endif
  2000.     
  2001.     endif
  2002.     ; end of INetSDK
  2003.     
  2004.     ifstr(i) $( DoPDCOther) == $(Chosen )
  2005.          ;CreateDir Put directory here
  2006.          ;AddSectionFilesToCopyList section-name $(!STF_SRCDIR)sourcepath  $(INetSDKDir)destpath
  2007.     endif
  2008.     ;endif PDCOther
  2009.     
  2010.     
  2011.     exit
  2012.     
  2013.     
  2014.     [Install-SeeIfFileIsPresent]
  2015.     LibraryProcedure STATUS,$(!LIBHANDLE), CheckFileExistance $(FileToCheck)
  2016.     exit
  2017.     
  2018.     [Install-All-Files-Now]
  2019.         CopyFilesInCopyList
  2020.         exit
  2021.     
  2022.     
  2023.     ;
  2024.     ; REGULAR INETSDK
  2025.     ;
  2026.  
  2027. [Files-INetSDK-Bin-i386]
  2028. ; geraldd, sanrisc
  2029.  
  2030. [Files-INetSDK-Bin-alpha]
  2031.  
  2032. ; geraldd sanrisc
  2033. [Files-INetSDK-Bin-mips]
  2034.  
  2035. ; geraldd sanrisc
  2036. [Files-INetSDK-Bin-ppc]
  2037.  
  2038.  
  2039. [Files-INetSDK-Help-OLE]
  2040.  
  2041. [Files-INetSDK-Help-alpha]
  2042. 1,INFOVIEW.EXE,!DECOMPRESS,NOLOG
  2043.  
  2044. [Files-INetSDK-Help-mips]
  2045. 1,INFOVIEW.EXE,!DECOMPRESS,NOLOG
  2046.  
  2047. [Files-INetSDK-Help-ppc]
  2048. 1,INFOVIEW.EXE,!DECOMPRESS,NOLOG
  2049.  
  2050. [Files-INetSDK-Help-i386]
  2051. 1,INFOVIEW.EXE,!DECOMPRESS,NOLOG
  2052.  
  2053.  
  2054. [Files-INetSDK-Help]
  2055. 1,ACTIVEX.AUX,!DECOMPRESS,NOLOG
  2056. 1,ACTIVEX.CAC,!DECOMPRESS,NOLOG
  2057. 1,ACTIVEX.IDX,!DECOMPRESS,NOLOG
  2058. 1,ACTIVEX.KWD,!DECOMPRESS,NOLOG
  2059. 1,ACTIVEX.MVB,!DECOMPRESS,NOLOG
  2060.  
  2061. [Files-INetSDK-Include]
  2062.  
  2063. [Files-INetSDK-Lib-i386]
  2064.  
  2065. ; geraldd sanrisc
  2066. [Files-INetSDK-Lib-alpha]
  2067.  
  2068. ; geraldd sanrisc
  2069. [Files-INetSDK-Lib-mips]
  2070. ; geraldd sanrisc
  2071.  
  2072. [Files-INetSDK-Lib-ppc]
  2073.  
  2074. [Files-INetSDK-Lib]
  2075.  
  2076. [Files-INetSDK-License]
  2077. 1,LICENSE.TXT,!DECOMPRESS,NOLOG
  2078. 1,REDIST.TXT,!DECOMPRESS,NOLOG
  2079.  
  2080. [Files-INetSDK-Other]
  2081. 1,LICENSE.TXT,!DECOMPRESS,NOLOG
  2082. 1,REDIST.TXT,!DECOMPRESS,NOLOG
  2083.  
  2084.  
  2085.  
  2086. [Files-INetSDK-Specs]
  2087.  
  2088. [Files-INetSDK-System32-i386]
  2089. ; 1,DATAPATH.TLB,!DECOMPRESS,NOLOG
  2090.  
  2091. ; geraldd sanrisc
  2092. [Files-INetSDK-System32-alpha]
  2093.  
  2094. ;geraldd sanrisc
  2095. [Files-INetSDK-System32-ppc]
  2096.  
  2097. ;geraldd sanrisc
  2098. [Files-INetSDK-System32-mips]
  2099.  
  2100.  
  2101.  
  2102.  
  2103. [Files-INetSDK]
  2104. 1,README.TXT,!DECOMPRESS,NOLOG
  2105. 1,SETENV.BAT,!DECOMPRESS,NOLOG
  2106.  
  2107. [Files-NashSDK-Include]
  2108. 1,JOBSCHED.H,!DECOMPRESS,NOLOG
  2109. 1,WAB.H,!DECOMPRESS,NOLOG
  2110. 1,WABAPI.H,!DECOMPRESS,NOLOG
  2111. 1,WABCODE.H,!DECOMPRESS,NOLOG
  2112. 1,WABDEFS.H,!DECOMPRESS,NOLOG
  2113. 1,WABIAB.H,!DECOMPRESS,NOLOG
  2114. 1,WABMEM.H,!DECOMPRESS,NOLOG
  2115. 1,WABNOT.H,!DECOMPRESS,NOLOG
  2116. 1,WABTAGS.H,!DECOMPRESS,NOLOG
  2117. 1,WABUTIL.H,!DECOMPRESS,NOLOG
  2118.  
  2119. [Files-NashSDK-Lib-i386]
  2120. 1,MSTASK.LIB,!DECOMPRESS,NOLOG
  2121. 1,WAB32.LIB,!DECOMPRESS,NOLOG
  2122.  
  2123. ;geraldd sanrisc
  2124. ;[Files-NashSDK-Lib-ppc]
  2125.  
  2126. ;geraldd sanrisc
  2127. ;[Files-NashSDK-Lib-alpha]
  2128.  
  2129. ;geraldd sanrisc
  2130. ;[Files-NashSDK-Lib-mips]
  2131.  
  2132. [Files-NashSDK-Samples-Wab-ApiTest]
  2133. 1,APITEST.C,!DECOMPRESS,NOLOG
  2134. 1,APITEST.DEF,!DECOMPRESS,NOLOG
  2135. 1,APITEST.H,!DECOMPRESS,NOLOG
  2136. 1,APITEST.RC,!DECOMPRESS,NOLOG
  2137. 1,INSTRING.C,!DECOMPRESS,NOLOG
  2138. 1,INSTRING.H,!DECOMPRESS,NOLOG
  2139. 1,INSTRING.RC,!DECOMPRESS,NOLOG
  2140. 1,MAKEFILE,!DECOMPRESS,NOLOG
  2141.  
  2142. [Files-NashSDK-Samples-WebPost-WbPost]
  2143. 1,MAKEFILE,!DECOMPRESS,NOLOG
  2144. 1,README.TXT,!DECOMPRESS,NOLOG
  2145. 1,WBPOST.CPP,!DECOMPRESS,NOLOG
  2146. 1,WBPOST.H,!DECOMPRESS,NOLOG
  2147.  
  2148. [Files-NashSDK-Samples-WebPost-WbProv]
  2149. 1,GUID.C,!DECOMPRESS,NOLOG
  2150. 1,MAKEFILE,!DECOMPRESS,NOLOG
  2151. 1,README.TXT,!DECOMPRESS,NOLOG
  2152. 1,RESOURCE.H,!DECOMPRESS,NOLOG
  2153. 1,SITE.CPP,!DECOMPRESS,NOLOG
  2154. 1,WBPROV.CPP,!DECOMPRESS,NOLOG
  2155. 1,WBPROV.DEF,!DECOMPRESS,NOLOG
  2156. 1,WBPROV.H,!DECOMPRESS,NOLOG
  2157. 1,WBPROV.RC,!DECOMPRESS,NOLOG
  2158. 1,WIZARD.CPP,!DECOMPRESS,NOLOG
  2159.  
  2160. [Files-NashSDK-Samples-WebPost]
  2161. 1,MAKEFILE,!DECOMPRESS,NOLOG
  2162.  
  2163. [Files-NashSDK-Specs]
  2164. 1,WABAPI.DOC,!DECOMPRESS,NOLOG
  2165.  
  2166. [Files-WebPost-Include]
  2167. 1,WPAPI.H,!DECOMPRESS,NOLOG
  2168. 1,WPGUID.H,!DECOMPRESS,NOLOG
  2169. 1,WPOBJ.H,!DECOMPRESS,NOLOG
  2170. 1,WPSPI.H,!DECOMPRESS,NOLOG
  2171.  
  2172. [Files-WebPost-Lib-i386]
  2173. 1,WEBPOST.LIB,!DECOMPRESS,NOLOG
  2174.  
  2175. ;geraldd sanrisc
  2176. [Files-WebPost-Lib-ppc]
  2177. ;1,WEBPOST.LIB,!DECOMPRESS,NOLOG
  2178.  
  2179. ;geraldd sanrisc
  2180. [Files-WebPost-Lib-alpha]
  2181.  
  2182. ;geraldd sanrisc
  2183. [Files-WebPost-Lib-mips]
  2184.  
  2185.  
  2186.