File:  [WindowsNT SDKs] / mstools / mstools.inf
Revision 1.1.1.4 (vendor branch): download - view: text, annotated - select for diffs
Thu Aug 9 18:25:17 2018 UTC (7 years, 9 months ago) by root
Branches: msft, MAIN
CVS tags: ntsdk-nov-1993, HEAD
Microsoft Windows NT Build 511 (DDK SDK) 11-01-1993

;***********************************************************************
; SOURCE MEDIA DESCRIPTION			
; ------------------------
;***********************************************************************
[Source Media Descriptions]
    2 = "CD-Rom Labelled Windows NT"
    3 = "CD-Rom Labelled Win32 SDK"



;***********************************************************************
; CONSTANTS FOR USING DIALOGS
;***********************************************************************
[GeneralConstants]

    ;
    ; Constants to support the use of radio button dialogs
    ;

    Radio1  = "1"
    Radio2  = "2"
    Radio3  = "3"
    Radio4  = "4"
    Radio5  = "5"
    Radio6  = "6"
    Radio7  = "7"
    Radio8  = "8"
    Radio9  = "9"

    ;
    ; Constants to support the use of checkbox dialogs

    Chosen    = "ON"
    NotChosen = "OFF"


[RegistryConstants]

    MaskAllAccess = 33554432
    NoTitle       = 0
    RegLastError  = $(!REG_ERROR_SUCCESS)


;************************************************************************
; CONFIGURATION CHOICES
; ---------------------
; the sections below contain the different choices supported for
; the configuration items shown.  an id section establishes the 
; language independent IDs supported by nt setup.  for each language
; supported a text section displays the text used for the different
; choices
;************************************************************************

;********************************
; PLATFORM INDEPENDENT CHOICES
;********************************
;----------------------------------------------------
; LANGUAGE CHOICES
;----------------------------------------------------

[LanguageID]
    LANGID_ENG = ENG
    ;LANGID_ITL = ITL
    ;LANGID_FRN = FRN
    ;LANGID_GER = GER

;----------------------------------------------------
; PROCESSOR CHOICES
;----------------------------------------------------
[ProcessorID]
    ProcessorID_I386  = I386
    ProcessorID_I486  = I486
    ProcessorID_I586  = I586
    ProcessorID_R4000 = R4000
    ProcessorID_Alpha = Alpha_AXP

;----------------------------------------------------
; PLATFORM CHOICES
;----------------------------------------------------
[PlatformID]
    PlatformID_I386 = I386
    PlatformID_Mips = Mips
    PlatformID_Alpha = Alpha


;**************************************************************
;  UI VARIABLES
;**************************************************************



[ProcessorVar]

    STF_PROCESSOR = "" ? $(LIBHANDLE) GetProcessor
    STF_PLATFORM  = ""

[LanguageVar]
    ;
    ; Language to Use For interaction with user
    ;
    STF_LANGUAGE       = "" ? $(LIBHANDLE) GetLanguage


[UiVars]
    ;
    ; Version Information
    ;

    BuildVersion   = "12-91"

    ;
    ; Destination TOOLS Drive Particulars
    ;
    VolumeList      = {} ? $(LIBHANDLE) GetHardDriveLetters
    VolumeFreeList  = {} ? $(LIBHANDLE) GetHardDriveFreeSpace
    VolumeFSList    = {} ? $(LIBHANDLE) GetHardDriveFileSystems
    DestVolume      = ""
    ;

    ;
    ; Windows NT Directory
    ;

    STF_WINDOWSPATH    = "" ? $(!LIBHANDLE) GetWindowsNtDir

    ;
    ; Mstools directory
    ;

    MSTOOLS = "\MSTOOLS"

    ;
    ; Installation mode
    ;

    MinInteract         = $(Radio1)
    MaxInteract         = $(Radio2)
    STF_INSTALL_MODE    = $(MinInteract)

    ;
    ; Mstools Setup Help IDs
    ;

    !IDH_DB_TOOLSWELCOME_INS   = 3000
    !IDH_DB_MSTINSTALLMODE_INS = 3010
    !IDH_DB_MSTDEST_INS        = 3020
    !IDH_DB_MSTOPTIONS_INS     = 3030


[EnvironmentVars]
    ;
    ; user environment variables in the current user's profile
    ;

    PathEnvVar     = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Path
    LibEnvVar      = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Lib
    IncludeEnvVar  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) Include
    InitEnvVar     = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) init
    MstoolsRootEnvVar  = {} ? $(LIBHANDLE) GetEnvVar $(PRIVILEGES) MstoolsRoot


[VarsI386]
    ;
    MinToolsSize     = 15
    MaxToolsSize     = 56
    ToolsSamplesSize = 13746528
    ToolsHelpSize    = 23342739 
    RPCSize          = 734922 
    PosixSize        = 483354 
    MSSetupSize      = 2158304
    MSTestSize       = 1241563

    ;
    ; Installation options
    ;

    DoToolsSamples = $(Chosen)
    DoToolsHelp    = $(Chosen)
    DoRPC          = $(Chosen)
    DoPosix        = $(Chosen)
    DoMSSetup      = $(Chosen)
    DoMSTest       = $(Chosen)

    ;
    ; Options to disable
    ;

    DisableList    = {}



[VarsMips]
    ;
    MinToolsSize     = 25
    MaxToolsSize     = 66 
    ToolsSamplesSize = 13446528
    ToolsHelpSize    = 23342739 
    RPCSize          = 734922
    PosixSize        = 961242
    MSSetupSize      = 2276965
    MSTestSize       = 1427384

    ;
    ; Installation options
    ;

    DoToolsSamples = $(Chosen)
    DoToolsHelp    = $(Chosen)
    DoRPC          = $(Chosen)
    DoPosix        = $(Chosen)
    DoMSSetup      = $(Chosen)
    DoMSTest	   = $(Chosen)
    DoMfc          = $(NotChosen)

    ;
    ; Options to disable
    ;

    DisableList = {}


[VarsAlpha]
    ;
    MinToolsSize     = 32
    MaxToolsSize     = 80 
    ToolsSamplesSize = 13446528
    ToolsHelpSize    = 23342739 
    RPCSize          = 734922
    PosixSize        = 961242
    MSSetupSize      = 2287634
    MSTestSize       = 1427384

    ;
    ; Installation options
    ;

    DoToolsSamples = $(Chosen)
    DoToolsHelp    = $(Chosen)
    DoRPC          = $(Chosen)
    DoPosix        = $(Chosen)
    DoMSSetup      = $(Chosen)
    DoMSTest	   = $(Chosen)

    ;
    ; Options to disable
    ;

    DisableList = {}



[StringsENG]
    String1 = "Setup cannot install on the current processor."$(!LF)$(!LF)+
              "Cannot proceed with install."


    String4 = "Setup couldn't copy over the Win32 SDK files. "$(!LF)$(!LF)+
              "Cannot proceed with install."

    String5 = "Error querying init directory. "$(!LF)$(!LF)+
              "Initializing our own init directory."

    String6 = "Error querying environment variables."$(!LF)$(!LF)+
              "Cannot proceed with install."

    String7 = "Error modifying environment variables."$(!LF)$(!LF)+
              "Cannot proceed with install."

    String8  = "Size required for full installation is: "
    String9  = "Minimum size required for custom installation is: "
    String10 = " MB."
    String11 = "No drive was found with this much space."$(!LF)$(!LF)+
               "Cannot proceed with install."

    String12 = "There is space sufficient for the minimum Win32 SDK installation. "+
               "You need to run Setup again and choose custom installation."

    String13 = "Setup needs a full path specification of your destination.  Please "+
               "reenter a new path.  An example of af full path is: "

    String14 = "The drive entered in the Win32 SDK destination path does not "+
               "have enough space for a minimal installation.  Please reenter a "+
	       "new path."

    String15 = "There is no space free for the optional Win32 SDK components."
    String16 = "Setup has detected that you have chosen to install to a network "+
	       "drive.  If you are certain that this drive is a valid drive, and "+
               "that it has sufficient space, please hit OK to continue.  Otherwise, "+
               "choose Cancel to select another drive."
    String18 = "Setup was unable to locate the Windows NT CD in the specified"+
	       " location.  Please choose OK to select a new drive, or CANCEL "+
	       "to continue without copying the .DBG files."
    String19 = "Setup will attempt to copy the .DBG files from the Windows NT v"+
	       "3.1 CD or network image. These files are used by Windbg to provide "+
	       "complete symbolic information for the Win32 API. Please enter the "+
	       "full path to the root of the Windows NT image."
    String21 = "Setup was unable to copy the .DBG files, please see the Win32 SDK"+
               " Getting Started manual for further information."


;--------------------
; BILLBOARD MESSAGES
;--------------------
[BillboardsENG]
Billboard1 = "Please wait while Setup creates directories on the destination drive."

;***************************************************************************
; DIALOGS
; -------
; the following sections contain the dialogs used to interact with the user.
; for each language supported there is a different dialog section.
;***************************************************************************


;-----------------------------------------------
; WELCOME DIALOG
;-----------------------------------------------
[WelcomeDlgENG]
    DlgType     = Info
    DlgTemplate = WELCOME
    Caption     = "Win32 SDK Setup"

    DlgText     = "Welcome to Setup."$(LF)$(LF)+
                  "The Setup program for the Microsoft Win32 Software "+
                  "Development Kit for Windows NT "+
                  "installs Win32 development tools.  "+
                  "Each Setup dialog has basic instructions for "+
                  "completing a step of the installation.  "$(LF)$(LF)+
                  "To install the Win32 SDK on your computer now, click Continue "+
                  "or press Enter."$(LF)$(LF)+
                  "To exit Setup without installing the Win32 SDK, click Exit "+
                  "or press F3."

    Continue     = Continue
    Help         = Help
    Exit         = Exit
    HelpContext  = $(!IDH_DB_MSTWELCOME_INS)


;-----------------------------------------------
; INSTALL MODE DIALOG
;-----------------------------------------------
[InstallModeDlgENG]
    DlgType     = "Radio"
    DlgTemplate = "INSTALLMODE"
    Caption     = "Setup Methods"
    DlgText     = "Express Setup installs the Win32 SDK using default settings "+
                  "and detected configuration."$(LF)$(LF)+
                  "Custom Setup gives you more control in viewing detected configuration "+
                  "and choosing options."$(LF)$(LF)+
                  "Choose one of the two Setup methods:"

    Continue    = "Continue"
    Help        = "&Help"
    Exit        = "&Exit"
    HelpContext = $(!IDH_DB_MSTINSTALLMODE_INS)

    RadioHeader   = ""
    Radio1Text    = "&Express Setup"
    Radio2Text    = "&Custom Setup"
    Continue      = "Continue"
    RadioDefault  = $(STF_INSTALL_MODE)
    OptionsGreyed = {}


;-----------------------------------------------
; TOOLS DESTINATION DIALOG
;-----------------------------------------------
[DestinationDlgENG]
    DlgType      = Combination
    DlgTemplate  = "DESTTOOLS"
    Caption      = "Win32 SDK Destination"
    DlgText      = "Setup recommends installing the Win32 SDK on the following "+
                   "hard disk drive."

    Combo1Label  = "Destination Drive:"

    Continue     = "Continue"
    Help         = "&Help"
    Exit         = "&Exit"
    HelpContext  = $(!IDH_DB_MSTDEST_INS)

    GroupLabel   = "Destination Drive Characteristics"

    Static1Label = "Available Space:"
    Static1Text  = $(DestVolumeFree)
    footer1      = "MB"
    footer2      = "( For Full Setup )"
    footer3      = "( For Minimum Setup )"
    Static2Label = "Space Needed:"
    Static2Text  = $(MaxToolsSize)
    Static3Text  = $(MinToolsSize)

    TextFields   = {$(Static1Text), $(Static2Text), $(Static3Text)}

    ;
    ; Editboxes in the dialog
    ;

    EditLabel   = "SDK Directory:"
    EditTextLim = 256
    EditTextIn  = $(MstoolsDir)
    EditFocus   = "ALL"

    Combo1List   = $(DestVolumeList)
    Combo1Out    = $(DestVolume)

    ComboListItemsIn  = {Combo1List}
    ComboListItemsOut = {Combo1Out}

    NotifyFields = {YES}


;-------------------------------------------------------------
; PARTIAL INSTALL COMPONENTS
;-------------------------------------------------------------
[MSToolsOptionsDlgENG]
    DlgType     = "Check1"
    DlgTemplate = "TOOLSOPTIONS"
    Caption     = "Win32 SDK Install Options"

    DlgText     = "The following optional groups of files (components) can be "+
                  "installed on your system."$(!LF)$(!LF)+
                  "To remove a component, clear its checkbox."$(!LF)$(!LF)+
                  "To install a component, check its checkbox."$(!LF)$(!LF)

    Check1Text  = "Copy Win32 SDK samples."
    Check2Text  = "Copy Online Reference files."
    Check3Text  = "Copy RPC Development files."
    Check4Text  = "Copy Posix development files."
    Check5Text  = "Copy MSSetup files."
    Check6Text  = "Copy MSTest files."

    Continue    = "&Continue"
    Help        = "&Help"
    Exit        = "E&xit"
    HelpContext = $(!IDH_DB_MSTOPTIONS_INS)

    CheckHeader    = "Components:"
    SizeHeader     = "Bytes Used:"
    Files          = "Files..."
    SpaceRequired  = "Disk Space Required for Optional Files:"
    SpaceAvailable = "Disk Space Available for Optional Files:"
    footer1        = "Bytes"
    SizeAvailable  = $(FreeForOptional)

    CheckItemsIn      = { $(DoToolsSamples),   $(DoToolsHelp), $(DoRPC), $(DoPosix), $(DoMSSetup), $(DoMSTest) }
    CheckItemsInSizes = { $(ToolsSamplesSize), $(ToolsHelpSize), $(RPCSize), $(PosixSize), $(MSSetupSize), $(MSTestSize) }
    OptionsGreyed     = $(DisableList)


;--------------------------------------------------------------
; k) SETUP DONE - RESTART DIALOG
;--------------------------------------------------------------
[SetupDoneDlgENG]
    DlgType     = "Info"
    DlgTemplate = "RESTART"
    Caption     = "Win32 SDK Setup"
    DlgText     = "Microsoft Win32 Software Development Kit for Windows NT is now installed."$(LF)$(LF)+
                  "Please choose to exit back to the Windows NT System."
    Windows     = "Exit to &Windows NT"

;--------------------------------------------------------------
; k) SETUP NOT DONE - RESTART DIALOG
;--------------------------------------------------------------
[SetupNotDoneDlgENG]
    DlgType     = "Info"
    DlgTemplate = "RESTART"
    Caption     = "Win32 SDK Setup"
    DlgText     = "Microsoft Win32 Software Development Kit for Windows NT has not been installed."$(LF)$(LF)+
                  "Please choose to exit back to the Windows NT System."
    Windows     = "Exit to &Windows NT"

;**************************************************************************
; DLL LOAD and FREE
; the following section contain commands to load specific dll libraries and
; to free them
;**************************************************************************

;----------------------------------------------
; a) DETECT LIBRARY
;----------------------------------------------
[LoadSetupLibrary]
    LoadLibrary "x" $(STF_CWDDIR)\setupdll.dll LIBHANDLE
    exit

[FreeSetupLibrary]
    FreeLibrary $(LIBHANDLE)
    exit



;**************************************************************************
; PROGRESS GUAGE VARIABLES
;**************************************************************************

[ProgressCopyENG]
    ProCaption   = "Win32 SDK Setup"
    ProCancel    = "Cance&l"
    ProCancelMsg = "Win32 SDK isn't correctly installed.  Are you sure "+
                   "you want to cancel copying files?"
    ProCancelCap = "Setup Message"
    ProText1     = "Copying:"
    ProText2     = "To:"


;-----------------------------------------------------------------------
; ROUTINE:      CreateKey
;
; DESCRIPTION:  Creates a key and fixes the values indicated.
;               Key is Handle\Key1\Key2\...\Keyn. Value list
;               is for Valuen.
;
; INPUTS:       $0: Handle into registry
;               $1: KeyTreeComponents {Key1Info, Key2Info..}
;               $2: ValueList {Value1Info, Value2Info, Value3Info}
;
; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
;                            STATUS_FAILED
;                            STATUS_ERROR_CREATEKEY
;                            STATUS_ERROR_CREATEVALUE
;
;               $R1: Handle to created key
;
;------------------------------------------------------------------------

[CreateKey]

    ;
    ; Initialize
    ;

    set Status = STATUS_FAILED
    read-syms RegistryConstants

    ;
    ; traverse down the keytreecomponents and open/create components as
    ; you go along
    ;


    set BaseHandle = $($0)
    set KeyHandle  = $(BaseHandle)

    ForListDo $($1)

        set KeyInfo = $($)
        set KeyName = *($(KeyInfo), 1)

        ;
        ; Try opening the key first

        OpenRegKey $(BaseHandle) "" $(KeyName) $(MaskAllAccess) KeyHandle
        ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
            ;
            ; Key doesn't exist
            ;
            Debug-Output "REGISTRY.INF: Key"$(KeyName)"doesn't exist.  Will create key"

            set RegLastError = 0
            CreateRegKey $(BaseHandle) $(KeyInfo) "" $(MaskAllAccess) "" KeyHandle
            ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
                set Status = STATUS_ERROR_CREATEKEY
                Debug-Output "REGISTRY.INF: Error in creating key"
                goto endcreate
            endif
        endif

        ifstr(i) $(BaseHandle) != $($0)
            CloseRegKey $(BaseHandle)
            ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
                set Status = STATUS_ERROR_CREATEKEY
                Debug-Output "REGISTRY.INF: Error in closing base handle"
                goto endcreate
            endif
        endif

        set BaseHandle = $(KeyHandle)

    EndForListDo

    ifstr(i) $($2) != {}
        shell "" AddValueList $(KeyHandle) $($2)
        ifstr(i) $($R0) != STATUS_SUCCESSFUL
            set Status = STATUS_ERROR_CREATEVALUE
            goto endcreate
        endif
    endif
    set Status = STATUS_SUCCESSFUL

endcreate = +
    ifstr(i) $(Status) != STATUS_SUCCESSFUL
        Debug-Output "REGISTRY.INF: CreateKey Error:"$(Status)
    endif
    Return $(Status) $(KeyHandle)


;*************************************************************************
;
;     SECTION:   AddValueList
;
;     PURPOSE:   Given a nested list of value items, add each to the given
;                key.   Key is left open.
;
;   ARGUMENTS:   $0    Registry key handle
;                $1    List of value items; for example:
;                          { {ValueName1,0,$(!REG_VT_SZ),$(ValueData1)}, +
;                            {ValueName2,0,$(!REG_VT_SZ),$(ValueData2)} }
;
;     RETURNS:   $R0   Status
;
;
;*************************************************************************

[AddValueList]
   set Status = STATUS_FAILED
   read-syms RegistryConstants

   ForListDo $($1)
       SetRegValue $($0) $($)
       ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
           Debug-Output "REGISTRY.INF: CreateValue failed:"$($)
           goto end_addvaluelist
       endif
   EndForListDo
   set Status = STATUS_SUCCESSFUL

end_addvaluelist = +
   return $(Status)



;**************************************************************************
; SHELL COMMANDS SCRIPT
;**************************************************************************

[Shell Commands]

    ;
    ; Initialise the app, by setting the caption and loading the support library
    ;
    set-title "Win32 SDK Setup"
    set Exit_Code = $(!SETUP_ERROR_GENERAL)
    install   LoadSetupLibrary

    StartWait

    ;
    ; read general constants
    ;

    set-subst LF = "\n"
    read-syms GeneralConstants

    ;
    ; read the platform independent choices
    ;

    read-syms LanguageID
    read-syms ProcessorID
    read-syms PlatformID

    ;
    ; read the default language and try to detect the language
    ;

    read-syms LanguageVar
    detect    LanguageVar

    ;
    ; read and detect the processor we are working on
    ;

    read-syms ProcessorVar
    detect    ProcessorVar
    read-syms Strings$(!STF_LANGUAGE)
    read-syms Billboards$(!STF_LANGUAGE)
    ;
    ; Check processor type, see if it is supported, if so what platform does it
    ; belong to.
    ;

    ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I386)
        set STF_PLATFORM = $(PlatformID_I386)
    else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I486)
        set STF_PLATFORM = $(PlatformID_I386)
    else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_I586)
        set STF_PLATFORM = $(PlatformID_I386)
    else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_R4000)
        set STF_PLATFORM = $(PlatformID_Mips)
    else-ifstr(i) $(STF_PROCESSOR) == $(ProcessorID_Alpha)
        set STF_PLATFORM = $(PlatformID_Alpha)
    else
        shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String1)
        goto setupnotdone
    endif

    read-syms  RegistryConstants

    ;
    ; Call the library function to see if we have admin privileges
    ;

    LibraryProcedure STATUS, $(!LIBHANDLE), TestAdmin
    ifstr(i) $(STATUS) == "YES"
 	set PRIVILEGES = SYSTEM
    else
        set PRIVILEGES = USER
    endif

    ;
    ; x86 is always just a user for VC++
    ;

    ifstr(i) $(STF_PLATFORM) == $(PlatformID_I386)
	set PRIVILEGES = USER
    endif

    ;
    ; read the UI Variables and detect their setting on the current machine
    ;

    read-syms UiVars
    detect    UiVars
    read-syms Vars$(STF_PLATFORM)

    EndWait

welcome =+
    read-syms WelcomeDlg$(STF_LANGUAGE)
    ui start "Welcome"
    ifstr(i) $(DLGEVENT) == "CONTINUE"
        ui pop 1
        goto queryinstallmode
    else-ifstr(i) $(DLGEVENT) == "EXIT"
        shell "" QueryUserQuit
        ifstr(i) $($R1) == "OK"
            ui pop 1
            goto setupnotdone
        else
            goto welcome
        endif
    else
        goto end
    endif

    ;
    ; show install mode dialog and query if we are to operate in express mode
    ; or in full install
    ;

queryinstallmode =+
    read-syms InstallModeDlg$(STF_LANGUAGE)
    ui start "InstallMode"
    ifstr(i) $(DLGEVENT) == "CONTINUE"
        ui pop 1
        set STF_INSTALL_MODE = $(ButtonChecked)
        goto setdestination
    else-ifstr(i) $(DLGEVENT) == "EXIT"
        shell "" QueryUserQuit
        ifstr(i) $($R1) == "OK"
            ui pop 1
            goto setupnotdone
        else
            goto queryinstallmode
        endif
    else
        goto end
    endif

setdestination =+

    ;
    ; go through the volume list and form the destination volume list of
    ; all volumes which have the size needed to install the mstools.
    ;
    set DestVolumeList = {}
    set DestVolumeFreeList = {}

    ForListDo $(VolumeList)

       set CurrentVolume      = *($(VolumeList), $(#))
       set CurrentVolumeFree  = *($(VolumeFreeList), $(#))
       set CurrentVolumeFS    = *($(VolumeFSList), $(#))

       set DestVolumeList     = >($(DestVolumeList),     $(CurrentVolume))
       set DestVolumeFreeList = >($(DestVolumeFreeList), $(CurrentVolumeFree))

skipvol=+
    EndForListDo

    ;
    ; destination drive is the drive with the maximum space
    ;

    set DestVolume     = ""
    set DestVolumeFree = 0

    ForListDo $(DestVolumeList)
        set Volume     = $($)
        set VolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(Volume)))

        ifint $(VolumeFree) > $(DestVolumeFree)
            set DestVolume     = $(Volume)
            set DestVolumeFree = $(VolumeFree)
        endif

    EndForListDo

    set MstoolsDir = $(DestVolume)$(MSTOOLS)

    ;
    ; display tools destination, size available and needed for
    ; user approval
    ;
destination =+

    ifstr(i) $(STF_INSTALL_MODE) == $(MinInteract)
       ifint $(DestVolumeFree) < $(MaxToolsSize)
           shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String8)$(MaxToolsSize)$(String10)$(String12)
           goto setupnotdone
       else
           goto mstooldirs
       endif
    endif

    read-syms DestinationDlg$(STF_LANGUAGE)
    ui start "Destination"
    ifstr(i) $(DLGEVENT) == "NOTIFY"

        ifstr(i) $(Combo1Out) != $(DestVolume)
            set ReInit = YES
            set DestVolume     = $(Combo1Out)
            set DestVolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(DestVolume)))
            set MstoolsDir     = $(DestVolume)$(MSTOOLS)
        else
            set ReInit = NO
        endif
        goto destination

    else-ifstr(i) $(DLGEVENT) == "CONTINUE"
        set ReInit = NO
        LibraryProcedure IsFullPath, $(LIBHANDLE), CheckPathFullPathSpec $(EditTextOut)
        ifstr(i) $(IsFullPath) == "NO"
            shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String13)$(DestVolume)$(MSTOOLS)
            goto destination
        else
            GetDriveInPath Drive, $(EditTextOut)
            Ifcontains(i) $(Drive) in $(DestVolumeList)
                set DestVolume     = $(Drive)
                set DestVolumeFree = *($(DestVolumeFreeList), ~($(DestVolumeList), $(DestVolume)))
                set MstoolsDir     = $(EditTextOut)
		ifint $(DestVolumeFree) < $(MinToolsSize)
		    shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String14)
		    goto destination
		endif
            else
                shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "WARNING" $(String16)
                ifstr(i) $($R0) != STATUS_SUCCESSFUL
			goto destination
                else
                    ifstr(i) $($R1) == "OK"
			set DestVolume = $(Drive)
			set DestVolumeFree = $(MaxToolsSize)
			set MstoolsDir = $(EditTextOut)
                    else
                        set ReInit = NO
                        goto destination
                    endif
                endif
            endif
        endif

        ui pop 1
        goto mstooldirs

    else-ifstr(i) $(DLGEVENT) == "EXIT"

        set ReInit = NO
        shell "" QueryUserQuit
        ifstr(i) $($R1) == "OK"
            ui pop 1
            goto setupnotdone
        else
            goto destination
        endif
    else
        goto end
    endif


mstooldirs = +

    set MstoolsRoot = $(MstoolsDir)
    LibraryProcedure MstoolsDir, $(LIBHANDLE), AppendBackSlash $(MstoolsDir)
    ;
    ; First find all the destination directories for the tools
    ;

    set MstoolsPath    = $(MstoolsDir)bin
    set MstoolsLib     = $(MstoolsDir)lib
    set MstoolsInclude = $(MstoolsDir)h
    set MstoolsInit    = $(MstoolsDir)init
   
    set MfcLib	       = $(MstoolsDir)mfc\lib
    set MfcInclude     = $(MstoolsDir)mfc\include

    set MSTestInclude  = $(MstoolsDir)mstest\include
    set MSTestPath     = $(MstoolsDir)mstest

    set MSSetupInclude = $(MstoolsDir)mssetup\include
    set MSSetupLib     = $(MstoolsDir)mssetup\lib


    ;
    ; mstool install.  ask user for options on mstool install.
    ;

mstools = +
    ifstr(i) $(STF_INSTALL_MODE) == $(MinInteract)
       goto mstoolsinstall
    endif

    ifint $(DestVolumeFree) < $(MaxToolsSize)
        set DoToolsSamples   = $(NotChosen)
        set DoToolsHelp      = $(NotChosen)
        set DoRPC            = $(NotChosen)
        set DoPosix          = $(NotChosen)
        set DoMSSetup        = $(NotChosen)
        set DoMSTest         = $(NotChosen)
    endif

    set-sub FreeForOptional = $(DestVolumeFree) $(MinToolsSize)
    ifstr(i) $(FreeForOptional) == 0
        shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String15)
    endif

    read-syms MSToolsOptionsDlg$(STF_LANGUAGE)
    ui start "Options"
    ifstr(i) $(DLGEVENT) == "CONTINUE"
        set DoToolsSamples   = *($(CheckItemsOut), 1)
        set DoToolsHelp      = *($(CheckItemsOut), 2)
        set DoRPC            = *($(CheckItemsOut), 3)
        set DoPosix          = *($(CheckItemsOut), 4)
        set DoMSSetup        = *($(CheckItemsOut), 5)
        set DoMSTest         = *($(CheckItemsOut), 6)
        ui pop 1
        goto mstoolsinstall
    else-ifstr(i) $(DLGEVENT) == "EXIT"
        shell "" QueryUserQuit
        ifstr(i) $($R1) == "OK"
            ui pop 1
            goto setupnotdone
        else
            goto mstools
        endif
    else
        goto "end"
    endif

    ;
    ; build mstools copy list
    ;

mstoolsinstall	=+
    StartWait
    shell "subroutn.inf" PushBillboard STATUSDLG $(Billboard1)
    install Install-CopyToolsFiles
    shell "subroutn.inf" PopBillboard
    EndWait

finish = +

    ;
    ; first copy all the files over
    ;

    read-syms ProgressCopy$(STF_LANGUAGE)
    install Install-All-Files-Now
    ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_SUCCESS"
        goto dodbg
    else
        shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String4)
        goto setupnotdone
    endif

dodbg = +

    shell "subroutn.inf" DoAskSourceEx $(STF_SRCDIR) $(String19)
    ifint $($ShellCode) != $(!SHELL_CODE_OK)
        Debug-Output "shelling DoAskSource failed"
	shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String21)
        goto mstoolsconfig
    endif
    ifstr(i) $($R0) == STATUS_SUCCESSFUL
        set STF_SRCDIR = $($R1)
        ifstr(i) $($R2) != ""
            set DrivesToFree = >($(DrivesToFree), $($R2))
        endif
    else
	shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String21)
        goto mstoolsconfig
    endif

    set FileToCheck = $(STF_SRCDIR)"support\debug\i386\symbols\dll\advapi32.dbg"
    install Install-SeeIfFileIsPresent
    ifstr(i) $(STATUS) != "YES"
	shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "WARNING" $(String18)
	ifstr(i) $($R0) != STATUS_SUCCESSFUL
	    goto dbgfilecontinue
        else
	    ifstr(i) $($R1) == "OK"
		goto dodbg
	    else
		shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String21)
		goto mstoolsconfig
	    endif
        endif
    endif

dbgfilecontinue =+

    install Install-DBGFiles

    install Install-All-Files-Now
    ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_SUCCESS"
        goto mstoolsconfig
    else
        shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(String21)
    endif

mstoolsconfig=+
    read-syms EnvironmentVars
    detect    EnvironmentVars

    ;
    ; first initialize the variables which indicate whether new values are
    ; to be set for the variables or not
    ;
    ForListDo {Path, Lib, Include, Init}
        set FSet$($)Var = FALSE
    EndForListDo

    ;
    ; For the Path,Lib and Include variables see if we can append them
    ; onto the current variables
    ;

    ForListDo {Path,Lib, Include}
        set Var = $($)
        ifstr(i) $($(Var)EnvVar) == {}
            set $(Var)EnvVar = {$(Var), 0, $(!REG_VT_EXPAND_SZ), {$(Mstools$(Var))}}
            set FSet$(Var)Var = TRUE
        else
            set VarTitle   = *($($(Var)EnvVar), 2)
            set VarRegType = *($($(Var)EnvVar), 3)
            set VarValue   = *($($(Var)EnvVar), 4)
            shell "" AppendNewValueToEnvVar $(VarValue) $(Mstools$(Var))
            ifstr(i) $($R0) == STATUS_FAILED
                shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String6)
                goto setupnotdone
            endif
            ifstr(i) $($R1) == "TRUE"
                set FSet$(Var)Var = TRUE
                set $(Var)EnvVar = {$(Var), $(VarTitle), $(VarRegType), $($R2)}
            endif
        endif
    EndForListDo

    
    ;
    ; add the mssetup variables if mssetup is chosen
    ;

    ifstr(i) $(DoMSSetup) == $(Chosen)
        ForListDo {Include,Lib}
            set Var = $($)
            ifstr(i) $($(Var)EnvVar) == {}
                set $(Var)EnvVar = {$(Var), 0, $(!REG_VT_EXPAND_SZ), {$(MSSetup$(Var))}}
                set FSet$(Var)Var = TRUE
            else
                set VarTitle   = *($($(Var)EnvVar), 2)
                set VarRegType = *($($(Var)EnvVar), 3)
                set VarValue   = *($($(Var)EnvVar), 4)
                shell "" AppendNewValueToEnvVar $(VarValue) $(MSSetup$(Var))
                ifstr(i) $($R0) == STATUS_FAILED
                    shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String6)
                    goto setupnotdone
                endif
                ifstr(i) $($R1) == "TRUE"
                    set FSet$(Var)Var = TRUE
                    set $(Var)EnvVar = {$(Var), $(VarTitle), $(VarRegType), $($R2)}
                endif
            endif
        EndForListDo
    endif

    ;
    ; add the mstest variables if mstest is chosen
    ;

    ifstr(i) $(DoMSTest) == $(Chosen)
        ForListDo {Include,Path}
            set Var = $($)
            ifstr(i) $($(Var)EnvVar) == {}
                set $(Var)EnvVar = {$(Var), 0, $(!REG_VT_EXPAND_SZ), {$(MSTest$(Var))}}
                set FSet$(Var)Var = TRUE
            else
                set VarTitle   = *($($(Var)EnvVar), 2)
                set VarRegType = *($($(Var)EnvVar), 3)
                set VarValue   = *($($(Var)EnvVar), 4)
                shell "" AppendNewValueToEnvVar $(VarValue) $(MSTest$(Var))
                ifstr(i) $($R0) == STATUS_FAILED
                    shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String6)
                    goto setupnotdone
                endif
                ifstr(i) $($R1) == "TRUE"
                    set FSet$(Var)Var = TRUE
                    set $(Var)EnvVar = {$(Var), $(VarTitle), $(VarRegType), $($R2)}
                endif
            endif
        EndForListDo
    endif

    ;
    ; make cpu variable - STF_PLATFORM
    ;
    set FSetCpuVar = TRUE
    ifstr(i) $(!STF_PLATFORM) == $(!PlatformID_I386)
        set CpuEnvVar = {Cpu, 0, $(!REG_VT_SZ), i386}
    else-ifstr(i) $(!STF_PLATFORM) == $(!PlatformID_Alpha)
	set CpuEnvVar = {Cpu, 0, $(!REG_VT_SZ), ALPHA}
    else
        set CpuEnvVar = {Cpu, 0, $(!REG_VT_SZ), MIPS}
    endif

    ;
    ; make Mstools Root variable - MstoolsDir
    ;
    set FSetMstoolsRootVar = TRUE
    set MstoolsRootEnvVar = {Mstools, 0, $(!REG_VT_SZ), $(MstoolsRoot)}

    

    ;
    ; modify all the environment variables
    ;

    ForListDo {Lib, Include, Cpu, Path, MstoolsRoot}
        ;
        ; if the variable to set the variable is set

        ifstr(i) $(FSet$($)Var) == "TRUE"
            shell "" SetEnvironmentString $($($)EnvVar) $(PRIVILEGES)
            ifstr(i) $($R0) == STATUS_FAILED
                shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String7)
            endif
        endif
    EndForListDo

    install Install-MSTools-Groups

    ;
    ; modify the registry to use windbg instead of drwatson and clear auto 
    ;

    set KeyPath = { +
                   {SOFTWARE,		$(NoTitle),	$(MaskAllAccess)}, +
                   {Microsoft,          $(NoTitle),	$(MaskAllAccess)}, +
                   {"Windows NT",	$(NoTitle),	$(MaskAllAccess)}, +
		   {CurrentVersion,	$(NoTitle),	$(MaskAllAccess)}, +
     		   {AeDebug,            $(NoTitle),	$(MaskAllAccess)} +
		  }
    set DebugPath = $(MstoolsPath)"\windbg -p %ld -e %ld"

    set KeyValues = {{Debugger, $(NoTitle), $(!REG_VT_SZ), $(DebugPath)}}

    shell "" CreateKey $(!REG_H_LOCAL) $(KeyPath) $(KeyValues)
    CloseRegKey $($R1)

    set KeyPath = { +
                   {SOFTWARE,		$(NoTitle),	$(MaskAllAccess)}, +
                   {Microsoft,          $(NoTitle),	$(MaskAllAccess)}, +
                   {"Windows NT",	$(NoTitle),	$(MaskAllAccess)}, +
		   {CurrentVersion,	$(NoTitle),	$(MaskAllAccess)}, +
     		   {AeDebug,            $(NoTitle),	$(MaskAllAccess)} +
		  }

    set KeyValues = {{Auto, $(NoTitle), $(!REG_VT_SZ), 0}}

    shell "" CreateKey $(!REG_H_LOCAL) $(KeyPath) $(KeyValues)
    CloseRegKey $($R1)

setupdone=+
    set Exit_Code = $(!SETUP_ERROR_SUCCESS)
    read-syms SetupDoneDlg$(STF_LANGUAGE)
    EndWait
    ui start "Done"
    ifstr(i) $(DLGEVENT) == "CONTINUE"
        ui pop 1
        goto end
    else
        goto end
    endif

setupnotdone=+
    read-syms SetupNotDoneDlg$(STF_LANGUAGE)
    EndWait
    ui start "NotDone"
    ifstr(i) $(DLGEVENT) == "CONTINUE"
        ui pop 1
        goto end
    else
        goto end
    endif

end = +
    install   FreeSetupLibrary
    exit



;*****************************************************************
;                                                                *
;         INSTALLATION SUPPORT ROUTINES                          *
;                                                                *
;*****************************************************************

;-----------------------------------------------------------------------
; ROUTINE:      QueryUserQuit
;
; DESCRIPTION:  This routine queries whether the user wants to quit setup
;
; INPUTS:       None
;
; OUTPUTS:      $R0: Status:     STATUS_SUCCESSFUL |
;                                STATUS_FAILED
;
;               $R1: UserAction: OK | CANCEL
;
;------------------------------------------------------------------------

[QueryUserQuit]

    set Status     = STATUS_FAILED
    set UserAction = CANCEL

    ;
    ; read in quit message
    ;
    read-syms ExitWarningDlg$(!STF_LANGUAGE)
    ui start "ExitWarning"
    ifstr(i) $(DLGEVENT) == "YES"
        set Status     = STATUS_SUCCESSFUL
        set UserAction = "OK"

    else-ifstr(i) $(DLGEVENT) == "NO"
        set Status     = STATUS_SUCCESSFUL
        set UserAction = "CANCEL"
    else
    endif

fin_QueryUserQuit = +
    Return $(Status) $(UserAction)


;----------------------------------------------
; EXIT WINDOWS NT TOOLS SETUP WARNING
;----------------------------------------------

[ExitWarningDlgENG]
    DlgType      = "MessageBox"
    STF_MB_TITLE = "Exit Win32 SDK Setup"
    STF_MB_TEXT  = "Win32 SDK isn't correctly installed.  Are you "+
                   "sure you want to exit Setup?"
    STF_MB_TYPE  = 3
    STF_MB_ICON  = 5
    STF_MB_DEF   = 2




;-----------------------------------------------------------------------
; ROUTINE:      AppendNewValueToEnvVar
;
; DESCRIPTION:  Looks at the existing value of an environment variable
;               and appends a new value if it is not already present
;
; INPUTS:       $0:  OldValueList
;               $1:  NewValue
;
; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
;                            STATUS_FAILED
;
;               $R1: Changed?
;               $R2: NewValueList
;
;------------------------------------------------------------------------

[AppendNewValueToEnvVar]
    ;
    set Status       = STATUS_FAILED
    set NewValueList = {}
    set Changed      = TRUE
    ;
    set Error = NO
    ForListDo $($0)
        ifstr(i) $(Error) == NO
            ifstr(i) $(Changed) == TRUE
                 LibraryProcedure ExpandedValue, $(!LIBHANDLE), ExpandSz $($)
                 ifstr(i) $(ExpandedValue) == "ERROR"
                     set Error = YES
                 else-ifstr(i) $(ExpandedValue) == $($1)
                     set Changed = FALSE
                 endif
            endif
        endif
    EndForListDo

    ifstr(i) $(Error) == "YES"
        goto finish_append
    endif

    set Status = STATUS_SUCCESSFUL
    ifstr(i) $(Changed) == TRUE
       set NewValueList = >($($0), $($1))
    endif

finish_append = +
    return $(Status) $(Changed) $(NewValueList)

;-----------------------------------------------------------------------
; ROUTINE:      PrependNewValueToEnvVar
;
; DESCRIPTION:  Looks at the existing value of an environment variable
;               and prepends a new value if it is not already present
;
; INPUTS:       $0:  OldValueList
;               $1:  NewValue
;
; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
;                            STATUS_FAILED
;
;               $R1: Changed?
;               $R2: NewValueList
;
;------------------------------------------------------------------------

[PrependNewValueToEnvVar]
    ;
    set Status       = STATUS_FAILED
    set NewValueList = {}
    set Changed      = TRUE
    ;
    set Error = NO
    ForListDo $($0)
        ifstr(i) $(Error) == NO
            ifstr(i) $(Changed) == TRUE
                 LibraryProcedure ExpandedValue, $(!LIBHANDLE), ExpandSz $($)
                 ifstr(i) $(ExpandedValue) == "ERROR"
                     set Error = YES
                 else-ifstr(i) $(ExpandedValue) == $($1)
                     set Changed = FALSE
                 endif
            endif
        endif
    EndForListDo

    ifstr(i) $(Error) == "YES"
        goto finish_prepend
    endif

    set Status = STATUS_SUCCESSFUL
    ifstr(i) $(Changed) == TRUE
       set NewValueList = $($1)
       ForListDo $($0)
           set NewValueList = >($(NewValueList), $($))
       EndForListDo
    endif

finish_prepend = +
    return $(Status) $(Changed) $(NewValueList)


;-----------------------------------------------------------------------
; ROUTINE:      SetEnvironmentString
;
; DESCRIPTION:  Set the value for a user environment string
;
; INPUTS:       $0:  VarList
;               $1:  Privileges
;
; OUTPUTS:      $R0: Status: STATUS_SUCCESSFUL
;                            STATUS_FAILED
;
;
;------------------------------------------------------------------------

[SetEnvironmentString]
    ;
    ;
    set Status = STATUS_FAILED

    set Var          = *($($0), 1)
    set VarTitle     = *($($0), 2)
    set VarRegType   = *($($0), 3)
    set VarValueList = *($($0), 4)

    set VarValue = ""
    ForListDo $(VarValueList)
       ifstr(i) $(VarValue) != ""
           set VarValue = $(VarValue)";"$($)
       else
           set VarValue = $($)
       endif
    EndForListDo

    LibraryProcedure STATUS, $(!LIBHANDLE), SetEnvVar $($1) $(Var) $(VarTitle) $(VarRegType) $(VarValue)
    ifstr(i) $(STATUS) == "ERROR"
       goto finish_setenvstr
    endif
    set Status = STATUS_SUCCESSFUL

finish_setenvstr = +
    Return $(Status)

;*****************************************************************
;                                                                *
;         INSTALLATION SUPPORT ROUTINES                          *
;                                                                *
;*****************************************************************

[Install-MSTools-Groups]
    
    ifstr(i) $(PRIVILEGES) == "SYSTEM"
	set Common = "Common"
    else
        set Common = ""
    endif

    set ToolsGroup = "Win32 SDK Tools"
    Create$(Common)ProgManGroup $(ToolsGroup) ""
    Show$(Common)ProgManGroup   $(ToolsGroup), 1

    ifstr(i) $(STF_PLATFORM) == $(PlatformID_Alpha)
        Create$(Common)ProgmanItem  $(ToolsGroup) , "AXP Notes"        "notepad "$(MstoolsPath)"\axpnotes.txt"       ""	    0
    endif

    Create$(Common)ProgmanItem  $(ToolsGroup) , "M Editor"        $(MstoolsPath)"\mep"                               $(MstoolsPath)"\m.ico"	    0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Dialog Editor"   $(MstoolsPath)"\dlgedit"                           ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Image Editor"    $(MstoolsPath)"\imagedit"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Spy"             $(MstoolsPath)"\spy"                               ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "DDESpy"          $(MstoolsPath)"\ddespy"                            ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "WinDbg"          $(MstoolsPath)"\windbg"                            ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "WinDbg Remote"   $(MstoolsPath)"\windbgrm"                            ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Zoom Utility"    $(MstoolsPath)"\zoomin"                            ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Font Editor"     $(MstoolsPath)"\fontedit"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "PView"           $(MstoolsPath)"\pview"                             ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "PortTool"        $(MstoolsPath)"\porttool"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Process Walker"        $(MstoolsPath)"\pwalk"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "WinDiff"        $(MstoolsPath)"\windiff"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "PStat"         "cmd /k "$(MstoolsPath)"\pstat"                             "progman.exe"  40
    Create$(Common)ProgmanItem  $(ToolsGroup) , "WinPerf"         $(MstoolsPath)"\wperf"                          ""              0
    Create$(Common)ProgmanItem  $(ToolsGroup) , "Unicode Notepad" $(MstoolsPath)"\unipad "$(MstoolsPath)"\unicode.utf"       ""              0

    ifstr(i) $(DoToolsHelp) == $(Chosen)
        set HelpGroup = "Win32 SDK Online References"
	Create$(Common)ProgManGroup $(HelpGroup) ""
	Show$(Common)ProgManGroup   $(HelpGroup), 1

        Create$(Common)ProgmanItem  $(HelpGroup) , "Win32 API Reference"  "winhlp32 "$(MstoolsPath)"\api32wh.hlp"    ""              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "C/C++ Lang/Lib Reference" "winhlp32 "$(MstoolsPath)"\msc.hlp"        ""              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Programming Techniques" "winhlp32 "$(MstoolsPath)"\pt.hlp"  $(MstoolsPath)"\sdkdoc.ico"              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Win32s Programmer's Reference" "winhlp32 "$(MstoolsPath)"\win32s.hlp" $(MstoolsPath)"\sdkdoc.ico"              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Tools Guide" "winhlp32 "$(MstoolsPath)"\toolsbk.hlp" $(MstoolsPath)"\sdkdoc.ico"              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Windows Sockets Reference"	  "winhlp32 "$(MstoolsPath)"\winsock.hlp"   $(MstoolsPath)"\winsock.ico"		    0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Tools QuickRef"         "winhlp32 "$(MstoolsPath)"\tools.hlp"    ""              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Building Apps/DLLs QuickRef" "winhlp32 "$(MstoolsPath)"\build.hlp" ""              0

        ifstr(i) $(DoToolsSamples) == $(Chosen)
            Create$(Common)ProgmanItem  $(HelpGroup) , "Samples QuickRef"         "winhlp32 "$(MstoolsPath)"\samples.hlp"    ""              0
        endif

        Create$(Common)ProgmanItem  $(HelpGroup) , "Win32 SDK Knowledge Base"         "winhlp32 "$(MstoolsPath)"\win32kb.hlp"    ""              0
        Create$(Common)ProgmanItem  $(HelpGroup) , "Storage Class Modifiers QuickRef" "winhlp32 "$(MstoolsPath)"\modif.hlp" ""              0

	ifstr(i) $(DoRPC) == $(Chosen)
            Create$(Common)ProgmanItem  $(HelpGroup) , "RPC Language QuickRef"	  "winhlp32 "$(MstoolsPath)"\midl10wh.hlp"   ""		    0
	endif

        Show$(Common)ProgManGroup   $(HelpGroup), 6
    endif

    Show$(Common)ProgManGroup   $(ToolsGroup), 6
    exit




;************************************************************************
;                                                                       *
;  MSTOOLS SUPPORT                                                      *
;                                                                       *
;************************************************************************

[Install-CopyToolsFiles]
    set STF_VITAL = ""

    ;
    ; 1. MSTOOLS - always done
    ;

    CreateDir  $(MstoolsDir)
    CreateDir  $(MstoolsInclude)
    CreateDir  $(MstoolsInclude)\sys
    CreateDir  $(MstoolsPath)
    CreateDir  $(MstoolsLib)
    CreateDir  $(MstoolsInit)

    AddSectionFilesToCopyList Files-mstools                          $(STF_SRCDIR)mstools                          $(MstoolsDir)
    AddSectionFilesToCopyList Files-mstools-bin                      $(STF_SRCDIR)mstools\bin                      $(MstoolsPath)
    AddSectionFilesToCopyList Files-mstools-bin-$(STF_PLATFORM)      $(STF_SRCDIR)mstools\bin\$(STF_PLATFORM)      $(MstoolsPath)
    AddSectionFilesToCopyList Files-mstools-h                        $(STF_SRCDIR)mstools\h                        $(MstoolsInclude)
    AddSectionFilesToCopyList Files-mstools-h-$(STF_PLATFORM)        $(STF_SRCDIR)mstools\h\$(STF_PLATFORM)        $(MstoolsInclude)
    AddSectionFilesToCopyList Files-mstools-h-sys                    $(STF_SRCDIR)mstools\h\sys                    $(MstoolsInclude)\sys
    AddSectionFilesToCopyList Files-mstools-init                     $(STF_SRCDIR)mstools\init                     $(MstoolsInit)
    AddSectionFilesToCopyList Files-mstools-lib-$(STF_PLATFORM)      $(STF_SRCDIR)mstools\lib\$(STF_PLATFORM)      $(MstoolsLib)


    ;
    ; 2. Help files - conditional
    ;

    ifstr(i) $(!DoToolsHelp)  == $(!Chosen)
       AddSectionFilesToCopyList Files-mstools-help $(STF_SRCDIR)mstools\help $(MstoolsPath)
       AddSectionFilesToCopyList Files-mstools-help-$(STF_PLATFORM) $(STF_SRCDIR)mstools\help\$(STF_PLATFORM) $(MstoolsPath)
       AddSectionFilesToCopyList Files-mstools-help-qh $(STF_SRCDIR)mstools\help\qh $(MstoolsPath)
       AddSectionFilesToCopyList Files-mstools-help-index $(STF_SRCDIR)mstools\help $(MstoolsPath)


       ifstr(i) $(!DoToolsSamples) == $(!Chosen)
           AddSectionFilesToCopyList Files-mstools-samples-help $(STF_SRCDIR)mstools\help $(MstoolsPath)
       endif 

       ifstr(i) $(DoRPC) == $(Chosen) 
	   AddSectionFilesToCopyList Files-mstools-rpc-help $(STF_SRCDIR)mstools\help $(MstoolsPath)
       endif

    endif

    ;
    ; 3. Mstools samples - conditional
    ;


    ifstr(i) $(!DoToolsSamples) == $(!Chosen)
        set SampleList =  {            +
                            comm      ,+
                            console   ,+
                            congui    ,+
			    cdtest    ,+
                            deb       ,+
                            dyndlg    ,+
                            filer     ,+
                            floppy    ,+
                            gridfont  ,+
                            fontview  ,+
                            gdidemo   ,+
                            generic   ,+
                            input     ,+
			    iostutor  ,+
                            mapi      ,+
                            mcitest   ,+
                            memory    ,+
                            midimon   ,+
                            mltithrd  ,+
                            multipad  ,+
                            mypal     ,+
                            regmpad   ,+
                            ttfonts   ,+
                            pdc       ,+
                            playsnd   ,+
                            plgblt    ,+
                            printer   ,+
                            registry  ,+
                            select    ,+
                            service   ,+
                            showdib   ,+
                            sidcln    ,+
                            simple    ,+
                            spincube  ,+
			    takeown   ,+
			    wdbgexts  ,+
			    wsock     ,+
                            wxform    +
                          }

        ;
        ; First copy all the files in the samples directory
        ;

        CreateDir $(MstoolsDir)samples
        AddSectionFilesToCopyList Files-mstools-samples $(STF_SRCDIR)mstools\samples $(MstoolsDir)samples

        ;
        ; Then copy all the files in the various directories at the sample level
        ;

        ForListDo $(SampleList)
            CreateDir $(MstoolsDir)samples\$($)
            AddSectionFilesToCopyList Files-mstools-samples-$($) $(STF_SRCDIR)mstools\samples\$($) $(MstoolsDir)samples\$($)
        EndForListDo

        ;
        ; Lastly handle mfedit, ole, rpc & ddeml separately because this has multiple level subdirs
        ;

        ; 0. mfedit

        CreateDir $(MstoolsDir)samples\mfedit
        CreateDir $(MstoolsDir)samples\mfedit\rsc

        AddSectionFilesToCopyList Files-mstools-samples-mfedit          $(STF_SRCDIR)mstools\samples\mfedit         $(MstoolsDir)samples\mfedit
        AddSectionFilesToCopyList Files-mstools-samples-mfedit-rsc      $(STF_SRCDIR)mstools\samples\mfedit\rsc         $(MstoolsDir)samples\mfedit\rsc

        ; 0.1 mandel

        CreateDir $(MstoolsDir)samples\mandel
        CreateDir $(MstoolsDir)samples\mandel\rsc

        AddSectionFilesToCopyList Files-mstools-samples-mandel          $(STF_SRCDIR)mstools\samples\mandel         $(MstoolsDir)samples\mandel
        AddSectionFilesToCopyList Files-mstools-samples-mandel-rsc      $(STF_SRCDIR)mstools\samples\mandel\rsc         $(MstoolsDir)samples\mandel\rsc

        ; 1. ole

        CreateDir $(MstoolsDir)samples\ole
        CreateDir $(MstoolsDir)samples\ole\clidemo
        CreateDir $(MstoolsDir)samples\ole\srvrdemo

        AddSectionFilesToCopyList Files-mstools-samples-ole-clidemo          $(STF_SRCDIR)mstools\samples\ole\clidemo         $(MstoolsDir)samples\ole\clidemo
        AddSectionFilesToCopyList Files-mstools-samples-ole-srvrdemo         $(STF_SRCDIR)mstools\samples\ole\srvrdemo        $(MstoolsDir)samples\ole\srvrdemo

        ; 1.5 namepipe

        CreateDir $(MstoolsDir)samples\namepipe
        CreateDir $(MstoolsDir)samples\namepipe\npclient
        CreateDir $(MstoolsDir)samples\namepipe\npserver

        AddSectionFilesToCopyList Files-mstools-samples-namepipe-npclient         $(STF_SRCDIR)mstools\samples\namepipe\npclient        $(MstoolsDir)samples\namepipe\npclient
        AddSectionFilesToCopyList Files-mstools-samples-namepipe-npserver         $(STF_SRCDIR)mstools\samples\namepipe\npserver        $(MstoolsDir)samples\namepipe\npserver


        ; 2. ddeml

        CreateDir $(MstoolsDir)samples\ddeml
        CreateDir $(MstoolsDir)samples\ddeml\client
        CreateDir $(MstoolsDir)samples\ddeml\clock
        CreateDir $(MstoolsDir)samples\ddeml\ddemo
        CreateDir $(MstoolsDir)samples\ddeml\ddeprog
        CreateDir $(MstoolsDir)samples\ddeml\server
        CreateDir $(MstoolsDir)samples\ddeml\ddeinst

        AddSectionFilesToCopyList Files-mstools-samples-ddeml-client         $(STF_SRCDIR)mstools\samples\ddeml\client        $(MstoolsDir)samples\ddeml\client
        AddSectionFilesToCopyList Files-mstools-samples-ddeml-clock          $(STF_SRCDIR)mstools\samples\ddeml\clock         $(MstoolsDir)samples\ddeml\clock
        AddSectionFilesToCopyList Files-mstools-samples-ddeml-ddemo          $(STF_SRCDIR)mstools\samples\ddeml\ddemo         $(MstoolsDir)samples\ddeml\ddemo
        AddSectionFilesToCopyList Files-mstools-samples-ddeml-ddeinst        $(STF_SRCDIR)mstools\samples\ddeml\ddeinst       $(MstoolsDir)samples\ddeml\ddeinst
        AddSectionFilesToCopyList Files-mstools-samples-ddeml-ddeprog        $(STF_SRCDIR)mstools\samples\ddeml\ddeprog       $(MstoolsDir)samples\ddeml\ddeprog
        AddSectionFilesToCopyList Files-mstools-samples-ddeml-server         $(STF_SRCDIR)mstools\samples\ddeml\server        $(MstoolsDir)samples\ddeml\server

        ; 5. mazelords

        CreateDir $(MstoolsDir)samples\mazelord
        CreateDir $(MstoolsDir)samples\mazelord\rsc

        AddSectionFilesToCopyList Files-mstools-samples-mazelord        $(STF_SRCDIR)mstools\samples\mazelord       $(MstoolsDir)samples\mazelord
        AddSectionFilesToCopyList Files-mstools-samples-mazelord-rsc   $(STF_SRCDIR)mstools\samples\mazelord\rsc  $(MstoolsDir)samples\mazelord\rsc

        ; 6. sdktools

	CreateDir $(MstoolsDir)samples\sdktools

        CreateDir $(MstoolsDir)samples\sdktools\rshell
        CreateDir $(MstoolsDir)samples\sdktools\rshell\client
        CreateDir $(MstoolsDir)samples\sdktools\rshell\doscli
        CreateDir $(MstoolsDir)samples\sdktools\rshell\server

        AddSectionFilesToCopyList Files-mstools-samples-sdktools-rshell-client $(STF_SRCDIR)mstools\samples\sdktools\rshell\client       $(MstoolsDir)samples\sdktools\rshell\client
        AddSectionFilesToCopyList Files-mstools-samples-sdktools-rshell-doscli        $(STF_SRCDIR)mstools\samples\sdktools\rshell\doscli       $(MstoolsDir)samples\sdktools\rshell\doscli
        AddSectionFilesToCopyList Files-mstools-samples-sdktools-rshell-server        $(STF_SRCDIR)mstools\samples\sdktools\rshell\server       $(MstoolsDir)samples\sdktools\rshell\server

	
        set SDKToolList =  {              +
                             	aniedit  ,+
                             	ddespy   ,+
                             	dlgedit  ,+
                             	fontedit ,+
                             	imagedit ,+
                             	mc       ,+
                             	perfmon  ,+
				spy	 ,+
				netwatch ,+
				porttool ,+
				pviewer  ,+
				remote   ,+
				uconvert ,+
				winat    ,+
				windiff  ,+
				walker   ,+
				zoomin    +
			   }	


        ForListDo $(SDKToolList)
            CreateDir $(MstoolsDir)samples\sdktools\$($)
            AddSectionFilesToCopyList Files-mstools-samples-sdktools-$($) $(STF_SRCDIR)mstools\samples\sdktools\$($) $(MstoolsDir)samples\sdktools\$($)
        EndForListDo

        CreateDir $(MstoolsDir)samples\sdktools\dlgedit\res
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-dlgedit-res $(STF_SRCDIR)mstools\samples\sdktools\dlgedit\res $(MstoolsDir)samples\sdktools\dlgedit\res
        CreateDir $(MstoolsDir)samples\sdktools\imagedit\res
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-imagedit-res $(STF_SRCDIR)mstools\samples\sdktools\imagedit\res $(MstoolsDir)samples\sdktools\imagedit\res
        CreateDir $(MstoolsDir)samples\sdktools\spy\app
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-spy-app $(STF_SRCDIR)mstools\samples\sdktools\spy\app $(MstoolsDir)samples\sdktools\spy\app
        CreateDir $(MstoolsDir)samples\sdktools\spy\dll
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-spy-dll $(STF_SRCDIR)mstools\samples\sdktools\spy\dll $(MstoolsDir)samples\sdktools\spy\dll

	CreateDir $(MstoolsDir)samples\sdktools\image
	CreateDir $(MstoolsDir)samples\sdktools\image\imagehlp
	CreateDir $(MstoolsDir)samples\sdktools\image\include
	CreateDir $(MstoolsDir)samples\sdktools\image\symedit
	CreateDir $(MstoolsDir)samples\sdktools\image\drwatson
	CreateDir $(MstoolsDir)samples\sdktools\image\drwatson\include

	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-include	$(STF_SRCDIR)mstools\samples\sdktools\image\include	$(MstoolsDir)samples\sdktools\image\include
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-imagehlp	$(STF_SRCDIR)mstools\samples\sdktools\image\imagehlp	$(MstoolsDir)samples\sdktools\image\imagehlp
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-imagehlp-$(STF_PLATFORM)	$(STF_SRCDIR)mstools\samples\sdktools\image\imagehlp\$(STF_PLATFORM)	$(MstoolsDir)samples\sdktools\image\imagehlp
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-drwatson	$(STF_SRCDIR)mstools\samples\sdktools\image\drwatson	$(MstoolsDir)samples\sdktools\image\drwatson
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-drwatson-include	$(STF_SRCDIR)mstools\samples\sdktools\image\drwatson\include	$(MstoolsDir)samples\sdktools\image\drwatson\include
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-drwatson-$(STF_PLATFORM)	$(STF_SRCDIR)mstools\samples\sdktools\image\drwatson\$(STF_PLATFORM)	$(MstoolsDir)samples\sdktools\image\drwatson
	AddSectionFilesToCopyList Files-mstools-samples-sdktools-image-symedit	$(STF_SRCDIR)mstools\samples\sdktools\image\symedit	$(MstoolsDir)samples\sdktools\image\symedit

	CreateDir $(MstoolsDir)samples\snmp
	CreateDir $(MstoolsDir)samples\snmp\testdll
	CreateDir $(MstoolsDir)samples\snmp\snmputil

	AddSectionFilesToCopyList Files-mstools-samples-snmp-testdll  $(STF_SRCDIR)mstools\samples\snmp\testdll  $(MstoolsDir)samples\snmp\testdll
	AddSectionFilesToCopyList Files-mstools-samples-snmp-snmputil $(STF_SRCDIR)mstools\samples\snmp\snmputil $(MstoolsDir)samples\snmp\snmputil

        ; 7. Large Integer

        CreateDir $(MstoolsDir)samples\largeint
        CreateDir $(MstoolsDir)samples\largeint\sample
        
        AddSectionFilesToCopyList Files-mstools-samples-largeint                 $(STF_SRCDIR)mstools\samples\largeint                 $(MstoolsDir)samples\largeint
        AddSectionFilesToCopyList Files-mstools-samples-largeint-sample          $(STF_SRCDIR)mstools\samples\largeint\sample          $(MstoolsDir)samples\largeint\sample
        AddSectionFilesToCopyList Files-mstools-samples-largeint-$(STF_PLATFORM) $(STF_SRCDIR)mstools\samples\largeint\$(STF_PLATFORM) $(MstoolsDir)samples\largeint

	; 8. NWLINK
	CreateDir $(MstoolsDir)samples\nwlink
	CreateDir $(MstoolsDir)samples\nwlink\connect
	CreateDir $(MstoolsDir)samples\nwlink\dgrecv
	CreateDir $(MstoolsDir)samples\nwlink\dgsend
	CreateDir $(MstoolsDir)samples\nwlink\listen
	CreateDir $(MstoolsDir)samples\nwlink\listen\block
	CreateDir $(MstoolsDir)samples\nwlink\listen\nonblock
	CreateDir $(MstoolsDir)samples\nwlink\ping
	CreateDir $(MstoolsDir)samples\nwlink\ping\dos
	CreateDir $(MstoolsDir)samples\nwlink\testlib

	AddSectionFilesToCopyList Files-mstools-samples-nwlink-connect		$(STF_SRCDIR)mstools\samples\nwlink\connect		$(MstoolsDir)samples\nwlink\connect
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-dgrecv		$(STF_SRCDIR)mstools\samples\nwlink\dgrecv		$(MstoolsDir)samples\nwlink\dgrecv
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-dgsend		$(STF_SRCDIR)mstools\samples\nwlink\dgsend		$(MstoolsDir)samples\nwlink\dgsend
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-listen-block	$(STF_SRCDIR)mstools\samples\nwlink\listen\block	$(MstoolsDir)samples\nwlink\listen\block
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-listen-nonblock	$(STF_SRCDIR)mstools\samples\nwlink\listen\nonblock	$(MstoolsDir)samples\nwlink\listen\nonblock
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-ping		$(STF_SRCDIR)mstools\samples\nwlink\ping		$(MstoolsDir)samples\nwlink\ping
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-ping-dos	$(STF_SRCDIR)mstools\samples\nwlink\ping\dos	$(MstoolsDir)samples\nwlink\ping\dos
	AddSectionFilesToCopyList Files-mstools-samples-nwlink-testlib		$(STF_SRCDIR)mstools\samples\nwlink\testlib		$(MstoolsDir)samples\nwlink\testlib
    endif

    ;
    ; RPC Files - conditional
    ;
    
    ifstr(i) $(DoRPC) == $(Chosen)

	CreateDir $(MstoolsDir)samples
        CreateDir $(MstoolsDir)samples\rpc
        CreateDir $(MstoolsDir)samples\rpc\callback
        CreateDir $(MstoolsDir)samples\rpc\data
        CreateDir $(MstoolsDir)samples\rpc\data\dunion
        CreateDir $(MstoolsDir)samples\rpc\data\inout
        CreateDir $(MstoolsDir)samples\rpc\data\xmit
        CreateDir $(MstoolsDir)samples\rpc\dict
        CreateDir $(MstoolsDir)samples\rpc\doctor
        CreateDir $(MstoolsDir)samples\rpc\handles
        CreateDir $(MstoolsDir)samples\rpc\handles\auto
        CreateDir $(MstoolsDir)samples\rpc\handles\cxhndl
        CreateDir $(MstoolsDir)samples\rpc\handles\usrdef
        CreateDir $(MstoolsDir)samples\rpc\hello
        CreateDir $(MstoolsDir)samples\rpc\mandel
        CreateDir $(MstoolsDir)samples\rpc\ns
        CreateDir $(MstoolsDir)samples\rpc\ns\cds
        CreateDir $(MstoolsDir)samples\rpc\ns\nhello
        CreateDir $(MstoolsDir)samples\rpc\whello
        CreateDir $(MstoolsDir)samples\rpc\yield
        CreateDir $(MstoolsDir)samples\rpc\cluuid

        AddSectionFilesToCopyList Files-mstools-samples-rpc                  $(STF_SRCDIR)mstools\samples\rpc                 $(MstoolsDir)samples\rpc
        AddSectionFilesToCopyList Files-mstools-samples-rpc-callback         $(STF_SRCDIR)mstools\samples\rpc\callback        $(MstoolsDir)samples\rpc\callback
        AddSectionFilesToCopyList Files-mstools-samples-rpc-data-dunion      $(STF_SRCDIR)mstools\samples\rpc\data\dunion     $(MstoolsDir)samples\rpc\data\dunion
        AddSectionFilesToCopyList Files-mstools-samples-rpc-data-inout       $(STF_SRCDIR)mstools\samples\rpc\data\inout      $(MstoolsDir)samples\rpc\data\inout
        AddSectionFilesToCopyList Files-mstools-samples-rpc-data-xmit        $(STF_SRCDIR)mstools\samples\rpc\data\xmit       $(MstoolsDir)samples\rpc\data\xmit
        AddSectionFilesToCopyList Files-mstools-samples-rpc-dict           $(STF_SRCDIR)mstools\samples\rpc\dict          $(MstoolsDir)samples\rpc\dict
        AddSectionFilesToCopyList Files-mstools-samples-rpc-doctor           $(STF_SRCDIR)mstools\samples\rpc\doctor          $(MstoolsDir)samples\rpc\doctor
        AddSectionFilesToCopyList Files-mstools-samples-rpc-handles-auto     $(STF_SRCDIR)mstools\samples\rpc\handles\auto    $(MstoolsDir)samples\rpc\handles\auto
        AddSectionFilesToCopyList Files-mstools-samples-rpc-handles-cxhndl   $(STF_SRCDIR)mstools\samples\rpc\handles\cxhndl  $(MstoolsDir)samples\rpc\handles\cxhndl
        AddSectionFilesToCopyList Files-mstools-samples-rpc-handles-usrdef   $(STF_SRCDIR)mstools\samples\rpc\handles\usrdef  $(MstoolsDir)samples\rpc\handles\usrdef
        AddSectionFilesToCopyList Files-mstools-samples-rpc-hello            $(STF_SRCDIR)mstools\samples\rpc\hello           $(MstoolsDir)samples\rpc\hello
        AddSectionFilesToCopyList Files-mstools-samples-rpc-mandel           $(STF_SRCDIR)mstools\samples\rpc\mandel          $(MstoolsDir)samples\rpc\mandel
        AddSectionFilesToCopyList Files-mstools-samples-rpc-ns-cds           $(STF_SRCDIR)mstools\samples\rpc\ns\cds          $(MstoolsDir)samples\rpc\ns\cds
        AddSectionFilesToCopyList Files-mstools-samples-rpc-ns-nhello        $(STF_SRCDIR)mstools\samples\rpc\ns\nhello       $(MstoolsDir)samples\rpc\ns\nhello
        AddSectionFilesToCopyList Files-mstools-samples-rpc-whello           $(STF_SRCDIR)mstools\samples\rpc\whello          $(MstoolsDir)samples\rpc\whello
        AddSectionFilesToCopyList Files-mstools-samples-rpc-yield            $(STF_SRCDIR)mstools\samples\rpc\yield           $(MstoolsDir)samples\rpc\yield
        AddSectionFilesToCopyList Files-mstools-samples-rpc-cluuid            $(STF_SRCDIR)mstools\samples\rpc\cluuid           $(MstoolsDir)samples\rpc\cluuid
    endif

    ;
    ; 4 POSIX - optional
    ;

    ifstr(i) $(DoPosix) == $(Chosen)

	CreateDir $(MstoolsDir)posix
	CreateDir $(MstoolsDir)posix\h
	CreateDir $(MstoolsDir)posix\h\sys
	CreateDir $(MstoolsDir)posix\lib
	CreateDir $(MstoolsDir)posix\samples
	CreateDir $(MstoolsDir)posix\samples\psxarc

	AddSectionFilesToCopyList Files-mstools-posix		$(STF_SRCDIR)mstools\posix	$(MstoolsDir)posix
	AddSectionFilesToCopyList Files-mstools-posix-h			$(STF_SRCDIR)mstools\posix\h			$(MstoolsDir)posix\h
	AddSectionFilesToCopyList Files-mstools-posix-h-sys		$(STF_SRCDIR)mstools\posix\h\sys		$(MstoolsDir)posix\h\sys
	AddSectionFilesToCopyList Files-mstools-posix-lib-$(STF_PLATFORM)	$(STF_SRCDIR)mstools\posix\lib\$(STF_PLATFORM)		$(MstoolsDir)posix\lib
	AddSectionFilesToCopyList Files-mstools-posix-samples-psxarc	$(STF_SRCDIR)mstools\posix\samples\psxarc	$(MstoolsDir)posix\samples\psxarc
	
    endif

    ;
    ; 5. Microsoft Setup Toolkit - optional
    ;

    ifstr(i) $(DoMSSetup) == $(Chosen)
	CreateDir $(MstoolsDir)mssetup
	CreateDir $(MstoolsDir)mssetup\bin
	CreateDir $(MstoolsDir)mssetup\bldcui
	CreateDir $(MstoolsDir)mssetup\disklay
	CreateDir $(MstoolsDir)mssetup\include
	CreateDir $(MstoolsDir)mssetup\intldll
	CreateDir $(MstoolsDir)mssetup\intldll\setupexe
	CreateDir $(MstoolsDir)mssetup\lib
	CreateDir $(MstoolsDir)mssetup\source
	CreateDir $(MstoolsDir)mssetup\sample

	AddSectionFilesToCopyList Files-mstools-mssetup			$(STF_SRCDIR)mstools\mssetup			$(MstoolsDir)mssetup
	AddSectionFilesToCopyList Files-mstools-mssetup-bin-$(STF_PLATFORM)		$(STF_SRCDIR)mstools\mssetup\bin\$(STF_PLATFORM)		$(MstoolsDir)mssetup\bin
	AddSectionFilesToCopyList Files-mstools-mssetup-bldcui		$(STF_SRCDIR)mstools\mssetup\bldcui		$(MstoolsDir)mssetup\bldcui
	AddSectionFilesToCopyList Files-mstools-mssetup-disklay		$(STF_SRCDIR)mstools\mssetup\disklay		$(MstoolsDir)mssetup\disklay
	AddSectionFilesToCopyList Files-mstools-mssetup-disklay-$(STF_PLATFORM)		$(STF_SRCDIR)mstools\mssetup\disklay\$(STF_PLATFORM)		$(MstoolsDir)mssetup\disklay
	AddSectionFilesToCopyList Files-mstools-mssetup-include		$(STF_SRCDIR)mstools\mssetup\include		$(MstoolsDir)mssetup\include
	AddSectionFilesToCopyList Files-mstools-mssetup-intldll		$(STF_SRCDIR)mstools\mssetup\intldll		$(MstoolsDir)mssetup\intldll
	AddSectionFilesToCopyList Files-mstools-mssetup-intldll-setupexe		$(STF_SRCDIR)mstools\mssetup\intldll\setupexe		$(MstoolsDir)mssetup\intldll\setupexe
	AddSectionFilesToCopyList Files-mstools-mssetup-intldll-setupexe-$(STF_PLATFORM)		$(STF_SRCDIR)mstools\mssetup\intldll\setupexe\$(STF_PLATFORM)		$(MstoolsDir)mssetup\intldll\setupexe
	AddSectionFilesToCopyList Files-mstools-mssetup-lib-$(STF_PLATFORM)		$(STF_SRCDIR)mstools\mssetup\lib\$(STF_PLATFORM)		$(MstoolsDir)mssetup\lib
	AddSectionFilesToCopyList Files-mstools-mssetup-sample		$(STF_SRCDIR)mstools\mssetup\sample		$(MstoolsDir)mssetup\sample
	AddSectionFilesToCopyList Files-mstools-mssetup-sample-$(STF_PLATFORM)		$(STF_SRCDIR)mstools\mssetup\sample\$(STF_PLATFORM)		$(MstoolsDir)mssetup\sample
	AddSectionFilesToCopyList Files-mstools-mssetup-source		$(STF_SRCDIR)mstools\mssetup\source		$(MstoolsDir)mssetup\source

    endif

    ;
    ; 7. Microsoft Test Toolkit - optional
    ;
   
    ifstr(i) $(DoMSTest) == $(Chosen)
        CreateDir $(MstoolsDir)mstest
	CreateDir $(MstoolsDir)mstest\include
	CreateDir $(MstoolsDir)mstest\sample
 
	AddSectionFilesToCopyList Files-mstools-mstest                  $(STF_SRCDIR)mstools\mstest			$(MstoolsDir)mstest
	AddSectionFilesToCopyList Files-mstools-mstest-$(STF_PLATFORM)  $(STF_SRCDIR)mstools\mstest\$(STF_PLATFORM)	$(MstoolsDir)mstest
	AddSectionFilesToCopyList Files-mstools-mstest-include		$(STF_SRCDIR)mstools\mstest\include		$(MstoolsDir)mstest\include
	AddSectionFilesToCopyList Files-mstools-mstest-sample		$(STF_SRCDIR)mstools\mstest\sample		$(MstoolsDir)mstest\sample

    endif

    exit

[Install-DBGFiles]
    set STF_VITAL = ""
    CreateDir  $(STF_WINDOWSPATH)\symbols
    CreateDir  $(STF_WINDOWSPATH)\symbols\dll

    AddSectionFilesToCopyList Files-support-debug-$(STF_PLATFORM)-symbols-dll $(STF_SRCDIR)support\debug\$(STF_PLATFORM)\symbols\dll $(STF_WINDOWSPATH)\symbols\dll
    exit

[Install-SeeIfFileIsPresent]
LibraryProcedure STATUS,$(!LIBHANDLE), CheckFileExistance $(FileToCheck)
exit

[Install-All-Files-Now]
    CopyFilesInCopyList
    exit


;
; REGULAR MSTOOLS
;

[Files-mstools-bin-Alpha]
2,A2COFF.EXE
2,ACC.EXE
2,ACCNOTES.TXT
2,ALPHAKD.EXE
2,APF32CVT.EXE
2,APF32DMP.EXE
2,AS0.EXE
2,AS1.EXE
2,ASAXP.EXE
2,ASAXP.TXT
2,AXPNOTES.TXT
2,C1.ERR
2,C1N32.EXE
2,C1XX32.EXE
2,C2N32.EXE
2,CFE.EXE
2,CL.ERR
2,CL.EXE
2,CL32.MSG
2,CLAXP.EXE
2,CLAXP.TXT
2,COMPRESS.EXE
2,CVDUMP.EXE
2,CVPACK.EXE
2,CVTRES.EXE
2,DDESPY.EXE
2,DLGEDIT.EXE
2,DM.DLL
2,EECANALP.DLL
2,EECANMIP.DLL
2,EECANX86.DLL
2,EECXXALP.DLL
2,EECXXMIP.DLL
2,EECXXX86.DLL
2,EMALP.DLL
2,EMMIP.DLL
2,EMX86.DLL
2,ENGLISH.ERR
2,EXP.EXE
2,FASTIMER.DLL
2,FERNEL32.DLL
2,FILTER.DLL
2,FONTEDIT.EXE
2,GUTILS.DLL
2,HOOK.DLL
2,I386KD.EXE
2,IMAGEDIT.EXE
2,JUSTIFY.DLL
2,LIB32.EXE
2,LINK32.EXE
2,LMMIB2.MIB
2,MC.EXE
2,MEP.EXE
2,MHELP.DLL
2,MIB.BIN
2,MIB_II.MIB
2,MIBCC.EXE
2,MIDL.EXE
2,MIPSKD.EXE
2,MSHELP.DLL
2,NMAKE.EXE
2,NTSD.EXE
2,NTSDEXTS.DLL
2,PEFILE.DLL
2,PERFMTR.EXE
2,PMATCH.DLL
2,PORT.DLL
2,PORT.INI
2,PORTTOOL.EXE
2,PROBE.DLL
2,PSTAT.EXE
2,PVIEW.EXE
2,PWALK.EXE
2,QGREP.EXE
2,RC.EXE
2,RCPP.EXE
2,REBASE.EXE
2,RM.EXE
2,SHCV.DLL
2,SMI.MIB
2,SPY.EXE
2,SYMCVT.DLL
2,TGLCASE.DLL
2,TLLOC.DLL
2,TLPIPE.DLL
2,TLSER.DLL
2,TOP.EXE
2,UCONVERT.EXE
2,UGEN.EXE
2,ULCASE.DLL
2,UNDEL.EXE
2,UNDNAME.EXE
2,UNIPAD.EXE
2,UOPT.EXE
2,UUIDGEN.EXE
2,VERFIX.EXE
2,WDBGEXTS.DLL
2,WHERE.EXE
2,WINDBG.EXE
2,WINDBGRM.EXE
2,WINDIFF.EXE
2,WINOBJ.EXE
2,WPERF.EXE
2,ZDI32.DLL
2,ZDVAPI32.DLL
2,ZERNEL32.DLL
2,ZOOMIN.EXE
2,ZRTDLL.DLL
2,ZSER32.DLL

[Files-mstools-bin-I386]
2,ALPHAKD.EXE
2,APF32CVT.EXE
2,APF32DMP.EXE
2,BIND.EXE
2,CAP.DLL
2,CAP.INI
2,CAPDUMP.EXE
2,CAPSETUP.EXE
2,CAPVIEW.EXE
2,CAPVIEW.HLP
2,COMPRESS.EXE
2,CVDUMP.EXE
2,CVPACK.EXE
2,CVTRES.EXE
2,DDESPY.EXE
2,DLGEDIT.EXE
2,DM.DLL
2,DM32S.DLL
2,EECANALP.DLL
2,EECANMIP.DLL
2,EECANX86.DLL
2,EECXXALP.DLL
2,EECXXMIP.DLL
2,EECXXX86.DLL
2,EMALP.DLL
2,EMMIP.DLL
2,EMX86.DLL
2,EXP.EXE
2,FASTIMER.DLL
2,FERNEL32.DLL
2,FILTER.DLL
2,FILTER.EXE
2,FONTEDIT.EXE
2,GUTILS.DLL
2,HOOK.DLL
2,I386KD.EXE
2,IMAGEDIT.EXE
2,JUSTIFY.DLL
2,LIB32.EXE
2,LINK32.EXE
2,LMMIB2.MIB
2,MAPSYMPE.EXE
2,MASM386.EXE
2,MC.EXE
2,MEP.EXE
2,MHELP.DLL
2,MIB.BIN
2,MIB_II.MIB
2,MIBCC.EXE
2,MIDL.EXE
2,MIPSKD.EXE
2,MSHELP.DLL
2,NMAKE.EXE
2,NTSD.EXE
2,NTSDEXTS.DLL
2,PEFILE.DLL
2,PERFMTR.EXE
2,PMATCH.DLL
2,PORT.DLL
2,PORT.INI
2,PORTTOOL.EXE
2,PROBE.DLL
2,PSTAT.EXE
2,PVIEW.EXE
2,PWALK.EXE
2,QGREP.EXE
2,RC.EXE
2,RCPP.EXE
2,CAP.TXT
2,REBASE.EXE
2,RM.EXE
2,SHCV.DLL
2,SMI.MIB
2,SOL.END
2,SPY.EXE
2,SYMCVT.DLL
2,TGLCASE.DLL
2,TLLOC.DLL
2,TLPIPE.DLL
2,TLSER.DLL
2,TLSER32S.DLL
2,TOP.EXE
2,UCONVERT.EXE
2,ULCASE.DLL
2,UNDEL.EXE
2,UNDNAME.EXE
2,UNIPAD.EXE
2,UUIDGEN.EXE
2,VERFIX.EXE
2,WDBGEXTS.DLL
2,WHERE.EXE
2,WIN32S.DAT
2,WINDBG.EXE
2,WINDBGRM.EXE
2,WINDIFF.EXE
2,WINOBJ.EXE
2,WPERF.EXE
2,WST.DLL
2,WST.INI
2,WSTCAT.EXE
2,WSTDUMP.EXE
2,WSTUNE.EXE
2,ZDI32.DLL
2,ZDVAPI32.DLL
2,ZERNEL32.DLL
2,ZOOMIN.EXE
2,ZRTDLL.DLL
2,ZSER32.DLL

[Files-mstools-bin-Mips]
2,ALPHAKD.EXE
2,APF32CVT.EXE
2,APF32DMP.EXE
2,AS0.EXE
2,AS1.EXE
2,BIND.EXE
2,C1.ERR
2,C1_RX.EXE
2,C1XX_RX.EXE
2,CC.EXE
2,CFE.EXE
2,CL.ERR
2,CL.EXE
2,CL32.MSG
2,COMPRESS.EXE
2,CPP.EXE
2,CVDUMP.EXE
2,CVPACK.EXE
2,CVTRES.EXE
2,DDESPY.EXE
2,DLGEDIT.EXE
2,DM.DLL
2,EECANALP.DLL
2,EECANMIP.DLL
2,EECANX86.DLL
2,EECXXALP.DLL
2,EECXXMIP.DLL
2,EECXXX86.DLL
2,EMALP.DLL
2,EMMIP.DLL
2,EMX86.DLL
2,ERR.CC
2,EXP.EXE
2,FASTIMER.DLL
2,FERNEL32.DLL
2,FILTER.DLL
2,FILTER.EXE
2,FONTEDIT.EXE
2,GUTILS.DLL
2,HOOK.DLL
2,I386KD.EXE
2,IMAGEDIT.EXE
2,JUSTIFY.DLL
2,LIB32.EXE
2,LINK32.EXE
2,LMMIB2.MIB
2,MC.EXE
2,MCL.EXE
2,MEP.EXE
2,MHELP.DLL
2,MIB.BIN
2,MIB_II.MIB
2,MIBCC.EXE
2,MIDL.EXE
2,MIP2COFF.EXE
2,MIPSKD.EXE
2,MSAS0.EXE
2,MSAS1.EXE
2,MSDIS.EXE
2,MSHELP.DLL
2,MSU.EXE
2,MSUGEN.EXE
2,MSUMERGE.EXE
2,MSUOPT.EXE
2,NMAKE.EXE
2,NTSD.EXE
2,NTSDEXTS.DLL
2,PEFILE.DLL
2,PERFMTR.EXE
2,PMATCH.DLL
2,PORT.DLL
2,PORT.INI
2,PORTTOOL.EXE
2,PROBE.DLL
2,PSTAT.EXE
2,PVIEW.EXE
2,PWALK.EXE
2,QGREP.EXE
2,RC.EXE
2,RCPP.EXE
2,REBASE.EXE
2,RM.EXE
2,SHCV.DLL
2,SMI.MIB
2,SPY.EXE
2,SYMCVT.DLL
2,TGLCASE.DLL
2,TLLOC.DLL
2,TLPIPE.DLL
2,TLSER.DLL
2,TOP.EXE
2,UCONVERT.EXE
2,UGEN.EXE
2,ULCASE.DLL
2,UNDEL.EXE
2,UNDNAME.EXE
2,UNIPAD.EXE
2,UOPT.EXE
2,UUIDGEN.EXE
2,VERFIX.EXE
2,WDBGEXTS.DLL
2,WHERE.EXE
2,WINDBG.EXE
2,WINDBGRM.EXE
2,WINDIFF.EXE
2,WINOBJ.EXE
2,WPERF.EXE
2,ZDI32.DLL
2,ZDVAPI32.DLL
2,ZERNEL32.DLL
2,ZOOMIN.EXE
2,ZRTDLL.DLL
2,ZSER32.DLL

[Files-mstools-bin]
2,DLLSWTCH.BAT
2,HC.BAT
2,HC30.EXE
2,HC31.ERR
2,HC31.EXE
2,M.ICO
2,MRBC.EXE
2,WAP.TXT
2,SDKDOC.ICO
2,SHED.EXE
2,SNMP.TXT
2,UNICODE.UTF
2,WINSOCK.ICO

[Files-mstools-h-alpha]
2,ALPHAOPS.H
2,KSALPHA.H
2,KXALPHA.H

[Files-mstools-h-i386]
2,CALLCONV.INC

[Files-mstools-h-mips]
2,KSMIPS.H
2,KXMIPS.H

[Files-mstools-h-sys]
2,LOCKING.H
2,STAT.H
2,TIMEB.H
2,TYPES.H
2,UTIME.H

[Files-mstools-h]
2,ASSERT.H
2,ATALKWSH.H
2,CDERR.H
2,COLOR.DLG
2,COLORDLG.H
2,COMMCTRL.H
2,COMMDLG.H
2,CONIO.H
2,CPL.H
2,CTYPE.H
2,CUSTCNTL.H
2,DDE.H
2,DDEML.H
2,DIRECT.H
2,DLCAPI.H
2,DLGS.H
2,DOS.H
2,DRIVINIT.H
2,ERRNO.H
2,EXCPT.H
2,FCNTL.H
2,FILEOPEN.DLG
2,FINDTEXT.DLG
2,FLOAT.H
2,FONT.DLG
2,FPIEEE.H
2,FSTREAM.H
2,IO.H
2,IOMANIP.H
2,IOS.H
2,IOSTREAM.H
2,ISTREAM.H
2,LARGEINT.H
2,LIMITS.H
2,LM.H
2,LMACCESS.H
2,LMALERT.H
2,LMAPIBUF.H
2,LMAT.H
2,LMAUDIT.H
2,LMBROWSR.H
2,LMCHDEV.H
2,LMCONFIG.H
2,LMCONS.H
2,LMERR.H
2,LMERRLOG.H
2,LMMSG.H
2,LMREMUTL.H
2,LMREPL.H
2,LMSERVER.H
2,LMSHARE.H
2,LMSNAME.H
2,LMSTATS.H
2,LMSVC.H
2,LMUSE.H
2,LMUSEFLG.H
2,LMWKSTA.H
2,LOCALE.H
2,LZEXPAND.H
2,MALLOC.H
2,MATH.H
2,MEMORY.H
2,MGMTAPI.H
2,MMSYSTEM.H
2,NB30.H
2,NDDEAPI.H
2,NDDESEC.H
2,NEW.H
2,NTIMAGE.H
2,NTSDEXTS.H
2,NTWIN32.MAK
2,OLE.H
2,OSTREAM.H
2,PRNSETUP.DLG
2,PROCESS.H
2,RAS.H
2,RASERROR.H
2,RPC.H
2,RPCDCE.H
2,RPCDCEP.H
2,RPCNDR.H
2,RPCNSI.H
2,RPCNSIP.H
2,RPCNTERR.H
2,SCRNSAVE.H
2,SEARCH.H
2,SETJMP.H
2,SETJMPEX.H
2,SHARE.H
2,SHELLAPI.H
2,SIGNAL.H
2,SNMP.H
2,STDARG.H
2,STDDEF.H
2,STDIO.H
2,STDIOSTR.H
2,STDLIB.H
2,STREAMB.H
2,STRING.H
2,STRSTREA.H
2,TCHAR.H
2,TIME.H
2,VARARGS.H
2,VDMDBG.H
2,WCHAR.H
2,WCSTR.H
2,WDBGEXTS.H
2,WFEXT.H
2,WINBASE.H
2,WINCON.H
2,WINDEF.H
2,WINDOWS.H
2,WINDOWSX.H
2,WINDOWSX.H16
2,WINERROR.H
2,WINGDI.H
2,WINIOCTL.H
2,WINMM.H
2,WINNETWK.H
2,WINNLS.H
2,WINNT.H
2,WINPERF.H
2,WINREG.H
2,WINSOCK.H
2,WINSPOOL.H
2,WINSVC.H
2,WINUSER.H
2,WINVER.H
2,WSIPX.H
2,WSNWLINK.H

[Files-mstools-help-alpha]
2,CL.HLP
2,TOOLS.HLP

[Files-mstools-help-i386]
2,TOOLS.HLP

[Files-mstools-help-index]
2,API32WH.IND
2,WIN32KB.IND

[Files-mstools-help-mips]
2,CL.HLP
2,TOOLS.HLP

[Files-mstools-help-qh]
2,MEP.HLP

[Files-mstools-help]
2,API32WH.HLP
2,BUILD.HLP
2,DLGEDIT.HLP
2,EDITHLP.HLP
2,ERRORS.HLP
2,FONTEDIT.HLP
2,IMAGEDIT.HLP
2,LIB.HLP
2,LINK.HLP
2,MC.HLP
2,MODIF.HLP
2,MSC.HLP
2,NMAKE.HLP
2,PT.HLP
2,RC.HLP
2,SHED.HLP
2,TOOLSBK.HLP
2,UCONVERT.HLP
2,UNIPAD.HLP
2,WIN32KB.HLP
2,WIN32S.HLP
2,WINDBG.HLP
2,WINSOCK.HLP

[Files-mstools-init]
2,BRIEF.INI
2,EPSILON.INI
2,QUICK.INI
2,TOOLS.INI

[Files-mstools-lib-Alpha]
2,ADVAPI32.LIB
2,BINMODE.OBJ
2,CHKSTK.OBJ
2,COMCTL32.LIB
2,COMDLG32.LIB
2,COMMODE.OBJ
2,CRTDLL.LIB
2,DLCAPI.LIB
2,GDI32.LIB
2,INETMIB1.LIB
2,KERNEL32.LIB
2,LARGEINT.LIB
2,LIBC.LIB
2,LIBCMT.LIB
2,LIBCX32.LIB
2,LMMIB2.LIB
2,LZ32.LIB
2,MGMTAPI.LIB
2,MPR.LIB
2,NDDEAPI.LIB
2,NETAPI32.LIB
2,OLECLI32.LIB
2,OLESVR32.LIB
2,RASAPI32.LIB
2,RPCNDR.LIB
2,RPCNS4.LIB
2,RPCRT4.LIB
2,SCRNSAVE.LIB
2,SETARGV.OBJ
2,SHELL32.LIB
2,SNMP.LIB
2,USER32.LIB
2,VDMDBG.LIB
2,VERSION.LIB
2,WIN32API.CSV
2,WIN32SPL.LIB
2,WINMM.LIB
2,WINSPOOL.LIB
2,WINSTRM.LIB
2,WSOCK32.LIB

[Files-mstools-lib-I386]
2,ADVAPI32.LIB
2,BINMODE.OBJ
2,CAP.LIB
2,CHKSTK.OBJ
2,COMCTL32.LIB
2,COMDLG32.LIB
2,COMMODE.OBJ
2,CRTDLL.LIB
2,DLCAPI.LIB
2,GDI32.LIB
2,INETMIB1.LIB
2,KERNEL32.LIB
2,LARGEINT.LIB
2,LIBC.LIB
2,LIBCMT.LIB
2,LMMIB2.LIB
2,LZ32.LIB
2,MGMTAPI.LIB
2,MPR.LIB
2,NDDEAPI.LIB
2,NETAPI32.LIB
2,OLECLI32.LIB
2,OLESVR32.LIB
2,PENTER.LIB
2,RASAPI32.LIB
2,RPCNDR.LIB
2,RPCNS4.LIB
2,RPCRT4.LIB
2,SCRNSAVE.LIB
2,SETARGV.OBJ
2,SHELL32.LIB
2,SNMP.LIB
2,USER32.LIB
2,VDMDBG.LIB
2,VERSION.LIB
2,WIN32API.CSV
2,WIN32SPL.LIB
2,WINMM.LIB
2,WINSPOOL.LIB
2,WINSTRM.LIB
2,WSOCK32.LIB
2,WST.LIB

[Files-mstools-lib-Mips]
2,ADVAPI32.LIB
2,BINMODE.OBJ
2,CHKSTK.OBJ
2,COMCTL32.LIB
2,COMDLG32.LIB
2,COMMODE.OBJ
2,CRTDLL.LIB
2,DLCAPI.LIB
2,GDI32.LIB
2,INETMIB1.LIB
2,KERNEL32.LIB
2,LARGEINT.LIB
2,LIBC.LIB
2,LIBCMT.LIB
2,LIBM.LIB
2,LMMIB2.LIB
2,LZ32.LIB
2,MGMTAPI.LIB
2,MPR.LIB
2,NDDEAPI.LIB
2,NETAPI32.LIB
2,OLECLI32.LIB
2,OLESVR32.LIB
2,RASAPI32.LIB
2,RPCNDR.LIB
2,RPCNS4.LIB
2,RPCRT4.LIB
2,SCRNSAVE.LIB
2,SETARGV.OBJ
2,SHELL32.LIB
2,SMALL.LIB
2,SNMP.LIB
2,USER32.LIB
2,VDMDBG.LIB
2,VERSION.LIB
2,WIN32API.CSV
2,WIN32SPL.LIB
2,WINMM.LIB
2,WINSPOOL.LIB
2,WINSTRM.LIB
2,WSOCK32.LIB

[Files-mstools-mssetup-bin-Alpha]
2,MSCOMSTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-bin-i386]
2,MSCOMSTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-bin-mips]
2,MSCOMSTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-bldcui]
2,BILLBRD1.BMP
2,BILLBRD2.BMP
2,BILLBRD3.BMP
2,BILLBRD4.BMP
2,BITMAP.DIB
2,BLDVER.H
2,CUI.H
2,CUISTF.LNK
2,CUISTFD.LNK
2,DIALOGS.DLG
2,DIALOGS.H
2,DIALOGS.RC
2,DLGPROCS.C
2,MAKEFILE
2,MSCUISTF.DEF
2,SETUP.ICO

[Files-mstools-mssetup-disklay-Alpha]
2,DSKLAYT2.EXE

[Files-mstools-mssetup-disklay-i386]
2,DSKLAYT2.EXE

[Files-mstools-mssetup-disklay-mips]
2,DSKLAYT2.EXE

[Files-mstools-mssetup-disklay]
2,COLORLST.VBX
2,DSKLAYT.EXE
2,VBRUN200.DLL

[Files-mstools-mssetup-include]
2,MSCPYDIS.H
2,MSDETECT.H
2,MSDETECT.INC
2,MSREGDB.H
2,MSREGDB.INC
2,MSSHARED.H
2,MSSHARED.INC
2,SETUPAPI.H
2,SETUPAPI.INC

[Files-mstools-mssetup-intldll-setupexe-Alpha]
2,SETUP.OBJ
2,VIRWINN.OBJ

[Files-mstools-mssetup-intldll-setupexe-i386]
2,SETUP.OBJ
2,VIRWINN.OBJ

[Files-mstools-mssetup-intldll-setupexe-mips]
2,SETUP.OBJ
2,VIRWINN.OBJ

[Files-mstools-mssetup-intldll-setupexe]
2,BLDVER.H
2,MAKEBOOT.BAT
2,SETUP.DEF
2,SETUP.ICO
2,SETUP.RC

[Files-mstools-mssetup-intldll]
2,BLDVER.H
2,GAUGE.DLG
2,GAUGE.H
2,IDS.H
2,IDS_INST.H
2,LOGIDS.H
2,MSCOMSTF.RC
2,MSDETSTF.RC
2,MSINSSTF.RC
2,MSSHLSTF.RC
2,MSUILSTF.RC
2,SETUP.ICO

[Files-mstools-mssetup-lib-Alpha]
2,MSCOMSTF.LIB
2,MSDETSTF.LIB
2,MSINSSTF.LIB
2,MSSHLSTF.LIB
2,MSUILSTF.LIB

[Files-mstools-mssetup-lib-i386]
2,MSCOMSTF.LIB
2,MSDETSTF.LIB
2,MSINSSTF.LIB
2,MSSHLSTF.LIB
2,MSUILSTF.LIB

[Files-mstools-mssetup-lib-mips]
2,MSCOMSTF.LIB
2,MSDETSTF.LIB
2,MSINSSTF.LIB
2,MSSHLSTF.LIB
2,MSUILSTF.LIB

[Files-mstools-mssetup-sample-Alpha]
2,MSCOMSTF.DLL
2,MSCUISTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-sample-i386]
2,MSCOMSTF.DLL
2,MSCUISTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-sample-mips]
2,MSCOMSTF.DLL
2,MSCUISTF.DLL
2,MSDETSTF.DLL
2,MSINSSTF.DLL
2,MSSHLSTF.DLL
2,MSUILSTF.DLL

[Files-mstools-mssetup-sample]
2,MAKEFILE
2,MSCPYDIS.C
2,MSDETECT.C
2,MSREGDB.C
2,MSSHARED.C
2,SAMPLE.H
2,SAMPLE.INF
2,SETUP.C
2,SETUP.DEF
2,SETUP.LNK
2,SETUP.RC
2,SETUPAPI.C
2,SETUPD.LNK

[Files-mstools-mssetup-source]
2,MSCPYDIS.C
2,MSDETECT.C
2,MSREGDB.C
2,MSSHARED.C
2,SETUPAPI.C

[Files-mstools-mssetup]
2,README.WRI
2,SETUP.WRI

[Files-mstools-mstest-Alpha]
2,LINEEDIT.DLL
2,MSTEST.HLP
2,TESTCTRL.DLL
2,TESTDLGS.DLL
2,TESTDLGS.EXE
2,TESTDRVR.EXE
2,TESTEVNT.DLL
2,TESTSCRN.DLL
2,TESTSCRN.EXE
2,TESTVW32.DLL
2,WS1.DLL

[Files-mstools-mstest-i386]
2,LINEEDIT.DLL
2,MSTEST.HLP
2,TESTCTRL.DLL
2,TESTDLGS.DLL
2,TESTDLGS.EXE
2,TESTDRVR.EXE
2,TESTEVNT.DLL
2,TESTSCRN.DLL
2,TESTSCRN.EXE
2,TESTVW32.DLL
2,WS1.DLL

[Files-mstools-mstest-include]
2,FASTTEST.INC
2,FTESTKEY.MST
2,FTESTLOG.MST
2,FTESTUTL.MST
2,MSTEST.INC
2,WINDOWS.INC
2,WINGDI.INC
2,WINKERN.INC
2,WINPLAY.INC
2,WINUSER.INC
2,WNAPIDEC.INC

[Files-mstools-mstest-Mips]
2,LINEEDIT.DLL
2,MSTEST.HLP
2,TESTCTRL.DLL
2,TESTDLGS.DLL
2,TESTDLGS.EXE
2,TESTDRVR.EXE
2,TESTEVNT.DLL
2,TESTSCRN.DLL
2,TESTSCRN.EXE
2,TESTVW32.DLL
2,WS1.DLL

[Files-mstools-mstest-sample]
2,IMAGEDIT.INC
2,IMAGEDIT.MST
2,IMAGEINC.MST
2,MAKEGOLD.BAT
2,RUNTESTS.BAT

[Files-mstools-mstest]
2,MSTEST32.TXT

[Files-mstools-posix-h-sys]
2,ERRNO.H
2,STAT.H
2,TIMES.H
2,TYPES.H
2,UTSNAME.H
2,WAIT.H

[Files-mstools-posix-h]
2,DIRENT.H
2,ERRNO.H
2,FCNTL.H
2,GRP.H
2,PWD.H
2,SETJMP.H
2,SIGNAL.H
2,TAR.H
2,TERMIOS.H
2,TYPES.H
2,UNISTD.H
2,UTIME.H

[Files-mstools-posix-lib-Alpha]
2,LIBCPSX.LIB
2,PSXDLL.LIB
2,PSXRTL.LIB

[Files-mstools-posix-lib-i386]
2,LIBCPSX.LIB
2,PSXDLL.LIB
2,PSXRTL.LIB

[Files-mstools-posix-lib-Mips]
2,LIBCPSX.LIB
2,PSXDLL.LIB
2,PSXRTL.LIB

[Files-mstools-posix-samples-psxarc]
2,ARCHIVE.C
2,BUF.C
2,BUF.H
2,CPIO.C
2,CPIO.H
2,GETOPT.C
2,GETOPT.H
2,LINKS.C
2,LINKS.H
2,MAKEFILE
2,PSXARC.C
2,PSXARC.H
2,TAR.C
2,TARHEAD.H

[Files-mstools-posix]
2,SETNVPSX.BAT

[Files-mstools-rpc-help]
2,MIDL10WH.HLP

[Files-mstools-samples-cdtest]
2,ABOUT.DLG
2,CDTEST.C
2,CDTEST.H
2,CDTEST.ICO
2,CLRTEMP.DLG
2,COLORS.C
2,COLORS.DLG
2,COLORS.H
2,DEVMODE.DLG
2,DEVMODE.H
2,DEVNAMES.DLG
2,DEVNAMES.H
2,FIND.C
2,FIND.DLG
2,FIND.H
2,FONT.C
2,FONT.DLG
2,FONT.H
2,FONTTEMP.DLG
2,FTTEMP.DLG
2,LOGFONT.DLG
2,LOGFONT.H
2,MAKEFILE
2,OPEN.C
2,OPEN.DLG
2,OPEN.H
2,OPENTEMP.DLG
2,PRINT.C
2,PRINT.DLG
2,PRINT.H
2,PRTEMP.DLG
2,README.TXT
2,REPLACE.C
2,REPLACE.H
2,RES.RC
2,SAVE.C
2,SAVE.H
2,TITLE.C
2,TITLE.DLG
2,TITLE.H

[Files-mstools-samples-comm]
2,MAKEFILE
2,README.TXT
2,RESOURCE.H
2,TTY.BMP
2,TTY.C
2,TTY.DEF
2,TTY.H
2,TTY.ICO
2,TTY.RC
2,VERSION.H

[Files-mstools-samples-congui]
2,CONGUI.DLG
2,CONGUI.H
2,CONGUI.HPJ
2,CONGUI.ICO
2,CONGUI.RC
2,CONGUI.RTF
2,CONSOLE.C
2,GUI.C
2,MAKEFILE

[Files-mstools-samples-console]
2,ALOCFREE.C
2,CONINFO.C
2,CONMODE.C
2,CONSOLE.C
2,CONSOLE.H
2,CONSOLE.ICO
2,CONSOLE.RC
2,CONTITLE.C
2,CREATE.C
2,CURSOR.C
2,FILLATT.C
2,FILLCHAR.C
2,FLUSH.C
2,GETLRGST.C
2,GETNUMEV.C
2,HANDLER.C
2,MAKEFILE
2,NUMBUT.C
2,READCHAR.C
2,README.TXT
2,READOUT.C
2,SCROLL.C
2,SIZE.C
2,SIZE.H
2,WRITEIN.C

[Files-mstools-samples-ddeml-client]
2,MAKEFILE
2,CLIENT.DEF
2,CLIENT.DLG
2,CLIENT.H
2,CLIENT.ICO
2,CLIENT.RC
2,CLINIT.C
2,CONV.ICO
2,DDE.C
2,DDEMLCL.C
2,DIALOG.C
2,DIALOG.H
2,HUGE.C
2,HUGE.H
2,INFOCTRL.C
2,INFOCTRL.H
2,LIST.ICO
2,MEM.C
2,TRACK.C
2,TRACK.H

[Files-mstools-samples-ddeml-clock]
2,MAKEFILE
2,CLOCK.C
2,CLOCK.DEF
2,CLOCK.DLG
2,CLOCK.H
2,CLOCK.ICO
2,CLOCKRES.RC

[Files-mstools-samples-ddeml-ddeinst]
2,DDEADD.C   
2,DDEDLG.C   
2,DDEDLG.DLG 
2,DDEDLG.H   
2,DDEGLBL.H  
2,DDEINST.C  
2,DDEINST.H  
2,DDEMAIN.C  
2,DDEPROCS.C 
2,DDEXTRN.H  
2,DIALOGS.DLG
2,DIALOGS.H  
2,INSTALL.DLG
2,INSTALL.ICO
2,INSTALL.RC 
2,MAKEFILE   
2,README.TXT 

[Files-mstools-samples-ddeml-ddemo]
2,MAKEFILE
2,DDEMO.C

[Files-mstools-samples-ddeml-ddeprog]
2,PHTEST.C
2,PHTEST.DLG
2,PHTEST.H
2,PHTEST.RC
2,MAKEFILE
2,PROGHELP.C
2,PROGHELP.DEF
2,PROGHELP.H

[Files-mstools-samples-ddeml-server]
2,DDE.C
2,DDEMLSV.C
2,DIALOG.C
2,DIALOG.H
2,HUGE.C
2,HUGE.H
2,MAKEFILE
2,SERVER.DEF
2,SERVER.DLG
2,SERVER.H
2,SERVER.ICO
2,SERVER.RC

[Files-mstools-samples-deb]
2,DEB.BMP
2,DEB.DEF
2,DEB.DLG
2,DEB.H
2,DEB.HPJ
2,DEB.ICO
2,DEB.RC
2,DEB.RTF
2,DEB1.ICO
2,DEB2.ICO
2,DEB3.ICO
2,DEB4.ICO
2,DEB5.ICO
2,DEB6.ICO
2,DEB7.ICO
2,DEB8.ICO
2,DEBDEBUG.C
2,DEBDEBUG.H
2,DEBMAIN.C
2,DEBMAIN.H
2,DEBMISC.C
2,DEBMISC.H
2,LINKLIST.C
2,LINKLIST.H
2,MAKEFILE
2,README.TXT
2,TOOLBAR.BMP
2,TOOLBAR.C
2,TOOLBAR.DEF
2,TOOLBAR.H

[Files-mstools-samples-dyndlg]
2,DYNDLG.C  
2,DYNDLG.H  
2,DYNDLG.HPJ
2,DYNDLG.ICO
2,DYNDLG.RC 
2,DYNDLG.RTF
2,MAKEFILE  
2,README.TXT

[Files-mstools-samples-filer]
2,CD.BMP
2,CD2.BMP
2,DRVPROC.C
2,DRVPROC.H
2,ENUMDRV.C
2,ENUMDRV.H
2,EXPDIR.C
2,EXPDIR.H
2,FILER.C
2,FILER.DLG
2,FILER.H
2,FILER.ICO
2,FILER.RC
2,FIXED.BMP
2,FIXED2.BMP
2,FLOPPY.BMP
2,FLOPPY2.BMP
2,GLOBALS.H
2,MAKEFILE
2,README.TXT
2,REMOTE.BMP
2,REMOTE2.BMP

[Files-mstools-samples-floppy]
2,MAKEFILE
2,MFMT.C
2,README.TXT

[Files-mstools-samples-fontview]
2,DIALOGS.C
2,DISPLAY.C
2,FONTHELP.ICO
2,MAKEFILE
2,FONTVIEW.BMP
2,FONTVIEW.C
2,FONTVIEW.DEF
2,FONTVIEW.DLG
2,FONTVIEW.H
2,FONTVIEW.HPJ
2,FONTVIEW.ICO
2,FONTVIEW.MAK
2,FONTVIEW.RC
2,FONTVIEW.RTF
2,FONTVIEW.SHG
2,MAKEFILE.W31
2,SCREEN1.BMP
2,SCREEN1.SHG
2,SCREEN2.BMP
2,SCREEN2.SHG
2,STATUS.C
2,TOOLS.C
2,ZOOM.ICO

[Files-mstools-samples-gdidemo]
2,BOUNCE.C
2,BOUNCE.H
2,DIALOG.C
2,DRAW.C
2,DRAW.H
2,MAKEFILE
2,GDIDEMO.C
2,GDIDEMO.DEF
2,GDIDEMO.DLG
2,GDIDEMO.H
2,GDIDEMO.ICO
2,GDIDEMO.RC
2,INIT.C
2,MAZE.C
2,MAZE.H
2,POLY.C
2,POLY.H
2,WININFO.C
2,XFORM.C
2,XFORM.H

[Files-mstools-samples-generic]
2,DOSWIN16.MAK
2,MAKEFILE
2,GENERIC.BMP
2,GENERIC.C
2,GENERIC.DEF
2,GENERIC.DLG
2,GENERIC.H
2,GENERIC.HPJ
2,GENERIC.ICO
2,GENERIC.RC
2,GENERIC.RCV
2,GENERIC.RTF

[Files-mstools-samples-gridfont]
2,APP.CXX     
2,APP.DEF     
2,APP.H       
2,APP.HXX     
2,APP.RC      
2,BOX.CXX
2,BOX.HXX
2,CANVAS.HXX  
2,FONT.CXX    
2,FONT.HXX    
2,GRID.CXX    
2,GRID.HXX    
2,GRID.ICO    
2,MAKEFILE    
2,MAKEFILE.W16
2,VIEW.CXX    
2,VIEW.HXX    

[Files-mstools-samples-help]
2,SAMPLES.HLP

[Files-mstools-samples-input]
2,MAKEFILE
2,INPUT.C
2,INPUT.DEF
2,INPUT.H
2,INPUT.RC

[Files-mstools-samples-iostutor]
2,EXIOS101.CPP
2,EXIOS102.CPP
2,EXIOS103.CPP
2,EXIOS104.CPP
2,EXIOS105.CPP
2,EXIOS106.CPP
2,EXIOS107.CPP
2,EXIOS108.CPP
2,EXIOS109.CPP
2,EXIOS110.CPP
2,EXIOS111.CPP
2,EXIOS112.CPP
2,EXIOS113.CPP
2,EXIOS114.CPP
2,EXIOS115.CPP
2,EXIOS116.CPP
2,EXIOS117.CPP
2,EXIOS118.CPP
2,EXIOS119.CPP
2,EXIOS120.CPP
2,EXIOS121.CPP
2,EXIOS122.CPP
2,EXIOS201.CPP
2,EXIOS202.CPP
2,EXIOS203.CPP
2,MAKEFILE
2,PAYROLL

[Files-mstools-samples-largeint-Alpha]
2,LARGEINT.S
2,MAKEFILE

[Files-mstools-samples-largeint-i386]
2,DIVLARGE.C
2,DIVLARGE.H
2,LARGEINT.ASM
2,MAKEFILE

[Files-mstools-samples-largeint-mips]
2,LARGEINT.S
2,MAKEFILE

[Files-mstools-samples-largeint-sample]
2,BIGMULT.C
2,MAKEFILE

[Files-mstools-samples-largeint]
2,LARGEINT.H

[Files-mstools-samples-mandel-rsc]
2,EYE.BMP
2,FLOOD.CUR
2,JULIA.ICO
2,JULIA.RLE
2,VIEWER.ICO

[Files-mstools-samples-mandel]
2,BNDSCAN.C
2,BNDSCAN.H
2,DIBMP.C
2,DIBMP.H
2,JTYPES.H
2,JULIA.C
2,JULIA.H
2,JULIA.RC
2,JULIA.TXT
2,LOADBMP.C
2,MAKEFILE
2,PRINTER.C
2,PRINTER.H
2,README.TXT
2,SAVEBMP.C

[Files-mstools-samples-mapi]
2,MAKEFILE
2,MAPI.H
2,MAPIAPP.C
2,MAPIAPP.DEF
2,MAPIAPP.H
2,MAPIAPP.ICO
2,MAPIAPP.RC
2,MAPIC.HLP
2,MAPINIT.C
2,MAPINIT.H

[Files-mstools-samples-mazelord-rsc]
2,FADE1.BMP  
2,FADE2.BMP  
2,FISHB.BMP  
2,FISHBM.BMP 
2,FISHF.BMP  
2,FISHFM.BMP 
2,FISHL.BMP  
2,FISHLM.BMP 
2,FISHR.BMP  
2,FISHRM.BMP 
2,MAZE.BMP   
2,REAPB.BMP  
2,REAPBM.BMP 
2,REAPF.BMP  
2,REAPFM.BMP 
2,REAPL.BMP  
2,REAPLM.BMP 
2,REAPR.BMP  
2,REAPRM.BMP 
2,ROBOB.BMP  
2,ROBOBM.BMP 
2,ROBOF.BMP  
2,ROBOFM.BMP 
2,ROBOL.BMP  
2,ROBOLM.BMP 
2,ROBOR.BMP  
2,ROBORM.BMP 
2,SHOT1.BMP  
2,SHOT2.BMP  
2,SMILB.BMP  
2,SMILBM.BMP 
2,SMILF.BMP  
2,SMILFM.BMP 
2,SMILL.BMP  
2,SMILLM.BMP 
2,SMILR.BMP  
2,SMILRM.BMP 

[Files-mstools-samples-mazelord]
2,BITMAP.C    
2,BLOCKS.WAV  
2,CRCTABLE.H  
2,DOG.WAV     
2,DRAW.C      
2,DRONES.C    
2,GRIDS.RC    
2,INITMAZE.C  
2,LASER.WAV   
2,MAZE.C      
2,MAZE.DEF    
2,MAZE.ICO    
2,MAZE.RC     
2,MAKEFILE
2,MAZEDLG.C   
2,MAZEDLG.DLG 
2,MAZEDLG.H   
2,MAZEWND.C   
2,MAZPROTO.H  
2,NET.H       
2,NETWORK.C   
2,OTHRLASR.WAV
2,README.TXT  
2,READSGRD.C  
2,SANCTU.WAV
2,SCOREWND.C
2,SOURCES   
2,SQUISH.WAV
2,TELE.WAV  
2,TEXTWND.C 
2,TOPWND.C  
2,WINMAZE.H 

[Files-mstools-samples-mcitest]
2,DEBUG.C
2,EDIT.C
2,EDIT.H
2,FILEOPEN.C
2,GMEM.H
2,MCIMAIN.DLG
2,MCIMAIN.H
2,MAKEFILE
2,MCITEST.C
2,MCITEST.DEF
2,MCITEST.H
2,MCITEST.ICO
2,MCITEST.RC

[Files-mstools-samples-memory]
2,MAKEFILE
2,MEMORY.C
2,MEMORY.DEF
2,MEMORY.H
2,MEMORY.RC
2,NMMEMCLI.C
2,NMMEMSRV.C
2,README.TXT

[Files-mstools-samples-mfedit-rsc]
2,BEZIERD.BMP
2,BEZIERU.BMP
2,BMPOBJD.BMP
2,BMPOBJU.BMP
2,ELLIPSED.BMP
2,ELLIPSEU.BMP
2,FELLIPSD.BMP
2,FELLIPSU.BMP
2,FFD.BMP
2,FFU.BMP
2,FRECTD.BMP
2,FRECTU.BMP
2,LINED.BMP
2,LINEU.BMP
2,METAFD.BMP
2,METAFU.BMP
2,MFEDIT.DLG
2,MFEDIT.ICO
2,OPEND.BMP
2,OPENU.BMP
2,PEND.BMP
2,PENU.BMP
2,PLAYD.BMP
2,PLAYU.BMP
2,RECD.BMP
2,RECTD.BMP
2,RECTU.BMP
2,RECU.BMP
2,STOPD.BMP
2,STOPU.BMP
2,TEXTD.BMP
2,TEXTU.BMP

[Files-mstools-samples-mfedit]
2,MAKEFILE
2,MFEDIT.C
2,MFEDIT.H
2,MFEDIT.RC
2,README.TXT

[Files-mstools-samples-midimon]
2,ABOUT.C
2,ABOUT.H
2,CALLBACK.C
2,CALLBACK.DEF
2,CALLBACK.H
2,CIRCBUF.C
2,CIRCBUF.H
2,DISPLAY.C
2,DISPLAY.H
2,FILTER.C
2,FILTER.H
2,INSTDATA.C
2,INSTDATA.H
2,MAKEFILE
2,MIDIMON.C
2,MIDIMON.DEF
2,MIDIMON.H
2,MIDIMON.ICO
2,MIDIMON.RC
2,PREFER.C
2,PREFER.H

[Files-mstools-samples-mltithrd]
2,MAKEFILE
2,MLTITHRD.C
2,MLTITHRD.H
2,MLTITHRD.ICO
2,MLTITHRD.RC
2,README.TXT

[Files-mstools-samples-multipad]
2,MP300.ICO
2,MPFILE.C
2,MPFIND.C
2,MPINIT.C
2,MPOPEN.C
2,MPPRINT.C
2,MAKEFILE
2,MULTIPAD.C
2,MULTIPAD.DEF
2,MULTIPAD.DLG
2,MULTIPAD.H
2,MULTIPAD.RC
2,NOTE300.ICO

[Files-mstools-samples-mypal]
2,MAKEFILE
2,MYPAL.C
2,MYPAL.DEF
2,MYPAL.H
2,MYPAL.ICO
2,MYPAL.RC

[Files-mstools-samples-namepipe-npclient]
2,CLIENT32.C
2,CLIENT32.H
2,CLIENT32.RC
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-namepipe-npserver]
2,ENDDEAD.BMP
2,ENDLIVE.BMP
2,MAKEFILE
2,MIDDEAD.BMP
2,MIDLIVE.BMP
2,NPSERVER.ICO
2,README.TXT
2,SERVER32.C
2,SERVER32.H
2,SERVER32.RC

[Files-mstools-samples-nwlink-connect]
2,CONNECT.C
2,MAKEFILE

[Files-mstools-samples-nwlink-dgrecv]
2,DGRECV.C
2,MAKEFILE

[Files-mstools-samples-nwlink-dgsend]
2,DGSEND.C
2,MAKEFILE

[Files-mstools-samples-nwlink-listen-block]
2,LISTEN.C
2,MAKEFILE

[Files-mstools-samples-nwlink-listen-nonblock]
2,LISTEN.C
2,MAKEFILE

[Files-mstools-samples-nwlink-ping-dos]
2,DOSPING.C

[Files-mstools-samples-nwlink-ping]
2,MAKEFILE
2,PING.C

[Files-mstools-samples-nwlink-testlib]
2,CMDLINE.C
2,DPERROR.C
2,DSTRERR.C
2,ERRMSG.C
2,EXTERNS.H
2,GETERROR.C
2,MAKEFILE
2,MEMORY.C
2,NETPRINT.C
2,TESTLIB.H
2,WPERROR.C

[Files-mstools-samples-ole-clidemo]
2,MAKEFILE
2,CLIDEMO.C
2,CLIDEMO.DEF
2,CLIDEMO.H
2,CLIDEMO.ICO
2,CLIDEMO.RC
2,CLIDEMO.RCV
2,CLIVER.H
2,DEMORC.H
2,DIALOG.C
2,DIALOG.H
2,GLOBAL.H
2,OBJECT.C
2,OBJECT.H
2,REGISTER.C
2,REGISTER.H
2,STREAM.C
2,STREAM.H
2,UTILITY.C
2,UTILITY.H

[Files-mstools-samples-ole-srvrdemo]
2,DOC.C
2,FILE.C
2,OBJ.C
2,SERVER.C
2,MAKEFILE
2,SRVRDEMO.C
2,SRVRDEMO.DEF
2,SRVRDEMO.H
2,SRVRDEMO.ICO
2,SRVRDEMO.RC

[Files-mstools-samples-pdc]
2,MAKEFILE
2,PDC.C
2,PDC.H

[Files-mstools-samples-playsnd]
2,ABOUT.C
2,ABOUT.DLG
2,DEBUG.C
2,DING.WAV
2,FILE.C
2,HELP.C
2,INIT.C
2,LASER.WAV
2,MAKEFILE
2,PLAYSND.C
2,PLAYSND.DEF
2,PLAYSND.H
2,PLAYSND.HPJ
2,PLAYSND.ICO
2,PLAYSND.RC
2,PLAYSND.RTF
2,RES.C
2,SIREN.WAV
2,SOUND.C
2,SOUNDDLG.DLG
2,SOUNDDLG.H

[Files-mstools-samples-plgblt]
2,BITMAP.C
2,BITMAP.H
2,MAKEFILE
2,PLGBLT.C
2,PLGBLT.DEF
2,PLGBLT.H
2,PLGBLT.ICO
2,PLGBLT.RC
2,README.TXT
2,TRACK.C
2,TRACK.H

[Files-mstools-samples-printer]
2,COMMON.H
2,ENUMPRT.C
2,ENUMPRT.H
2,GETCAPS.C
2,GETCAPS.H
2,GETPDRIV.C
2,GETPDRIV.H
2,MAKEFILE
2,PAINT.C
2,PAINT.H
2,PRINTER.BMP
2,PRINTER.C
2,PRINTER.DEF
2,PRINTER.H
2,PRINTER.ICO
2,PRINTER.RC
2,README.TXT

[Files-mstools-samples-registry]
2,MAKEFILE
2,MONKEY.C
2,MONKEY.H
2,MONKEY.RC
2,README.TXT

[Files-mstools-samples-regmpad]
2,MAKEFILE
2,MP300.ICO
2,MPFILE.C
2,MPFIND.C
2,MPINIT.C
2,MPOPEN.C
2,MPPRINT.C
2,MULTIPAD.C
2,MULTIPAD.DEF
2,MULTIPAD.DLG
2,MULTIPAD.H
2,MULTIPAD.RC
2,NOTE300.ICO
2,REGDB.C
2,REGDB.H

[Files-mstools-samples-rpc-callback]
2,CALL.ACF
2,CALL.IDL
2,CALLC.C
2,CALLP.C
2,CALLS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-cluuid]
2,CLUUID.ACF
2,CLUUID.IDL
2,CLUUIDC.C
2,CLUUIDP.C
2,CLUUIDS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-data-dunion]
2,DUNION.ACF
2,DUNION.IDL
2,DUNIONC.C
2,DUNIONP.C
2,DUNIONS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-data-inout]
2,INOUT.ACF
2,INOUT.IDL
2,INOUTC.C
2,INOUTP.C
2,INOUTS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-data-xmit]
2,MAKEFILE
2,README.TXT
2,XMIT.ACF
2,XMIT.IDL
2,XMITC.C
2,XMITP.C
2,XMITS.C
2,XMITU.C
2,XMITU.H

[Files-mstools-samples-rpc-dict]
2,CLIENT.C
2,DICT0.C
2,DICT0.H
2,MAKEFILE
2,PLAY.C
2,PLAY.H
2,README.TXT
2,REPLAY.ACF
2,REPLAY.C
2,REPLAY.IDL
2,SERVER.C
2,UTIL0.C
2,UTIL0.H

[Files-mstools-samples-rpc-doctor]
2,DOCTOR.ACF
2,DOCTOR.IDL
2,DOCTORC.C
2,DOCTORP.C
2,DOCTORS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-handles-auto]
2,AUTO.ACF
2,AUTO.IDL
2,AUTOC.C
2,AUTOP.C
2,AUTOS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-handles-cxhndl]
2,CXHNDL.ACF
2,CXHNDL.IDL
2,CXHNDLC.C
2,CXHNDLP.C
2,CXHNDLS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-handles-usrdef]
2,MAKEFILE
2,README.TXT
2,USRDEF.ACF
2,USRDEF.IDL
2,USRDEFC.C
2,USRDEFP.C
2,USRDEFS.C

[Files-mstools-samples-rpc-hello]
2,HELLO.ACF
2,HELLO.IDL
2,HELLOC.C
2,HELLOP.C
2,HELLOS.C
2,MAKEFILE
2,README.TXT

[Files-mstools-samples-rpc-mandel]
2,CALC.C
2,MAKEFILE
2,MANDEL.C
2,MANDEL.DEF
2,MANDEL.H
2,MANDEL.RC
2,MDLRPC.ACF
2,MDLRPC.IDL
2,README.TXT
2,REMOTE.C
2,RPC.ICO
2,SERVER.C

[Files-mstools-samples-rpc-ns-cds]
2,NSICLT.ACF
2,NSICLT.IDL
2,NSICOM.ACF
2,NSICOM.IDL
2,NSIMGM.ACF
2,NSIMGM.IDL
2,NSISVR.ACF
2,NSISVR.IDL
2,README.TXT

[Files-mstools-samples-rpc-ns-nhello]
2,MAKEFILE
2,NHELLO.IDL
2,NHELLOC.C
2,NHELLOP.C
2,NHELLOS.C
2,README.TXT

[Files-mstools-samples-rpc-whello]
2,MAKEFILE
2,README.TXT
2,RPC.ICO
2,WHELLO.ACF
2,WHELLO.DEF
2,WHELLO.DLG
2,WHELLO.IDL
2,WHELLO.RC
2,WHELLOC.C
2,WHELLOC.H
2,WHELLOP.C
2,WHELLOS.C

[Files-mstools-samples-rpc-yield]
2,MAKEFILE    
2,MAKEFILE.WIN
2,README.TXT
2,RPC.ICO     
2,YIELD.ACF   
2,YIELD.IDL   
2,YIELDC.C    
2,YIELDC.DEF  
2,YIELDC.DLG  
2,YIELDC.H    
2,YIELDC.RC   
2,YIELDP.C    
2,YIELDS.C    

[Files-mstools-samples-rpc]
2,BUILDALL.BAT
2,README.TXT
2,RPCREAD.ME

[Files-mstools-samples-sdktools-aniedit]
2,ANIBTN.FNT
2,ANICMD.C
2,ANICUR.H
2,ANIDEFS.H
2,ANIDLGS.DLG
2,ANIDLGS.H
2,ANIDLGS.RES
2,ANIEDIT.C
2,ANIEDIT.DEF
2,ANIEDIT.ICO
2,ANIEDIT.RC
2,ANIFILE.C
2,ANIMSG.MC
2,ANISTR.C
2,MAKEFILE
2,NEWCOLR.CUR

[Files-mstools-samples-sdktools-ddespy]
2,DDESPY.C
2,DDESPY.DLG
2,DDESPY.H
2,DDESPY.ICO
2,DDESPY.RC
2,DIALOG.H
2,GLOBALS.H
2,LISTS.C
2,LISTS.H
2,MAKEFILE
2,TESTSUBS.C

[Files-mstools-samples-sdktools-dlgedit-res]
2,ABOTTOM.BMP 
2,AHORZ.BMP   
2,ALEFT.BMP   
2,APBBOTTM.BMP
2,APBRIGHT.BMP
2,ARIGHT.BMP  
2,ASPCHORZ.BMP
2,ASPCVERT.BMP
2,ASZHGHT.BMP 
2,ASZWIDTH.BMP
2,ATOP.BMP    
2,AVERT.BMP   
2,CTCHECK.BMP 
2,CTCOMBO.BMP 
2,CTCUSTOM.BMP
2,CTEDIT.BMP  
2,CTFRAME.BMP 
2,CTGROUP.BMP 
2,CTHSCROL.BMP
2,CTICON.BMP  
2,CTLIST.BMP  
2,CTPUSH.BMP  
2,CTRADIO.BMP 
2,CTRECT.BMP  
2,CTTEXT.BMP  
2,CTVSCROL.BMP
2,DLGEDIT.ICO 
2,DROPTOOL.CUR
2,HANDLE.BMP  
2,HANDLE2.BMP 
2,ICONICON.ICO
2,INSERT.CUR  
2,MOVE.CUR    
2,OUTSEL.CUR  
2,TABSTOP.BMP 
2,TDCHECK.BMP 
2,TDCOMBO.BMP 
2,TDCUSTOM.BMP
2,TDEDIT.BMP  
2,TDFRAME.BMP 
2,TDGROUP.BMP 
2,TDHSCROL.BMP
2,TDICON.BMP  
2,TDLIST.BMP  
2,TDPOINTR.BMP
2,TDPUSH.BMP  
2,TDRADIO.BMP 
2,TDRECT.BMP  
2,TDTEXT.BMP  
2,TDVSCROL.BMP
2,TUCHECK.BMP 
2,TUCOMBO.BMP 
2,TUCUSTOM.BMP
2,TUEDIT.BMP  
2,TUFRAME.BMP 
2,TUGROUP.BMP 
2,TUHSCROL.BMP
2,TUICON.BMP  
2,TULIST.BMP  
2,TUPOINTR.BMP
2,TUPUSH.BMP  
2,TURADIO.BMP 
2,TURECT.BMP  
2,TUTEXT.BMP
2,TUVSCROL.BMP

[Files-mstools-samples-sdktools-dlgedit]
2,ADDCTRL.C  
2,CTRLPROC.C 
2,CUSTCNTL.C 
2,DIALOGS.C  
2,DIALOGS.DLG
2,DIALOGS.H  
2,DLGEDIT.C  
2,DLGEDIT.H  
2,DLGEDIT.HLP
2,DLGEDIT.RC 
2,DLGEXTRN.H 
2,DLGFUNCS.H 
2,DLGHELP.H  
2,DRAG.C     
2,FILE.C     
2,GLOBALS.C  
2,GROUPDLG.C 
2,IDS.H      
2,INCLUDE.C  
2,MAKEFILE   
2,MENU.C     
2,README.TXT 
2,RESLIST.C  
2,RESTODLG.C 
2,RESUTIL.C  
2,RWDLG.C    
2,RWINC.C    
2,RWRES.C    
2,SELECT.C   
2,STATUS.C   
2,STYLES.C   
2,TOOLBOX.C  
2,UTIL.C     
2,VIEWINC.C

[Files-mstools-samples-sdktools-fontedit]
2,FCNTL.H
2,FILLCLR.CUR
2,FILLCPY.CUR
2,FILLHAT.CUR
2,FILLINV.CUR
2,FILLLFT.CUR
2,FILLPST.CUR
2,FILLSOL.CUR
2,FILLTOP.CUR
2,FONTCHAR.C
2,FONTCVT.C
2,FONTDLG.C
2,FONTEDIT.C
2,FONTEDIT.H
2,FONTEDIT.ICO
2,FONTEDIT.RC
2,FONTHEAD.C
2,FONTLOAD.C
2,MAKEFILE
2,README.TXT
2,SAMPLE.FNT
2,TYPECVT.C
2,TYPECVT.H

[Files-mstools-samples-sdktools-image-drwatson-Alpha]
2,CONTEXT.C
2,DISASM.C
2,DISASM.H
2,OPTABLE.C
2,OPTABLE.H
2,REGS.C
2,REGS.H
2,STRINGS.H
2,WALK.C

[Files-mstools-samples-sdktools-image-drwatson-i386]
2,CONTEXT.C
2,DISASM.C
2,DISASM.H
2,REGS.C
2,REGS.H
2,WALK.C

[Files-mstools-samples-sdktools-image-drwatson-include]
2,CV.H
2,DRWATSON.H
2,PROTO.H
2,RESOURCE.H

[Files-mstools-samples-sdktools-image-drwatson-mips]
2,CONTEXT.C
2,DISASM.C
2,DISASM.H
2,REGS.C
2,REGS.H
2,WALK.C

[Files-mstools-samples-sdktools-image-drwatson]
2,BROWSE.C
2,CONTROLS.C
2,DEBUG.C
2,DIALOGS.DLG
2,DRWATSON.ICO
2,DRWATSON.RC
2,DRWTSN32.C
2,ERROR.C
2,EVENTLOG.C
2,LOG.C
2,MAKEFILE
2,MESSAGES.MC
2,MODULE.C
2,NOTIFY.C
2,PROCESS.C
2,REGISTRY.C
2,SYMBOLS.C
2,UI.C
2,UTIL.C

[Files-mstools-samples-sdktools-image-imagehlp-Alpha]
2,UNDECSYM.OBJ

[Files-mstools-samples-sdktools-image-imagehlp-i386]
2,UNDECSYM.OBJ

[Files-mstools-samples-sdktools-image-imagehlp-mips]
2,UNDECSYM.OBJ

[Files-mstools-samples-sdktools-image-imagehlp]
2,CHECKSUM.C
2,DEBUG.C
2,IMAGEDIR.C
2,IMAGEHLP.DEF
2,MAKEFILE

[Files-mstools-samples-sdktools-image-include]
2,IMAGEHLP.H

[Files-mstools-samples-sdktools-image-symedit]
2,COFFTOCV.H
2,CV.C
2,CV.H
2,CVCOMMON.C
2,CVCOMMON.H
2,CVEXEFMT.H
2,CVINFO.H
2,CVTYPES.H
2,FILE.C
2,MAKEFILE
2,STRINGS.C
2,STRINGS.H
2,SYMCVT.C
2,SYMCVT.H
2,SYMEDIT.C
2,SYMEDIT.RC
2,SYMTOCV.C
2,SYMTOCV.H
2,TYPES.H

[Files-mstools-samples-sdktools-imagedit-res]
2,BRUSH.CUR
2,CROSS.CUR
2,FLOOD.CUR
2,HOTSPOT.CUR
2,IMAGEDIT.ICO
2,PENCIL.CUR
2,TDBRUSH.BMP
2,TDCIRCLE.BMP
2,TDFLOOD.BMP
2,TDHOTSPT.BMP
2,TDLINE.BMP
2,TDPENCIL.BMP
2,TDRECT.BMP
2,TDSCIRCL.BMP
2,TDSELECT.BMP
2,TDSRECT.BMP
2,TUBRUSH.BMP
2,TUCIRCLE.BMP
2,TUFLOOD.BMP
2,TUHOTSPT.BMP
2,TULINE.BMP
2,TUPENCIL.BMP
2,TURECT.BMP
2,TUSCIRCL.BMP
2,TUSELECT.BMP
2,TUSRECT.BMP

[Files-mstools-samples-sdktools-imagedit]
2,COLORWP.C
2,DEVINFO.C
2,DIALOGS.DLG
2,DIALOGS.H
2,EDITHLP.HLP
2,FILE.C
2,GLOBALS.C
2,GLOBALS.H
2,ICCLIP.C
2,IDS.H
2,IEFUNCS.H
2,IEHELP.H
2,IMAGE.C
2,IMAGEDC.C
2,MAKEFILE
2,IMAGEDIT.C
2,IMAGEDIT.H
2,IMAGEDIT.HLP
2,IMAGEDLG.C
2,IMAGLINK.C
2,IMAGUNDO.C
2,MENUCMD.C
2,PROPBAR.C
2,RES.RC
2,RWBMP.C
2,RWICOCUR.C
2,RWPAL.C
2,TOOLBOX.C
2,UTIL.C
2,VIEWWP.C
2,WORKWP.C

[Files-mstools-samples-sdktools-mc]
2,MAKEFILE
2,MC.C
2,MC.H
2,MC.TXT
2,MCLEX.C
2,MCOUT.C
2,MCPARSE.C
2,MCUTIL.C

[Files-mstools-samples-sdktools-netwatch]
2,BITMAP.C
2,COMMON.VER
2,DATETIME.C
2,FILEBMPS.BMP
2,GLOBALS.C
2,MAKEFILE
2,NET.C
2,NETWATCH.C
2,NETWATCH.DLG
2,NETWATCH.H
2,NETWATCH.RC
2,NETWATCH.RCV
2,OFF.ICO
2,ON.ICO
2,RCIDS.H
2,UTILS.C
2,VERSION.H

[Files-mstools-samples-sdktools-perfmon]
2,ADDLINE.C
2,ADDLINE.DLG
2,ADDLINE.H
2,ADDLOG.C
2,ADDLOG.DLG
2,ADDLOG.H
2,ALERT.C
2,ALERT.H
2,ALERTS.BMP
2,ALRTDISP.DLG
2,ALRTOPTN.DLG
2,BOOKMARK.C
2,BOOKMARK.H
2,CHOSECOM.C
2,CHOSECOM.DLG
2,COMMAND.C
2,COMMAND.H
2,COUNTERS.C
2,COUNTERS.H
2,DATASRC.C
2,DATASRC.DLG
2,DATASRC.H
2,DIALOGS.C
2,DIALOGS.H
2,DISPOPTN.H
2,DLGIDS.H
2,EXPORT.C
2,EXPORT.DLG
2,FILEOPEN.C
2,FILEOPEN.H
2,FILESAVE.C
2,FILEUTIL.C
2,FILEUTIL.H
2,GLOBALS.H
2,GRAFDATA.C
2,GRAFDATA.H
2,GRAFDISP.C
2,GRAFDISP.H
2,GRAPH.C
2,GRAPH.H
2,HELPLINE.RC
2,INIT.C
2,INIT.H
2,INTRLINE.C
2,INTRLINE.H
2,LEGEND.C
2,LEGEND.H
2,LINE.C
2,LINE.H
2,LOG.C
2,LOG.H
2,LOGDISP.DLG
2,LOGOPTNS.C
2,LOGOPTNS.DLG
2,LOGOPTNS.H
2,LOGS.BMP
2,MAKEFILE
2,MEMORY.C
2,MENUIDS.H
2,MENUS.RC
2,OWNDRAW.H
2,PERFDATA.C
2,PERFDATA.H
2,PERFERR.H
2,PERFMON.BMP
2,PERFMON.C
2,PERFMON.H
2,PERFMON.ICO
2,PERFMON.RC
2,PERFMOPS.C
2,PERFMOPS.H
2,PERFMRC.H
2,PLAYBACK.C
2,PLAYBACK.H
2,PMEMORY.H
2,PMHELPID.H
2,PMRC.DLG
2,PRINT.H
2,REGISTRY.C
2,REGISTRY.H
2,REPORT.C
2,REPORT.H
2,RPTOPTNS.C
2,RPTOPTNS.DLG
2,RPTOPTNS.H
2,SIZES.H
2,STATUS.C
2,STATUS.H
2,STRIDS.H
2,STRINGS.RC
2,SYSTEM.C
2,SYSTEM.H
2,TIMEFRM.C
2,TIMEFRM.DLG
2,TIMEFRM.H
2,TIMELINE.C
2,TIMELINE.H
2,TOOLBAR.C
2,TOOLBAR.H
2,TYPEDEFS.H
2,UTILS.C
2,UTILS.H
2,VALUEBAR.C
2,VALUEBAR.H
2,WINHELPR.H

[Files-mstools-samples-sdktools-porttool]
2,MAKEFILE
2,PORT.C
2,PORT.DEF
2,PORT.H
2,PORT.INI
2,PORT.RC
2,PORTPRIV.H
2,PORTSTAT.ICO
2,PORTTOOL.C
2,PORTTOOL.DEF
2,PORTTOOL.DLG
2,PORTTOOL.H
2,PORTTOOL.ICO
2,PORTTOOL.RC
2,PTBKPORT.C
2,PTDLGS.C
2,PTFILE.C
2,PTFIND.C
2,PTPRINT.C

[Files-mstools-samples-sdktools-pviewer]
2,CNTRDATA.C
2,INSTDATA.C
2,OBJDATA.C   
2,PERFDATA.C  
2,PERFDATA.H  
2,PVIEW.ICO   
2,PVIEW.RC    
2,PVIEWDAT.C  
2,PVIEWDAT.H  
2,PVIEWDLG.DLG
2,PVIEWDLG.H  
2,MAKEFILE
2,PVIEWER.C
2,README.TXT

[Files-mstools-samples-sdktools-remote]
2,CLIENT.C
2,MAKEFILE
2,REMOTE.C
2,REMOTE.H
2,SERVER.C

[Files-mstools-samples-sdktools-rshell-client]
2,MAKEFILE
2,RCMD.C

[Files-mstools-samples-sdktools-rshell-doscli]
2,RCMDDOS.C
2,RCMDDOS.MAK

[Files-mstools-samples-sdktools-rshell-server]
2,ASYNC.C
2,ASYNC.H
2,PIPE.C
2,PIPE.H
2,RCMDSRV.C
2,RCMDSRV.H
2,MAKEFILE
2,SESSION.C
2,SESSION.H

[Files-mstools-samples-sdktools-spy-app]
2,DIALOGS.C  
2,DIALOGS.DLG
2,DIALOGS.H  
2,HOOK.C     
2,MAKEFILE   
2,MISC.C     
2,SPY.C      
2,SPY.H      
2,SPY.ICO    
2,SPY.RC     
2,SPYFUNCS.H 
2,WM.C       
2,WPRINTF.C  
2,WPRINTF.H  

[Files-mstools-samples-sdktools-spy-dll]
2,HOOK.C  
2,HOOK.DEF
2,MAKEFILE

[Files-mstools-samples-sdktools-spy]
2,HOOK.H
2,README.TXT

[Files-mstools-samples-sdktools-uconvert]
2,DIALOGS.C
2,INSTALL.C
2,INSTALL.H
2,MAKEFILE
2,UCONVERT.C
2,UCONVERT.H
2,UCONVERT.HLP
2,UCONVERT.HPJ
2,UCONVERT.ICO
2,UCONVERT.RC
2,UCONVERT.RTF

[Files-mstools-samples-sdktools-walker]
2,MAKEFILE
2,PDEBUG.C
2,PEFILE.C
2,PEFILE.DEF
2,PEFILE.H
2,PEFILE.RC
2,PROBE.C
2,PROBE.DEF
2,PROBE.RC
2,PROCSTAT.ICO
2,PSTAT.C
2,PVIEW.C
2,PWALK.C
2,PWALK.H
2,PWALK.ICO
2,PWALK.RC
2,PWALKIO.C
2,SYSSTAT.ICO

[Files-mstools-samples-sdktools-winat]
2,DOWNDEF.BMP
2,DOWNDEP.BMP
2,LISTHAPI.H
2,LISTHSCR.C
2,LISTHSCR.H
2,MAKEFILE
2,MYNETMSG.H
2,UPDEF.BMP
2,UPDEP.BMP
2,WINAT.BMP
2,WINAT.C
2,WINAT.DLG
2,WINAT.H
2,WINAT.HPJ
2,WINAT.ICO
2,WINAT.RC
2,WINAT.RCV
2,WINAT.RTF

[Files-mstools-samples-sdktools-windiff]
2,BAR.C
2,COMPITEM.C
2,COMPITEM.H
2,COMPLIST.C
2,COMPLIST.H
2,FILE.C
2,FILE.H
2,GBIT.C
2,GDATE.C
2,GMEM.C
2,GUTILS.C
2,GUTILS.DEF
2,GUTILS.DLG
2,GUTILS.DLL
2,GUTILS.H
2,GUTILS.RC
2,GUTILSRC.H
2,HORZLINE.CUR
2,LINE.C
2,LINE.H
2,LIST.C
2,LIST.H
2,MAKEFILE
2,README.TXT
2,SCANDIR.C
2,SCANDIR.H
2,SECTION.C
2,SECTION.H
2,STATE.H
2,STATUS.C
2,TABLE.C
2,TABLE.H
2,TPAINT.C
2,TPRINT.C
2,TPRIV.H
2,TREE.C
2,TREE.H
2,TSCROLL.C
2,UTILS.C
2,VERTLINE.CUR
2,VIEW.C
2,VIEW.H
2,WDIFFRC.H
2,WINDIFF.C
2,WINDIFF.DLG
2,WINDIFF.H
2,WINDIFF.ICO
2,WINDIFF.RC

[Files-mstools-samples-sdktools-zoomin]
2,MAKEFILE
2,ZOOMIN.C
2,ZOOMIN.H
2,ZOOMIN.ICO
2,ZOOMIN.RC

[Files-mstools-samples-select]
2,DEMO.C
2,DEMO.DEF
2,DEMO.H
2,DEMO.RC
2,MAKEFILE
2,SELECT.C
2,SELECT.DEF
2,SELECT.H

[Files-mstools-samples-service]
2,CLIENT.C  
2,INSTSRV.C 
2,MAKEFILE  
2,README.TXT
2,SIMPLE.C  

[Files-mstools-samples-showdib]
2,CRAK1.BMP
2,DIB.C
2,DLGOPEN.C
2,DRAWDIB.C
2,PRINT.C
2,MAKEFILE
2,SHOWDIB.C
2,SHOWDIB.DEF
2,SHOWDIB.DLG
2,SHOWDIB.H
2,SHOWDIB.ICO
2,SHOWDIB.RC

[Files-mstools-samples-sidcln]
2,MAKEFILE
2,README.TXT
2,SIDCLEAN.C

[Files-mstools-samples-simple]
2,MAKEFILE
2,SIMPLE.C

[Files-mstools-samples-snmp-snmputil]
2,MAKEFILE
2,SNMPUTIL.C

[Files-mstools-samples-snmp-testdll]
2,MAKEFILE
2,TESTDLL.C
2,TESTDLL.DEF
2,TESTMIB.C
2,TESTMIB.H

[Files-mstools-samples-spincube]
2,MAKEFILE
2,PAINT.C
2,PAINT.H
2,README.TXT
2,SPINCUBE.C
2,SPINCUBE.DEF
2,SPINCUBE.H
2,SPINCUBE.RC
2,SPINTEST.C
2,SPINTEST.DEF
2,SPINTEST.DLG
2,SPINTEST.H
2,SPINTEST.ICO
2,SPINTEST.RC

[Files-mstools-samples-takeown]
2,MAKEFILE
2,TAKEOWN.C

[Files-mstools-samples-ttfonts]
2,ALLFONT.C
2,BMDEVICE.BMP
2,BMTT.BMP
2,DIALOGS.C
2,DISPLAY.C
2,MAKEFILE
2,README.TXT
2,TOOLBAR.C
2,TTFONTS.C
2,TTFONTS.DEF
2,TTFONTS.H
2,TTFONTS.HPJ
2,TTFONTS.ICO
2,TTFONTS.RC
2,TTFONTS.RTF

[Files-mstools-samples-wdbgexts]
2,README.TXT
2,MAKEFILE
2,WDBGEXTS.C
2,WDBGEXTS.DEF

[Files-mstools-samples-wsock]
2,DIALOGS.C 
2,MAKEFILE  
2,README.TXT
2,WSOCK.C   
2,WSOCK.DEF 
2,WSOCK.DLG 
2,WSOCK.H   
2,WSOCK.ICO 
2,WSOCK.RC  

[Files-mstools-samples-wxform]
2,MAKEFILE
2,README.TXT
2,WXFORM.C
2,WXFORM.DEF
2,WXFORM.H
2,WXFORM.ICO
2,WXFORM.RC

[Files-mstools-samples]
2,MAKEALL.BAT

[Files-mstools]
2,SETENV.BAT

[Files-support-debug-Alpha-symbols-dll]
2,ADVAPI32.DBG
2,COMDLG32.DBG
2,CRTDLL.DBG
2,DLCAPI.DBG
2,GDI32.DBG
2,INETMIB1.DBG
2,KERNEL32.DBG
2,LMMIB2.DBG
2,LZ32.DBG
2,MGMTAPI.DBG
2,MPR.DBG
2,NDDEAPI.DBG
2,NETAPI32.DBG
2,NTDLL.DBG
2,OLECLI32.DBG
2,OLESVR32.DBG
2,RASAPI32.DBG
2,RPCNS4.DBG
2,RPCRT4.DBG
2,SHELL32.DBG
2,USER32.DBG
2,VDMDBG.DBG
2,VERSION.DBG
2,WIN32SPL.DBG
2,WINMM.DBG
2,WINSTRM.DBG
2,WSOCK32.DBG

[Files-support-debug-i386-symbols-dll]
2,ADVAPI32.DBG
2,COMDLG32.DBG
2,CRTDLL.DBG
2,DLCAPI.DBG
2,GDI32.DBG
2,INETMIB1.DBG
2,KERNEL32.DBG
2,LMMIB2.DBG
2,LZ32.DBG
2,MGMTAPI.DBG
2,MPR.DBG
2,NDDEAPI.DBG
2,NETAPI32.DBG
2,NTDLL.DBG
2,OLECLI32.DBG
2,OLESVR32.DBG
2,RASAPI32.DBG
2,RPCNS4.DBG
2,RPCRT4.DBG
2,SHELL32.DBG
2,USER32.DBG
2,VDMDBG.DBG
2,VERSION.DBG
2,WIN32SPL.DBG
2,WINMM.DBG
2,WINSTRM.DBG
2,WSOCK32.DBG

[Files-support-debug-mips-symbols-dll]
2,ADVAPI32.DBG
2,COMDLG32.DBG
2,CRTDLL.DBG
2,DLCAPI.DBG
2,GDI32.DBG
2,INETMIB1.DBG
2,KERNEL32.DBG
2,LMMIB2.DBG
2,LZ32.DBG
2,MGMTAPI.DBG
2,MPR.DBG
2,NDDEAPI.DBG
2,NETAPI32.DBG
2,NTDLL.DBG
2,OLECLI32.DBG
2,OLESVR32.DBG
2,RASAPI32.DBG
2,RPCNS4.DBG
2,RPCRT4.DBG
2,SHELL32.DBG
2,USER32.DBG
2,VDMDBG.DBG
2,VERSION.DBG
2,WIN32SPL.DBG
2,WINMM.DBG
2,WINSTRM.DBG
2,WSOCK32.DBG

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.