home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CICA NT 1997 April
/
CICA_NT_CD-ROM_Walnut_Creek_April_1997.iso
/
servpak
/
sp1_400i.exe
/
UPDATE.INF
< prev
next >
Wrap
INI File
|
1996-10-10
|
42KB
|
990 lines
[FileKeyedClasses]
Hal = hal.dll
Ntoskrnl = ntoskrnl.exe
[FilesKeyedSections]
FilesHal = $(STF_HALDEST)
FilesNtoskrnl = $(STF_WINDOWSSYSPATH)
[FilesHal]
[FilesNtoskrnl]
NTKRNLMP = 1, NTKRNLMP.EXE , RENAME=$(NEWFILE), NOLOG, UNDO
NTOSKRNL = 1, NTOSKRNL.EXE , RENAME=$(NEWFILE), NOLOG, UNDO
[FileSections]
FilesPrimary = C:
FilesPal = $(STF_HALDEST)
FilesWinnt = $(STF_WINDOWSPATH)
FilesSystem32 = $(STF_WINDOWSSYSPATH)
FilesSystem = $(STF_WINDOWSPATH)\system
FilesDrivers = $(STF_WINDOWSSYSPATH)\drivers
FilesConfig = $(STF_WINDOWSSYSPATH)\config
FilesWinspool = $(STF_WINDOWSSYSPATH)\spool
FilesPrnDriver = $(STF_WINDOWSSYSPATH)\spool\drivers\$(!STF_PRNPLATFORM)\1
FilesPrnProc = $(STF_WINDOWSSYSPATH)\spool\prtprocs\$(!STF_PRNPLATFORM)
FilesDbgCom = $(STF_WINDOWSPATH)\symbols\com
FilesDbgCpl = $(STF_WINDOWSPATH)\symbols\cpl
FilesDbgDll = $(STF_WINDOWSPATH)\symbols\dll
FilesDbgDrv = $(STF_WINDOWSPATH)\symbols\drv
FilesDbgExe = $(STF_WINDOWSPATH)\symbols\exe
FilesDbgScr = $(STF_WINDOWSPATH)\symbols\scr
FilesDbgSys = $(STF_WINDOWSPATH)\symbols\sys
[FileSectionsOsLoader]
FilesOsLoader = $(STF_OSLDEST)
[FileSectionsFPNW]
FilesFpNwLogin = $(STF_FPNWSYSPATH)\login
FilesFpNwPublic = $(STF_FPNWSYSPATH)\public
[FileSectionsIIS]
FilesIIS = $(STF_IISPATH)
[FileSectionsSSL]
FilesSSL = $(STF_WINDOWSSYSPATH)
[FileSectionsIE]
FilesIE = $(STF_IEPATH)
[FileSectionsCopyAlways]
FilesSystem32CopyAlways = $(STF_WINDOWSSYSPATH)
FilesDriversCopyAlways = $(STF_WINDOWSSYSPATH)\drivers
[FileSectionsWINNT]
FilesInfWinnt = $(STF_WINDOWSSYSPATH)
[FileSectionsLANMANNT]
FilesInfLanmanNT = $(STF_WINDOWSSYSPATH)
[FileSectionsCopyAlwaysWINNT]
FilesSystem32CopyAlwaysWinnt = $(STF_WINDOWSSYSPATH)
[FileSectionsCopyAlwaysLANMANNT]
FilesSystem32CopyAlwaysLanmanNT = $(STF_WINDOWSSYSPATH)
[FilesPrimary]
[FilesOsLoader]
[FilesPal]
[FilesWinnt]
[FilesSystem32]
1 = 1, MSAFD.DLL , RENAME=$(NEWFILE), NOLOG, UNDO
2 = 1, WS2HELP.DLL , RENAME=$(NEWFILE), NOLOG, UNDO
[FilesSystem]
[FilesDrivers]
1 = 1, SRV.SYS , RENAME=$(NEWFILE), OVERWRITE=OLDER, VERSION="4,0,1381,1"
[FilesConfig]
[FilesWinspool]
[FilesPrnDriver]
[FilesPrnProc]
[FilesDbgCom]
[FilesDbgCpl]
[FilesDbgDll]
[FilesDbgDrv]
[FilesDbgExe]
[FilesDbgScr]
[FilesDbgSys]
[FilesInfWinnt]
[FilesInfLanmanNT]
[FilesSystem32CopyAlways]
[FilesDriversCopyAlways]
[FilesSystem32CopyAlwaysWINNT]
[FilesSystem32CopyAlwaysLANMANNT]
[FilesFpNwLogin]
[FilesFpNwPublic]
[FilesIIS]
1 = 1, W3SVC.DLL, RENAME=$(NEWFILE), OVERWRITE=OLDER, VERSION="4,0,1381,1"
[FilesSSL]
1 = 1, SCHANNEL.DLL, RENAME=$(NEWFILE), OVERWRITE=OLDER, VERSION="4,75,1381,1500"
[FilesIE]
1 = 1, IEXPLORE.EXE, RENAME=$(NEWFILE), OVERWRITE=OLDER, VERSION="4,40,1381,1"
[FileAttributes]
[ProcessorID]
ProcessorID_I386 = I386
ProcessorID_I486 = I486
ProcessorID_I586 = I586
ProcessorID_R4000 = R4000
[UiVars]
STF_PLATFORMDET = "" ? $(!LIBHANDLE) GetPlatform
STF_CSDVER = 256
STF_BUILDVER = 1381
STF_CSD1_NT35 = 256
STF_NT31_BUILDVER = 528
STF_NT35_BUILDVER = 807
STF_NT351_BUILDVER = 1057
STF_NT40_BUILDVER = 1381
STF_NT40_MAJORVER = 4
STF_NT40_MINORVER = 0
STF_PRIMARY = "C:"
STF_NTDRIVE = ""
STF_WINDOWSPATH = "" ? $(!LIBHANDLE) GetWindowsNtDir
STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir
STF_CONTROLSET = CurrentControlSet
VolumeList = {} ? $(!LIBHANDLE) GetHardDriveLetters
VolumeFSList = {} ? $(!LIBHANDLE) GetHardDriveFileSystems
VolumeFreeList = {} ? $(!LIBHANDLE) GetHardDriveFreeSpace
DisketteList = {} ? $(!LIBHANDLE) GetFloppyDriveLetters
[FreeSpaceI386]
RequiredFreeWinnt = 5
[FreeSpaceMips]
RequiredFreeWinnt = 5
[FreeSpaceppc]
RequiredFreeWinnt = 5
[FreeSpaceAlpha]
RequiredFreeWinnt = 5
[NVRAMVars]
SystemPartition = "" ? $(!LIBHANDLE) GetNVRAMVar SYSTEMPARTITION
OsLoader = "" ? $(!LIBHANDLE) GetNVRAMVar OSLOADER
OsLoadPartition = "" ? $(!LIBHANDLE) GetNVRAMVar OSLOADPARTITION
OsLoadFilename = "" ? $(!LIBHANDLE) GetNVRAMVar OSLOADFILENAME
[Shell Commands]
set-title "Windows NT Setup"
set-subst CR = "\r"
set-subst LF = "\n"
set STF_LANGUAGE = ENG
set STF_LANGUAGE_TYPE = 9
read-syms Strings
shell "subroutn.inf" PushBillboard STATUSDLG $(Billboard1)
set BillboardPushed = TRUE
set IISPathFound = FALSE
set CopySSL = TRUE
set CopyLoader = TRUE
set FPNWSysPathFound = FALSE
set IEPathFound = FALSE
set !LIBHANDLE = ""
set !PATCHLIBHANDLE = ""
install LoadSetupLibrary
read-syms ProductType
ifstr(i) $(!STF_PLATFORM) == I386
set STF_PRNPLATFORM = "w32x86"
else-ifstr(i) $(!STF_PLATFORM) == Mips
set STF_PRNPLATFORM = "w32mips"
else-ifstr(i) $(!STF_PLATFORM) == ppc
set STF_PRNPLATFORM = "w32ppc"
else-ifstr(i) $(!STF_PLATFORM) == Alpha
set STF_PRNPLATFORM = "w32alpha"
endif
read-syms UiVars
detect UiVars
install LoadPatchLibrary
read-syms FreeSpace$(!STF_PLATFORM)
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), CheckForRegistryCorruption
ifstr(i) $(STATUS) != "OK"
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "subroutn.inf" SetupMessage $(STF_LANGUAGE) "FATAL" $(String6)
goto patchnotdone
endif
ifstr(i) $(STF_PLATFORM) != $(STF_PLATFORMDET)
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "subroutn.inf" SetupMessage $(STF_LANGUAGE) "FATAL" $(String1)
goto patchnotdone
endif
shell "registry.inf" CheckSetupModify
ifint $($ShellCode) != $(!SHELL_CODE_OK)
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
Debug-Output "shelling CheckSetupModify failed"
goto patchnotdone
else-ifstr(i) $($R0) != STATUS_SUCCESSFUL
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String4)
goto patchnotdone
endif
shell "" GetCheckedFree
ifint $($ShellCode) == $(!SHELL_CODE_OK)
ifstr(i) $($R0) == "STATUS_SUCCESSFUL"
ifstr(i) $($R1) == "checked"
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(String15)
goto patchnotdone
endif
endif
endif
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), CheckWindowsMajorVersion
ifint $(STATUS) > $(STF_NT40_MAJORVER)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String18)
goto patchnotdone
else-ifint $(STATUS) = $(STF_NT40_MAJORVER)
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), CheckWindowsMinorVersion
ifint $(STATUS) > $(STF_NT40_MINORVER)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String18)
goto patchnotdone
endif
endif
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), CheckBuildVersion
ifint $(STATUS) <= $(STF_NT35_BUILDVER)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String16)
goto patchnotdone
else-ifint $(STATUS) < $(STF_NT40_BUILDVER)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String17)
goto patchnotdone
else-ifint $(STATUS) > $(STF_NT40_BUILDVER)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String18)
goto patchnotdone
endif
shell "" GetCSDVersion
ifint $($ShellCode) != $(!SHELL_CODE_OK)
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
goto patchnotdone
endif
ifstr(i) $($R0) != "STATUS_SUCCESSFUL"
goto patchnotdone
else
ifint $($R1) > $(!STF_CSDVER)
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String8)
goto patchnotdone
endif
endif
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetLanguageType
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) != $(STF_LANGUAGE_TYPE)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String20)
goto patchnotdone
endif
endif
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetFPNWPathName
ifstr(i) $(STATUS) != "FAILURE"
set STF_FPNWSYSPATH = $(STATUS)
set FPNWSysPathFound = TRUE
endif
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetIEPathName
ifstr(i) $(STATUS) != "FAILURE"
set STF_IEPATH = $(STATUS)
set IEPathFound = TRUE
endif
skip_patchvercheck = +
GetDriveInPath !STF_NTDRIVE $(!STF_WINDOWSSYSPATH)
ifint *($(VolumeFreeList), ~($(VolumeList), $(!STF_NTDRIVE))) < $(RequiredFreeWinnt)
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String13a)$(RequiredFreeWinnt)$(String13b)$(!STF_NTDRIVE)$(String13c)
goto patchnotdone
endif
set STF_PRODUCT = ""
OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\ProductOptions" 33554432 KeyProductOption
ifstr(i) $(KeyProductOption) != ""
GetRegValue $(KeyProductOption) "ProductType" ProductTypeList
set TempProductType = *($(ProductTypeList),4)
ifstr(i) $(TempProductType) == "winnt"
set !STF_PRODUCT = WINNT
set !PRODUCT_DIR = WINNT
else-ifstr(i) $(TempProductType) == "lanmannt"
set !STF_PRODUCT = LANMANNT
set !PRODUCT_DIR = NTAS
else-ifstr(i) $(TempProductType) == "servernt"
set !STF_PRODUCT = SERVERNT
set !PRODUCT_DIR = NTAS
endif
CloseRegKey $(KeyProductOptions)
endif
ifstr(i) $(STF_PRODUCT) == ""
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String14)
goto patchnotdone
endif
ifstr(i) $(!STF_PLATFORM) == I386
set STF_HALDEST = $(!STF_WINDOWSSYSPATH)
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetOsLoaderDest
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
set STF_OSLDEST = $(STATUS)
endif
set NtLdrName = $(STF_OSLDEST)"ntldr"
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), IsNTLDRVersionNewer $(NtLdrName)
ifstr(i) $(STATUS) == "YES"
set CopyLoader = FALSE
endif
else
read-syms NVRAMVars
detect NVRAMVars
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetOsLoaderDest +
$(SystemPartition) +
$(OsLoader) +
$(OsLoadPartition) +
$(OsLoadFilename)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
set STF_OSLDEST = $(STATUS)
set STF_HALDEST = $(STATUS)
endif
endif
OpenRegKey $(!REG_H_LOCAL) "" "Software\Microsoft\INetStp" 33554432 KeySvc
ifstr(i) $(KeySvc) != ""
GetRegValue $(KeySvc) "InstallPath" DestPathValue
set !STF_IISPATH0 = *($(DestPathValue), 4)
ifstr(i) $(STF_IISPATH0) != ""
set IISPathFound = TRUE
set STF_IISPATH = $(STF_IISPATH0)
endif
endif
CloseRegKey $(KeySvc)
set FileToCheck = $(STF_WINDOWSSYSPATH)\schannel.dll
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileToCheck)
ifstr(i) $(STATUS) == YES
LibraryProcedure Result $(!PATCHLIBHANDLE) GetSChannelFileDesc $(FileToCheck)
ifstr(i) $(Result) == "128"
shell "" QueryOkCancel $(String22)
ifstr(i) $($R1) == "CANCEL"
set CopySSL = FALSE
endif
endif
endif
read-syms FilesKeyedSections
set KeyedClassKeys = ^(FileKeyedClasses, 0)
set KeyedClassFiles = ^(FileKeyedClasses, 1)
set KeyedClassFilesList = {}
ForListDo $(KeyedClassKeys)
set TmpKey = Files$($)
set TmpFile = #(FileKeyedClasses, $($), 1)
set TmpFilePath = $($(TmpKey))\$(TmpFile)
set KeyedClassFilesList = >($(KeyedClassFilesList), $(TmpFilePath))
EndForListDo
LibraryProcedure STATUS,$(!PATCHLIBHANDLE), GetFileTypes $(KeyedClassFilesList)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else-ifstr(i) $(STATUS) == SETUPLOGNOTPRESENT
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String11)
goto patchnotdone
else-ifstr(i) $(STATUS) == NTOSKRNLNOTFOUND
shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) FATAL $(String21)
goto patchnotdone
else
ForListDo $(KeyedClassKeys)
set $($)Type = *($(STATUS), $(#))
EndForListDo
endif
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
ifstr(i) $(Unattended) != TRUE
shell "" QueryOkCancel $(String9)
ifstr(i) $($R1) == "OK"
else
set String = $(String12)
goto finish2
endif
endif
shell "subroutn.inf" PushBillboard STATUSDLG $(Billboard2)
set BillboardPushed = TRUE
set MoveFileExList = {}
read-syms FileSections
set FileSectionsList = ^(FileSections, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
set FileSource = $(!STF_SRCDIR)
ForListDo $(KeyedClassKeys)
set FileSection = Files$($)
set FileDest = $($(FileSection))
set FileKey = $($($)Type)
set KeyedClassChoices = ^(Files$($), 0)
ifcontains(i) $(FileKey) in $(KeyedClassChoices)
set File = #(FileKeyedClasses, $($), 1)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
endif
EndForListDo
ifstr(i) $(STF_PRODUCT) == "WINNT"
set TEMP_PRODUCT = WINNT
else
set TEMP_PRODUCT = LANMANNT
endif
read-syms FileSections$(TEMP_PRODUCT)
set FileSectionsList = ^(FileSections$(TEMP_PRODUCT), 0)
set FileSource = $(!STF_SRCDIR)$(PRODUCT_DIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
read-syms FileSectionsCopyAlways
set FileSectionsList = ^(FileSectionsCopyAlways, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set NEWFILE = $(File)
set FileDestFullPath = $(FileDest)\$(File)
install Install-File
EndForListDo
EndForListDO
read-syms FileSectionsCopyAlways$(TEMP_PRODUCT)
set FileSectionsList = ^(FileSectionsCopyAlways$(TEMP_PRODUCT), 0)
set FileSource = $(!STF_SRCDIR)$(PRODUCT_DIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set NEWFILE = $(File)
set FileDestFullPath = $(FileDest)\$(File)
install Install-File
EndForListDo
EndForListDO
ifstr(i) $(FPNWSysPathFound) == TRUE
read-syms FileSectionsFPNW
set FileSectionsList = ^(FileSectionsFPNW, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
endif
ifstr(i) $(CopyLoader) == TRUE
read-syms FileSectionsOsLoader
set FileSectionsList = ^(FileSectionsOsLoader, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
endif
ifstr(i) $(IISPathFound) == TRUE
read-syms FileSectionsIIS
set FileSectionsList = ^(FileSectionsIIS, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
endif
ifstr(i) $(IEPathFound) == TRUE
read-syms FileSectionsIE
set FileSectionsList = ^(FileSectionsIE, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
endif
ifstr(i) $(CopySSL) == TRUE
read-syms FileSectionsSSL
set FileSectionsList = ^(FileSectionsSSL, 0)
set FileSource = $(!STF_SRCDIR)
ForListDo $(FileSectionsList)
set FileSection = $($)
set FileDest = $($($))
set FileList = ^($(FileSection), 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDestFullPath = $(FileDest)\$(File)
LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(FileDestFullPath)
ifstr(i) $(STATUS) == YES
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), IsFileOpenedExclusive $(FileDestFullPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
else
ifstr(i) $(STATUS) == "YES"
LibraryProcedure NEWFILE, $(!PATCHLIBHANDLE), GenerateTemporary $(FileDest)
ifstr(i) $(NEWFILE) == ERROR
goto patchnotdone
else
set FileComp = {$(FileDest)\$(NEWFILE), $(FileDestFullPath)}
set MoveFileExList = >($(MoveFileExList), $(FileComp))
endif
else
set NEWFILE = $(File)
endif
install Install-File
endif
endif
EndForListDo
EndForListDO
endif
read-syms ProgressCopy$(!STF_LANGUAGE)
install Install-DoCopy
ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT"
goto patchnotdone
else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE"
goto patchnotdone
endif
set FileSection = "FileAttributes"
set FileList = ^(FileSection, 0)
ForListDo $(FileList)
set FileKey = $($)
set File = #($(FileSection), $(FileKey), 2)
set FileDest = #($(FileSection), $(FileKey), 3)
set FilePerms = #($(FileSection), $(FileKey), 4)
set FileDestFullPath = $(FileDest)\$(File)
ifstr(i) $(FilePerms) != ""
LibraryProcedure STATUS,$(!PATCHLIBHANDLE),ChangeFileAttributes $(FilePerms) $(FileDestFullPath)
endif
EndForListDo
processmovefileex=+
ForListDo $(MoveFileExList)
set ExistingPath = *($($), 1)
set NewPath = *($($), 2)
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), CopyFileOnReboot $(ExistingPath) $(NewPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
endif
EndForListDo
ifstr(i) $(!STF_PLATFORM) == I386
set NtLdrPath = $(STF_OSLDEST)"ntldr"
LibraryProcedure STATUS, $(!PATCHLIBHANDLE), ForceFileNoCompress $(NtLdrPath)
ifstr(i) $(STATUS) == ERROR
goto patchnotdone
endif
endif
patchdone =+
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "" DoRegistryModifications $(!STF_CSDVER)
ifstr(i) $(Unattended) != TRUE
read-syms SetupDoneDlg$(!STF_LANGUAGE)
ui start "SetupDone"
ifstr(i) $(DLGEVENT) == "CONTINUE"
ui pop 1
goto rebootend
else
ui pop 1
goto finish1
endif
else
goto rebootend
endif
patchnotdone =+
set String = $(String2)
finish2 =+
ifstr(i) $(BillboardPushed) == TRUE
shell "subroutn.inf" PopBillboard
set BillboardPushed = FALSE
endif
shell "subroutn.inf" SetupMessage $(STF_LANGUAGE) "FATAL" $(String)
goto finish1
finish1 =+
install FreeSetupLibrary
finish =+
install FreePatchLibrary
exit
rebootend =+
set Reboot = YES
ifstr(i) $(Unattended) != TRUE
install Install-Shutdown
else
ifstr(i) $(ForceClose) != TRUE
set ForceAppsClosed = NO
else
set ForceAppsClosed = YES
endif
install Install-Shutdown2
endif
goto finish1
exit
[LoadPatchLibrary]
LoadLibrary "x" $(CWD)\patchdll.dll !PATCHLIBHANDLE
exit
[FreePatchLibrary]
ifstr(i) $(!PATCHLIBHANDLE) != ""
FreeLibrary $(!PATCHLIBHANDLE)
endif
exit
[LoadSetupLibrary]
LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE
exit
[FreeSetupLibrary]
ifstr(i) $(!LIBHANDLE) != ""
FreeLibrary $(!LIBHANDLE)
endif
exit
[Install-File]
set STF_VITAL = ""
AddSectionKeyFileToCopyList $(FileSection) $(FileKey) $(FileSource) $(FileDest)
exit
[Install-DoCopy]
CopyFilesInCopyList
exit
[Install-Shutdown]
LibraryProcedure STATUS,$(!LIBHANDLE),ShutdownSystem $(Reboot)
exit
[Install-Shutdown2]
LibraryProcedure STATUS,$(!PATCHLIBHANDLE),ShutdownSystem2 $(Reboot) $(ForceAppsClosed)
exit
[RegistryConstants]
MaskAllAccess = 33554432
NoTitle = 0
RegLastError = $(!REG_ERROR_SUCCESS)
CurrentControlSet = "SYSTEM\CurrentControlSet"
ServicesBaseName = $(CurrentControlSet)"\Services"
NetbtKeyPath = $(ServicesBaseName)"\Netbt"
[DoRegistryModifications]
set Status = STATUS_FAILED
read-syms RegistryConstants
set KeyPath = { +
{SYSTEM, $(NoTitle), $(MaskAllAccess)}, +
{CurrentControlSet, $(NoTitle), $(MaskAllAccess)}, +
{Control, $(NoTitle), $(MaskAllAccess)}, +
{Windows, $(NoTitle), $(MaskAllAccess)}, +
}
set KeyValues = { +
{CSDVersion, $(NoTitle), $(!REG_VT_DWORD), $($0) } +
}
shell "registry.inf" CreateKey $(!REG_H_LOCAL) $(KeyPath) $(KeyValues)
ifint $($ShellCode) != $(!SHELL_CODE_OK)
goto endCSDVersionCreate
endif
ifstr(i) $($R0) != STATUS_SUCCESSFUL
goto endCSDVersionCreate
else
CloseRegKey $($R1)
endif
set Status = STATUS_SUCCESSFUL
endCSDVersionCreate = +
Return $(Status)
[GetCSDVersion]
set Status = STATUS_SUCCESSFUL
read-syms RegistryConstants
set CSDVersion = 0
set KeyName = "SYSTEM\CurrentControlSet\Control\Windows"
OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_READ) KeyHandle
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "REGISTRY.INF: Couldn't open windows nt software key for read access"
goto end_GetCSDVersion
endif
GetRegValue $(KeyHandle) "CSDVersion" CSDVersionValue
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
CloseRegKey $(KeyHandle)
goto end_GetCSDVersion
endif
set CSDVersion = *($(CSDVersionValue), 4)
CloseRegKey $(KeyHandle)
end_GetCSDVersion = +
Return $(Status) $(CSDVersion)
[GetCheckedFree]
set Status = STATUS_SUCCESSFUL
read-syms RegistryConstants
set System = Free
set KeyName = "Software\Microsoft\Windows NT\CurrentVersion"
OpenRegKey $(!REG_H_LOCAL) "" $(KeyName) $(!REG_KEY_READ) KeyHandle
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
Debug-Output "REGISTRY.INF: Couldn't open windows nt software key for read access"
goto end_GetCheckedFree
endif
GetRegValue $(KeyHandle) "CurrentType" CurrentTypeValue
ifint $(RegLastError) != $(!REG_ERROR_SUCCESS)
CloseRegKey $(KeyHandle)
goto end_GetCheckedFree
endif
Split-String *($(CurrentTypeValue), 4) " " CurrentTypeList
ForListDo $(CurrentTypeList)
ifstr(i) $($) == "free"
set System = free
else-ifstr(i) $($) == "checked"
set System = checked
endif
EndForListDo
CloseRegKey $(KeyHandle)
end_GetCheckedFree = +
Return $(Status) $(System)
[QueryOkCancel]
set DlgText = $($0)
read-syms QueryOKCancelDlg$(!STF_LANGUAGE)
ui start "SetupMessage"
ifstr(i) $(DLGEVENT) == "OK"
set Status = STATUS_SUCCESSFUL
set UserAction = $(DLGEVENT)
else-ifstr(i) $(DLGEVENT) == "CANCEL"
set Status = STATUS_SUCCESSFUL
set UserAction = $(DLGEVENT)
else
set Status = STATUS_FAILED
set UserAction = "CANCEL"
endif
Return $(Status) $(UserAction)
[Signature]
FileType = MICROSOFT_FILE
[GetSignature]
read-syms Signature
return $(FileType)
[ProductType]
STF_PRODUCT = Winnt
STF_PLATFORM = I386
[Source Media Descriptions]
1 = "Windows NT 4.0 Update Disk #1" , TAGFILE = disk1
2 = "Windows NT 4.0 Update Disk #2" , TAGFILE = disk2
3 = "Windows NT 4.0 Update Disk #3" , TAGFILE = disk3
4 = "Windows NT 4.0 Update Disk #4" , TAGFILE = disk4
5 = "Windows NT 4.0 Update Disk #5" , TAGFILE = disk5
6 = "Windows NT 4.0 Update Disk #6" , TAGFILE = disk6
7 = "Windows NT 4.0 Update Disk #7" , TAGFILE = disk7
8 = "Windows NT 4.0 Update Disk #8" , TAGFILE = disk8
9 = "Windows NT 4.0 Update Disk #9" , TAGFILE = disk9
10 = "Windows NT 4.0 Update Disk #10" , TAGFILE = disk10
[Strings]
String1 = "This update disk cannot be used on this platform."
String2 = "Setup failed to update the system."
String3 = "Setup has successfully updated your system."
String4 = "You do not have permission to update the system. Please contact your system administrator."
String5 = "Setup failed to setup your updated files for secure operation."
String6 = "Setup has detected that your Windows NT Workstation system configuration is in an "+
"inconsistent state. Setup cannot continue updating your system. "+
"Please re-install Windows NT Workstation."
String8 = "Setup has detected that the version of the system installed is "+
"newer than the update you are applying to it. The update can render "+
"your system unstartable."
String9 = "Setup is going to update your Windows NT system with the English "+
"version of the update program. If you wish to cancel the update "+
"process, please press Cancel or press OK to continue."
String11 = "Setup couldn't find the setup.log file in your repair directory. "+
"Setup cannot proceed to update your system. Please copy the setup.log "+
"file from your Emergency Repair Disk to your repair directory "+
"and restart the update."
String12 = "Setup has not updated your system. If you wish to update your "+
"system please run the update utility again."
String13a = "Not enough hard disk space to run Setup. Setup needs at least "
String13b = "MB of free hard disk space on "
String13c = " before it can be run. Delete some"+
" files and run the Update program again."
String14 = "Setup cannot update your Windows NT files because it could not "+
"determine your product type. Your registry may be corrupt."
String15 = "Setup cannot update your checked system. The update can only "+
"be applied to the retail system."
String16 = "Setup cannot update your Windows NT files because your system is "+
"NT 3.1, NT 3.5, or NT 3.51. Please upgrade your system to the retail Windows NT 4.0, "+
"and then update your system."
String17 = "Setup cannot update your Windows NT files because your system is "+
"a pre-release of NT 4.0. Please upgrade your system to the retail "+
"Windows NT 4.0, and then update your system."
String18 = "Setup cannot update your Windows NT files because your system is "+
"a version later than NT 4.0. The update can only be applied "+
"to Windows NT 4.0."
String20 = "Setup cannot update your Windows NT files because the language "+
"installed on your system is different from the Update language."
String21 = "Setup cannot find the location of your NTOSKRNL.EXE file in SETUP.LOG. "+
"You may have renamed the Windows NT root directory since you first installed "+
"your system. For the Update to work correctly, you must rename "+
"your root directory back to what it was when you first installed your system."
String22 = "You have a domestic-version 128-bit PCT/SSL security provider installed on your machine."$(LF)$(LF)+
"This Update contains only an export grade version 40-bit PCT/SSL security provider."$(LF)$(LF)+
"Select Cancel to skip copying this file. Your original 128-bit security provider will be left intact."$(LF)+
"Please see the readme.txt for information on obtaining the updated 128-bit security provider."$(LF)$(LF)+
"Want to overwrite?"
Billboard1 = "Please wait..."
Billboard2 = "Please wait while the files to be updated are determined..."
Billboard3 = "Please wait while the Emergency Repair Disk is updated..."
[ProgressCopyENG]
ProCaption = "Windows NT Setup"
ProCancel = "Cancel"
ProCancelMsg = "The Windows NT 4.0 files are not completely updated. Are you sure you want "+
"to cancel copying files?"
ProCancelCap = "Setup Message"
ProText1 = "Copying:"
ProText2 = "To:"
[SetupDoneDlgENG]
Caption = "Windows NT Setup"
DlgText = "Windows NT 4.0 has been updated. If you change or add "+
"any components to your system, you will need to "+
"reapply the update."$(!LF)$(!LF)+
"Remove disks from the floppy disk drives and "+
"choose Restart Computer to run the updated system."
Reboot = "&Restart Computer"
Windows = "E&xit to Windows NT"
DlgType = "Info"
DlgTemplate = "REBOOT"
[QueryOKCancelDlgENG]
STF_MB_TITLE = "Setup Message"
DlgType = "MessageBox"
STF_MB_TEXT = $(DlgText)
STF_MB_TYPE = 2
STF_MB_ICON = 4
STF_MB_DEF = 1