home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CICA NT 1997 April
/
CICA_NT_CD-ROM_Walnut_Creek_April_1997.iso
/
sysutil
/
ntreskit.exe
/
INSTALL.INF
< prev
next >
Wrap
INI File
|
1993-09-16
|
48KB
|
1,616 lines
;***********************************************************************
; SOURCE MEDIA DESCRIPTION
; ------------------------
;***********************************************************************
[Source Media Descriptions]
1= "Windows NT Resource Kit CD-ROM" , TAGFILE = disk1
2 = "Windows NT Resource Kit CD-ROM" , TAGFILE = disk2
3= "Windows NT Resource Kit CD-ROM" , TAGFILE = disk3
;***********************************************************************
; 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 = "\RESKIT"
;
; Installation mode
;
MinInteract = $(Radio1)
MaxInteract = $(Radio2)
STF_INSTALL_MODE = $(MaxInteract)
;
; 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
[VarsI386]
;
MinToolsSize = 11
MaxToolsSize = 11
PosixSize = 16246528
AdminOtherSize = 13342739
RegistrySize = 11227712
PerformanceSize = 7611714
AnimateSize = 22682112
SetupTroubleSize = 3228040
;
; Installation options
;
DoPosix = $(Chosen)
DoAdminOther = $(Chosen)
DoRegistry = $(Chosen)
DoPerformance = $(Chosen)
DoAnimate = $(Chosen)
DoSetupTrouble = $(Chosen)
;
; Options to disable
;
DisableList = {}
[VarsMips]
;
MinToolsSize = 14
MaxToolsSize = 14
PosixSize = 15946528
AdminOtherSize = 13342739
RegistrySize = 11227712
PerformanceSize = 10034544
AnimateSize = 15987384
SetupTroubleSize = 3698224
;
; Installation options
;
DoPosix = $(Chosen)
DoAdminOther = $(Chosen)
DoRegistry = $(Chosen)
DoPerformance = $(Chosen)
DoAnimate = $(Chosen)
DoSetupTrouble = $(Chosen)
;
; Options to disable
;
DisableList = {}
[VarsAlpha]
;
MinToolsSize = 14
MaxToolsSize = 14
PosixSize = 15946528
AdminOtherSize = 13342739
RegistrySize = 11227712
PerformanceSize = 10034544
AnimateSize = 15987384
SetupTroubleSize = 3698224
;
; Installation options
;
DoPosix = $(Chosen)
DoAdminOther = $(Chosen)
DoRegistry = $(Chosen)
DoPerformance = $(Chosen)
DoAnimate = $(Chosen)
DoSetupTrouble = $(Chosen)
;
; Options to disable
;
DisableList = {}
[StringsENG]
String1 = "Setup cannot install on the current processor."$(!LF)$(!LF)+
"Cannot proceed with install."
String4 = "Setup could not copy the Windows NT Resource Kit 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 Windows NT Resource Kit 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 Windows NT Resource Kit 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 Windows NT Resource Kit 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."
;--------------------
; 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 = "Windows NT Resource Kit Setup"
DlgText = "Welcome to Setup."$(LF)$(LF)+
"The Setup program for the Microsoft Windows NT Resource Kit "+
"will install useful tools and utility programs on your computer."$(LF)$(LF)+
"To install the Windows NT Resource Kit utilities now, click Continue or press "+
"Enter."$(LF)$(LF)+
"To exit Setup without installing the Windows NT Resource Kit utilities, 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 relies on Setup to make decisions, so setting up "+
"the Windows NT Resource Kit is quick and easy. "$(LF)$(LF)+
"Custom Setup lets you choose which utility "+
"programs are installed and which disk Setup copies the files to. "$(LF)$(LF)+
"Choose one of the two Setup methods and then click Continue:"
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 = "Windows NT Resource Kit"
DlgText = "Setup recommends installing the Windows NT Resource Kit 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 = "Windows NT Resource Kit 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 = "Windows NT Resource Kit 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 = "POSIX Tools"
Check2Text = "Administration/Desktop"
Check3Text = "Registry Tools"
Check4Text = "Performance and Monitoring"
Check5Text = "Animated Cursors"
Check6Text = "Setup and Troubleshooting"
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 = { $(DoPosix), $(DoAdminOther), $(DoRegistry), $(DoPerformance), $(DoAnimate), $(DoSetupTrouble) }
CheckItemsInSizes = { $(PosixSize), $(AdminOtherSize), $(RegistrySize), $(PerformanceSize), $(AnimateSize), $(SetupTroubleSize) }
OptionsGreyed = $(DisableList)
;--------------------------------------------------------------
; k) SETUP DONE - RESTART DIALOG
;--------------------------------------------------------------
[SetupDoneDlgENG]
DlgType = "Info"
DlgTemplate = "RESTART"
Caption = "Windows NT Resource Kit Setup"
DlgText = "The Microsoft Windows NT Resource Kit is now installed."
Windows = "Exit to &Windows NT"
;--------------------------------------------------------------
; k) SETUP NOT DONE - RESTART DIALOG
;--------------------------------------------------------------
[SetupNotDoneDlgENG]
DlgType = "Info"
DlgTemplate = "RESTART"
Caption = "Windows NT Resource Kit Setup"
DlgText = "The Microsoft Windows NT Resource Kit has not been installed "+
"correctly. To install the Windows NT Resource Kit, make sure "+
"you have enough free disk space and start Setup again."
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 = "Windows NT Resource Kit Setup"
ProCancel = "Cance&l"
ProCancelMsg = "Windows NT Resource Kit 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 "Windows NT Resource Kit 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
;
; 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
goto setdestination
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 = +
LibraryProcedure MstoolsDir, $(LIBHANDLE), AppendBackSlash $(MstoolsDir)
;
; First find all the destination directories for the tools
;
set MstoolsPath = $(MstoolsDir)
set SetupTroublePath = $(MstoolsDir)SetupTrouble
;
; mstool install. ask user for options on mstool install.
;
mstools = +
ifstr(i) $(STF_INSTALL_MODE) == $(MaxInteract)
goto mstoolsinstall
endif
ifint $(DestVolumeFree) < $(MaxToolsSize)
set DoPosix = $(NotChosen)
set DoAdminOther = $(NotChosen)
set DoRegistry = $(NotChosen)
set DoPerformance = $(NotChosen)
set DoAnimate = $(NotChosen)
set DoSetupTrouble = $(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 DoPosix = *($(CheckItemsOut), 1)
set DoAdminOther = *($(CheckItemsOut), 2)
set DoRegistry = *($(CheckItemsOut), 3)
set DoPerformance = *($(CheckItemsOut), 4)
set DoAnimate = *($(CheckItemsOut), 5)
set DoSetupTrouble = *($(CheckItemsOut), 6)
ifstr(i) $(DoAdminOther) == $(NotChosen)
set DoRegistry = $(NotChosen)
endif
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
;
; Complete the copying of files added by other options.
;
; Alter the CFG/INI files as needed by the options.
;
; print information screen to restart
;
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 mstoolsconfig
else
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String4)
goto setupnotdone
endif
StartWait
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}
set FSet$($)Var = FALSE
EndForListDo
;
; add the SetupTrouble and setup variables if SetupTrouble is chosen
;
;
; For the Path,Lib and Include variables see if we can prepend them
; onto the current variables
;
; this will do it
ForListDo {Path}
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)
ifstr(i) $(Var) == "Path"
ifstr(i) $(PRIVILEGES) == "SYSTEM"
shell "" AppendNewValueToEnvVar $(VarValue) $(Mstools$(Var))
else
shell "" PrependNewValueToEnvVar $(VarValue) $(Mstools$(Var))
endif
else
shell "" PrependNewValueToEnvVar $(VarValue) $(Mstools$(Var))
endif
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
;
; modify all the environment variables
;
ForListDo {Path}
;
; 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
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 Windows NT Resource Kit Setup"
STF_MB_TEXT = "Windows NT Resource Kit 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 = "Resource Kit"
Create$(Common)ProgManGroup $(ToolsGroup) ""
Show$(Common)ProgManGroup $(ToolsGroup), 1
Create$(Common)ProgmanItem $(ToolsGroup) , "Read Me" $(MstoolsDir)"readme.wri" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Resource Kit Tools Help" $(MstoolsDir)"rktools.hlp" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Adapter Card Help" $(MstoolsDir)"ntcard.hlp" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Troubleshooting Flowcharts" $(MstoolsDir)"trouble.hlp" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Registry Help" $(MstoolsDir)"regentry.hlp" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Hardware Compatibility List 7/1993" $(MstoolsDir)"jul93hcl.hlp" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Net Watcher" $(MstoolsDir)"netwatch.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Scheduler" $(MstoolsDir)"winat.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Domain Monitor" $(MstoolsDir)"dommon.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Browser Monitor" $(MstoolsDir)"browmon.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Server Manager for Domains" $(MstoolsDir)"srvmgr.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "User Manager for Domains" $(MstoolsDir)"usrmgr.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "User Profile Editor" $(MstoolsDir)"upedit.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Process Viewer" $(MstoolsDir)"pviewer.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Animated Cursor Creator" $(MstoolsDir)"aniedit.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Imagedit" $(MstoolsDir)"imagedit.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Quick Slice" $(MstoolsDir)"qslice.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Unicode Converter" $(MstoolsDir)"uconvert.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "TopDesk" $(MstoolsDir)"topdesk.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "Win VTP" $(MstoolsDir)"winvtp.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "WinDiff" $(MstoolsDir)"windiff.exe" "" 0
Create$(Common)ProgmanItem $(ToolsGroup) , "POSIX Utility Help" $(MstoolsDir)"posix.wri" "" 0
Show$(Common)ProgManGroup $(ToolsGroup), 6
exit
;************************************************************************
; *
; MSTOOLS SUPPORT *
; *
;************************************************************************
[Install-CopyToolsFiles]
set STF_VITAL = ""
; split-string PATHCOMP $(!STF_SRCINFPATH) \
; set STF_SRCDIR = ""
; forlistdo $(PATHCOMP)
; ifstr(i) $($) != "install.inf"
; set STF_SRCDIR = $(STF_SRCDIR)$($)
; endif
; endforlistdo
CreateDir $(MstoolsDir)
ifstr(i) $(STF_PLATFORM) == $(PlatformID_I386)
CreateDir $(MstoolsDir)\posix
endif
AddSectionFilesToCopyList Files-always-reskit $(STF_SRCDIR) $(MstoolsDir)
; ifstr(i) $(STF_PLATFORM) == $(PlatformID_I386)
AddSectionFilesToCopyList Files-always-reskit-posix $(STF_SRCDIR) $(MstoolsDir)posix
; endif
AddSectionFilesToCopyList Files-always-system32 $(STF_SRCDIR) $(!STF_WINDOWSPATH)\system32
; ifstr(i) $(!DoAdminOther) == $(!Chosen)
; AddSectionFilesToCopyList Files-admin $(STF_SRCDIR) $(MstoolsDir)
; endif
;
; ifstr(i) $(!DoAnimate) == $(!Chosen)
; AddSectionFilesToCopyList Files-animate $(STF_SRCDIR) $(MstoolsDir)
; endif
;
; ifstr(i) $(!DoPerformance) == $(!Chosen)
; AddSectionFilesToCopyList Files-performance $(STF_SRCDIR) $(MstoolsDir)
; endif
;
; ifstr(i) $(!DoPosix) == $(!Chosen)
; AddSectionFilesToCopyList Files-posix $(STF_SRCDIR) $(MstoolsDir)
; endif
;
; ifstr(i) $(!DoRegistry) == $(!Chosen)
; AddSectionFilesToCopyList Files-registry $(STF_SRCDIR) $(MstoolsDir)
; endif
;
; ifstr(i) $(!DoSetupTrouble) == $(!Chosen)
; AddSectionFilesToCopyList Files-setup $(STF_SRCDIR) $(MstoolsDir)
; endif
exit
[Install-All-Files-Now]
CopyFilesInCopyList
exit
;
; REGULAR Resource Kit Tools
;
[Files-always-reskit-posix]
2, AR.EXE , SIZE=35328
2, CAT.EXE , SIZE=41472
2, CC.EXE , SIZE=39424
2, CHMOD.EXE , SIZE=46592
2, CHOWN.EXE , SIZE=43520
2, CP.EXE , SIZE=43520
2, DEVSRV.EXE , SIZE=72192
2, FIND.EXE , SIZE=71680
2, GREP.EXE , SIZE=60416
2, LD.EXE , SIZE=36864
2, LN.EXE , SIZE=39424
2, LS.EXE , SIZE=52736
2, MAKE.EXE , SIZE=159232
2, MKDIR.EXE , SIZE=34816
2, MV.EXE , SIZE=38912
2, RM.EXE , SIZE=44544
2, RMDIR.EXE , SIZE=32768
2, SH.EXE , SIZE=162816
2, TOUCH.EXE , SIZE=36352
2, VI.EXE , SIZE=140800
2, WC.EXE , SIZE=37376
[Files-always-reskit]
2, ANIEDIT.EXE , SIZE=48128
2, BROWMON.EXE , SIZE=139264
2, BROWMON.HLP , SIZE=20992
2, BROWSTAT.EXE , SIZE=49664
2, CHOICE.EXE , SIZE=26624
2, COMPRESS.EXE , SIZE=45056
2, README.WRI , SIZE=39936
2, DELPART.EXE , SIZE=126976
2, DIRUSE.EXE , SIZE=45056
2, DOMMON.EXE , SIZE=150528
2, DOMMON.HLP , SIZE=29696
2, DRIVERS.EXE , SIZE=29184
2, DUMPEL.EXE , SIZE=38912
2, EXETYPE.EXE , SIZE=36352
2, EXETYPE.INI , SIZE=4608
2, FATBOOT.BIN , SIZE=512
2, FIFO.CMD , SIZE=1024
2, FIFO_OFF.INI , SIZE=512
2, FIFO_ON.INI , SIZE=512
2, FLOPLOCK.EXE , SIZE=36864
2, FTPCTRS.DLL , SIZE=13824
2, FTPCTRS.H , SIZE=2048
2, FTPCTRS.INI , SIZE=3584
2, FTPCTRS.REG , SIZE=512
2, FTPINST.BAT , SIZE=2560
2, GETBS.EXE , SIZE=16896
2, GRPTOREG.EXE , SIZE=35840
2, GUTILS.DLL , SIZE=59904
2, IMAGEDIT.EXE , SIZE=102912
2, IMAGEDIT.HLP , SIZE=82432
2, INSTALLD.CMD , SIZE=1024
2, INSTSRV.EXE , SIZE=35328
2, JUL93HCL.HLP , SIZE=62464
2, JUL93HCL.IND , SIZE=153600
2, LMMIB2.MIB , SIZE=16896
2, LOADACCT.EXE , SIZE=80384
2, LODCTR.EXE , SIZE=54272
2, MIB_II.MIB , SIZE=105984
2, MIBCC.EXE , SIZE=31744
2, NETSVC.EXE , SIZE=30208
2, NETWATCH.EXE , SIZE=49664
2, NTCARD.HLP , SIZE=1210880
2, NTDETECT.COM , SIZE=27136
2, OS2API.TXT , SIZE=18432
2, PERFMTR.EXE , SIZE=31232
2, PERMS.EXE , SIZE=27648
2, PMON.EXE , SIZE=28160
2, POSIX.WRI , SIZE=224768
2, PROFILE.INI , SIZE=5120
2, PSTAT.EXE , SIZE=26624
2, PVIEWER.EXE , SIZE=52736
2, QSLICE.EXE , SIZE=51200
2, RASUSERS.EXE , SIZE=32256
2, REGBACK.EXE , SIZE=29696
2, REGENTRY.HLP , SIZE=347136
2, REGENTRY.IND , SIZE=489472
2, REGINI.EXE , SIZE=51200
2, REGREST.EXE , SIZE=28672
2, REGTOGRP.EXE , SIZE=28672
2, REMOTE.EXE , SIZE=52736
2, REMOVE.BAT , SIZE=1536
2, REPAIR.EXE , SIZE=143360
2, RESTFILE.EXE , SIZE=25088
2, RESTKEYS.EXE , SIZE=86528
2, RKTOOLS.HLP , SIZE=175104
2, SCHEMES.BAT , SIZE=3072
2, SCHEMES.CPL , SIZE=38912
2, SCOPY.EXE , SIZE=22528
2, SHARED32.INI , SIZE=1024
2, SLEEP.EXE , SIZE=22528
2, SMBTRACE.EXE , SIZE=104448
2, SMI.MIB , SIZE=4608
2, SNMPUTIL.EXE , SIZE=16896
2, SRVMGR.EXE , SIZE=375296
2, SRVMGR.HLP , SIZE=124416
2, TOPDESK.EXE , SIZE=84480
2, TOPDESK.HLP , SIZE=39936
2, TOPHOOK.DLL , SIZE=8704
2, TROUBLE.HLP , SIZE=229888
2, TROUBLE.IND , SIZE=53248
2, UCONVERT.EXE , SIZE=48640
2, UCONVERT.HLP , SIZE=10000
2, UNLODCTR.EXE , SIZE=41472
2, UPEDIT.EXE , SIZE=47104
2, UPEDIT.HLP , SIZE=39424
2, UPLODPRF.EXE , SIZE=116736
2, UPLODPS2.BAT , SIZE=512
2, USRMGR.EXE , SIZE=534528
2, USRMGR.HLP , SIZE=129536
2, WINAT.EXE , SIZE=57344
2, WINAT.HLP , SIZE=12288
2, WINDIFF.EXE , SIZE=119296
2, WINNTP.EXE , SIZE=50688
2, WINVTP.EXE , SIZE=44032
2, ~PROFILE.INF , SIZE=62976
[Files-always-system32]
2, 3DGAPST.CUR , SIZE=1024
2, 3DGAPSTL.CUR , SIZE=1024
2, 3DGARRO.CUR , SIZE=1024
2, 3DGARROL.CUR , SIZE=1024
2, 3DGMOVE.CUR , SIZE=1024
2, 3DGNESW.CUR , SIZE=1024
2, 3DGNO.CUR , SIZE=1024
2, 3DGNOL.CUR , SIZE=1024
2, 3DGNS.CUR , SIZE=1024
2, 3DGNWSE.CUR , SIZE=1024
2, 3DGWAIT.CUR , SIZE=1024
2, 3DGWE.CUR , SIZE=1024
2, 3DSAPST.CUR , SIZE=1024
2, 3DSARRO.CUR , SIZE=1024
2, 3DSMOVE.CUR , SIZE=1024
2, 3DSNESW.CUR , SIZE=1024
2, 3DSNO.CUR , SIZE=1024
2, 3DSNS.CUR , SIZE=1024
2, 3DSNWSE.CUR , SIZE=1024
2, 3DSWAIT.CUR , SIZE=1024
2, 3DSWE.CUR , SIZE=1024
2, 3DWAPST.CUR , SIZE=1024
2, 3DWAPSTL.CUR , SIZE=1024
2, 3DWARRO.CUR , SIZE=1024
2, 3DWARROL.CUR , SIZE=1024
2, 3DWMOVE.CUR , SIZE=1024
2, 3DWNESW.CUR , SIZE=1024
2, 3DWNO.CUR , SIZE=1024
2, 3DWNOL.CUR , SIZE=1024
2, 3DWNS.CUR , SIZE=1024
2, 3DWNWSE.CUR , SIZE=1024
2, 3DWWAIT.CUR , SIZE=1024
2, 3DWWE.CUR , SIZE=1024
2, OEMNSVKT.INF , SIZE=39424
2, APPLE.ANI , SIZE=3584
2, APPSTAR2.ANI , SIZE=8192
2, APPSTART.CUR , SIZE=1024
2, APPSTRT2.CUR , SIZE=1024
2, BMAPST.CUR , SIZE=1024
2, BMARRO.CUR , SIZE=1024
2, BMMOVE.CUR , SIZE=1024
2, BMNESW.CUR , SIZE=1024
2, BMNO.CUR , SIZE=1024
2, BMNS.CUR , SIZE=1024
2, BMNWSE.CUR , SIZE=1024
2, BMWAIT.CUR , SIZE=1024
2, BMWE.CUR , SIZE=1024
2, BSAPST.CUR , SIZE=1024
2, BSARRO.CUR , SIZE=1024
2, BSMOVE.CUR , SIZE=1024
2, BSNESW.CUR , SIZE=1024
2, BSNO.CUR , SIZE=1024
2, BSNS.CUR , SIZE=1024
2, BSNWSE.CUR , SIZE=1024
2, BSWAIT.CUR , SIZE=1024
2, BSWE.CUR , SIZE=1024
2, CROSS.CUR , SIZE=1024
2, DINOSAU2.ANI , SIZE=5120
2, DINOSAUR.ANI , SIZE=5120
2, HANDAPST.ANI , SIZE=50176
2, HANDEXIT.ANI , SIZE=6656
2, HANDNESW.ANI , SIZE=2048
2, HANDNO.ANI , SIZE=4096
2, HANDNS.ANI , SIZE=2048
2, HANDNWSE.ANI , SIZE=2048
2, HANDWAIT.ANI , SIZE=8704
2, HANDWE.ANI , SIZE=2048
2, HARROW.CUR , SIZE=1024
2, HCROSS.CUR , SIZE=1024
2, HIBEAM.CUR , SIZE=1024
2, HMOVE.CUR , SIZE=1024
2, HNESW.CUR , SIZE=1024
2, HNODROP.CUR , SIZE=1024
2, HNS.CUR , SIZE=1024
2, HNWSE.CUR , SIZE=1024
2, HOURGLA2.ANI , SIZE=12288
2, HOURGLAS.CUR , SIZE=1024
2, HWE.CUR , SIZE=1024
2, LAPPSTRT.CUR , SIZE=1024
2, LARROW.CUR , SIZE=1024
2, LCROSS.CUR , SIZE=1024
2, LIBEAM.CUR , SIZE=1024
2, LMOVE.CUR , SIZE=1024
2, LNESW.CUR , SIZE=1024
2, LNODROP.CUR , SIZE=1024
2, LNS.CUR , SIZE=1024
2, LNWSE.CUR , SIZE=1024
2, LWAIT.CUR , SIZE=1024
2, LWE.CUR , SIZE=1024
2, MSAPST.CUR , SIZE=1024
2, MSARRO.CUR , SIZE=1024
2, MSMOVE.CUR , SIZE=1024
2, MSNESW.CUR , SIZE=1024
2, MSNO.CUR , SIZE=1024
2, MSNS.CUR , SIZE=1024
2, MSNWSE.CUR , SIZE=1024
2, MSWAIT.CUR , SIZE=1024
2, MSWE.CUR , SIZE=1024
2, NOARROW.CUR , SIZE=1024
2, PSAPST.CUR , SIZE=1024
2, PSARRO.CUR , SIZE=1024
2, PSMOVE.CUR , SIZE=1024
2, PSNESW.CUR , SIZE=1024
2, PSNO.CUR , SIZE=1024
2, PSNS.CUR , SIZE=1024
2, PSNWSE.CUR , SIZE=1024
2, PSWAIT.CUR , SIZE=1024
2, PSWE.CUR , SIZE=1024
2, RSAPST.CUR , SIZE=1024
2, RSARRO.CUR , SIZE=1024
2, RSMOVE.CUR , SIZE=1024
2, RSNESW.CUR , SIZE=1024
2, RSNO.CUR , SIZE=1024
2, RSNS.CUR , SIZE=1024
2, RSNWSE.CUR , SIZE=1024
2, RSWAIT.CUR , SIZE=1024
2, RSWE.CUR , SIZE=1024
2, TV.ANI , SIZE=11264