Advanced features

  1. HFSVCPACK folder - REG, INF and CMD files
  2. HFSVCPACK_SW1 folder - Non-supported exes (/quiet /norestart) and MSI files
  3. HFSVCPACK_SW2 folder - Non-supported exes (/Q:A /R:N)
  4. REPLACE folder - Replace existing files in the source
  5. HFEXPERT folder - Codecs, WIN files, replace apps & inject hives
  6. FDVFILES folder - Remove Internet Explorer from Windows 2000
  7. HFCLEANUP folder - Reduce your source
  8. HFGUIRUNONCE folder - Install programs at first GUI logon
  9. HFSLIP_PRE*.CMD and HFSLIP_POST*.CMD - Extensions for HFSLIP

This is for advanced users only.

Most of these features require a file called modifyPE.exe.  Download the modpe081.zip package and extract modifyPE.exe into the HFTOOLS folder.

1. HFSVCPACK - REG, INF and CMD files

This doesn't need much info.  Your custom .REG, .INF and .CMD files should go in the HFSVCPACK folder.  They will be executed at T-13, so take into account that not everything might work.  Windows 2000, for example, won't correctly apply a "CascadeControlPanel" setting.  Use the [DefaultInstall] section for the INF files.

2. HFSVCPACK_SW1 - Non-supported exes (/quiet /norestart) and MSI files

If you have any executables which are not supported by HFSLIP but support the /quiet /norestart switches, you can dump them in the HFSVCPACK_SW1 folder.  They will be installed at T-13.

MSI files found in HFSVCPACK_SW1 will be installed at T-13 as well, using the /qn /norestart ALLUSERS=1 switches.

3. HFSVCPACK_SW2 - Non-supported exes (/Q:A /R:N)

This folder is reserved for non-supported executables that need /Q:A /R:N switches to be installed.  Installation takes place at T-13.

4. REPLACE - Replace existing files in the source

The files in this folder are copied into the new source near the end of the HFSLIP run.  Since no other processing is done to them, make sure that they are tagged as "valid system files" (if needed), and that they are in the correct format.  If the file to be overwritten is a compressed file, the new file should be compressed as well; this can be done with MAKECAB.  The REPLACE\I386 subfolder is most commonly used for bootup files, WINNT.SIF and custom SFC*.DL_ files, and an updated DEPLOY.CAB could be placed in REPLACE\SUPPORT\TOOLS.

5. HFEXPERT - Codecs, WIN files, replace apps & inject hives

This folder needs to be created manually inside the HFSLIP folder and can contain the following subfolders: WIN, CODECS, APPREPLACEMENT, DRIVERCAB, SPXCAB, AUTOIT, HIVEINSTALL and PROGRAMFILES.

HFEXPERT\WIN should contain files to be placed in the WINNT/WINDOWS directory or its subdirectories.  If you would like to add files into SYSTEM32, create the HFEXPERT\WIN\SYSTEM32 folder structure and put those files in there.  New entries are created in TXTSETUP.SIF and DOSNET.INF so only use this for NEW binaries.

Your standalone video and audio codec files (dll/ocx/ax/exe) as well as INF files to configure the codecs can be placed in the HFEXPERT\CODECS folder.  As is the case with the HFEXPERT\WIN folder, these files are referenced to in TXTSETUP.SIF and DOSNET.INF, but in addition Windows setup is being instructed to register the codec files.  As a result, you don't need to register your codec files from your INF files; these should therefore be used for general registry changes only, such as registration and association of file types.  For these INFs, the [DefaultInstall] section is used.

Some codec resources:

HFEXPERT\APPREPLACEMENT is intended for files that need to replace existing files in the source.  The difference with the REPLACE folder is that these files should be left uncompressed and that modifyPE is run on them.  This could for example be used to replace mplayer2.exe with Media Player Classic and TASKMGR.EXE with Sysinternal's Process Explorer.  Don't forget to give these files a name that already exists in the source (mplayer2.exe and TASKMGR.EXE respectively for the examples), otherwise nothing will be replaced.

Using HFEXPERT\DRIVERCAB, you can slipstream your custom driver binaries (in extracted format).  These files will be added into DRIVER.CAB.  Note that this only works with merging options A, B and C.  You will need to manually update the [SourceDisksNames] section in your installation INF file to refer to DRIVER.CAB instead of DRIVER.CAB. More information can be found here.

The purpose of the HFEXPERT\SPXCAB folder is the same as that of HFEXPERT\DRIVERCAB.  The difference is that SPXCAB is intended for scenarios with merging options D, E and F, so your custom driver files will be added into SPX.CAB instead of DRIVER.CAB.  Note that the [SourceDisksNames] section in your installation INF files will need to refer to SPX.CAB instead of DRIVER.CAB in this case.

If you have any AutoIt files, they can be placed in HFEXPERT\AUTOIT.  This includes the main AutoIt executable, the AutoIt script files and the programs that need to be installed by the script files.  They will be copied uncompressed into SOURCESS\I386 by HFSLIP and installed during Windows setup at T-13.

Your hive files go in HFEXPERT\HIVEINSTALL.  These INFs are injected as custom hives via TXTSETUP.SIF's [HiveInfs.Fresh], meaning that you should use the [SETUP] section of the INF file.  During Windows setup, they are executed right at the end of textmode file copy (before the first reboot).

HFEXPERT\PROGRAMFILES, a new feature, can be considered an $OEM$\$Progs alternative.  Create the folder PROGRAMFILES inside HFEXPERT and place your subfolders and files in it.  That's it.  HFSLIP duplicates the older structure in SOURCESS\I386\PFILES.  All files except CAB files are compressed, but please note that they retain their original name for convenience.  Long file/folder names are supported as well as file/folder names with spaces.  During Windows setup, the files are installed directly into their intended location via an INF file (HFSLIPPF.INF) which is called from SYSOC.INF.

6. FDVFILES - Remove Internet Explorer from Windows 2000

FDV came up with a fileset to remove Internet Explorer from Windows 2000.  Not possible?  Well... it is.  Grab his file set (available in several languages) and extract it into the FDVFILES folder.  All information can be found on FDV's Remove IE from Windows 2000 at install page.  Note: while that page provides different integration methods, it is advised you use the FDVFILES folder when using HFSLIP.

7. HFCLEANUP - Reduce your Source

This feature is UNSUPPORTED and YOUR MILEAGE MAY VARY, so don't complain if your applications don't work!  It is geared for people who want to reduce their installation source and understand the impact this may have.  By using HFCLEANUP, you may experience situations where some program won't work because some windows component isn't installed. Experimenation is needed to determine which subset of reducers works for your rig.   Perhaps someone will create additional reduction files and post them for us all to use. The reducers are based from Nlite. Nlite is a far better and more robust tool for reduction.

Create the HFCLEANUP folder inside the HFSLIP folder.  Then download the cleanup package(s) you want:

Extract the content of the package(s) into the HFCLEANUP folder.

If using Windows 2000 and Fred Vorck's IE removal filset, nothing extra is required.  Select Yes when prompted to filter out FDV's setup INFs.

If using Windows 2000 (non-FDV), you need a modified SETUPAPI.DL_.  If you want less folders in your installed source, you also need SFC.DL_ and SFCFILES.DL_.  These files can be obtained from sp5files.zip and should be placed in the REPLACE\I386 folder.  When running HFSLIP, choose A, B or C for driver compression.

If using Windows XP, you need to put modified SYSSETUP.DL_ and SFC_OS.DL_ files in the REPLACE\I386 folder.  You can obtain both of these files running ryanvm's addon's on a Windows XP source.  When running HFSLIP, choose A, B or C for driver compression. Please note that not every single combination of reducers has been tested.

If using Windows 2003, you need a modified setupapi.dl_.  If you want less folders in your installed source, you also need SFC_OS.DL_.  You may also want to clean up 2003 further by placing sakit.in_ in the REPLACE\I386 folder.

Read the !README.TXT file in the HFCLEANUP directory for details on the fileset and on how to create additional reduction files if needed.  More information can be obtained here.

Delete any RDV/REM/RIN files that you do not want to run.  I named some files with Z prefixes to quickly isolate them.

If removing drivers, you can add them back in with HFEXPERT\DRIVERCAB (see a few sections above).

You are free to create your own reduction files or filesets and to post them on the HFSLIP support forum for general use after you have verified they work correctly on 2000, XP and 2003 (if you have it).

Please note, if reducing IE, a byproduct is a missing Quick Launch area from your desktop.  To fix, place the extracted Quick Launch fix file inside the HFSVCPACK folder if you want it on your desktop.

8. HFGUIRUNONCE - Install programs at first GUI logon

HFSLIP 1.3.0 and newer support and automatically create the HFGUIRUNONCE folder.  This is intended for programs that need to be installed at first GUI logon.  Supported file types: MSIs, silent EXEs, REG files, CMD files and INF files.  The INF files must be installable via [DefaultInstall].

9. HFSLIP_PRE*.CMD and HFSLIP_POST*.CMD - Extensions for HFSLIP

You can write your own plugins/extensions to the HFSLIP code.  CMD files of which the name starts with "HFSLIP_PRE" are called right before new binaries are slipstreamed into the new source while CMD files of which the name starts with "HFSLIP_POST" are called when SOURCESS is just ready (before ISO creation).  These CMD files are to be placed in the HFTOOLS folder.  Paths are relative to the location of the main HFSLIP CMD file.  This feature is unsupported.