OverFlow wrote:Ghost images are made after windows install is finished.
Driverpacks are applied during windows installation by setup.
You would need to have a ghost image for each HAL and Primary HDD (boot partition) controler type that you have.
If all of your machines are the same type (HAL and mass storage) you can use ghost.
Otherwise you must have one ghost image per machine type.
RIS is an option that may work for you. If you wish to use DriverPacks with RIS I suggest RogueSpear's AutoImage
It is possible to have a unified image, even across different HAL types. (In particular, I know that switching HALs works between the various ACPI HAL types of ACPI PC/ACPI Uniprocessor/ACPI Multiprocessor, however going back and forth to the old Standard PC and MPS PC HAL types may not work.) I discovered this technique in the summer of 2006 while attempting to create a unified Windows XP Ghost image that would work on many hardware types (laptops, desktops of various makes and models, all using ATA drives or SATA drives in ATA mode (not AHCI mode). The commercial software package Universal Imaging Utility (UIU) from Binary Research has similar capability (http://binaryresearch.net/products/the_universal_imaging_utility/features ).
Recently I have been evaluating using DriverPacks to enhance the unified Ghost image to add additional mass storage controller support beyond those built into Windows XP SP2, especially Intel AHCI support.
The key to unifying the HAL is to have your master image be a ACPI PC, and then after deploying it changing the HAL type to ACPI Uni or ACPI Multiprocessor. To re-enable the ability to make this change using the Device Manager, edit these sections of HAL.INF to read as follows:
[GENDEV_SYS]
%E_ISA_UP.DeviceDesc% = E_ISA_UP_HAL, E_ISA_UP, MPS_UP, MPS_MP, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; Standard PC
%ACPIPIC_UP.DeviceDesc% = ACPIPIC_UP_HAL, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; ACPI PIC-based PC
%ACPIAPIC_UP.DeviceDesc% = ACPIAPIC_UP_HAL, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; ACPI APIC-based PC (UP)
%ACPIAPIC_MP.DeviceDesc% = ACPIAPIC_MP_HAL, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; ACPI APIC-based PC (MP)
%MPS_UP.DeviceDesc% = MPS_UP_HAL, MPS_UP, MPS_MP, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; MPS UP PC
%MPS_MP.DeviceDesc% = MPS_MP_HAL, MPS_UP, MPS_MP, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP ; MPS MP PC
[COMPAQ_SYS]
%SYSPRO_MP.DeviceDesc% = SYSPRO_MP_HAL, SYSPRO_MP, E_ISA_UP, MPS_UP, MPS_MP, ACPIPIC_UP, ACPIAPIC_UP, ACPIAPIC_MP
As one of my post-imaging configuration steps, I have a batch file based Mike Laverick's http://www.rtfm-ed.co.uk/downloads/HAL_Update.txt and DEVCON.EXE from http://support.microsoft.com/kb/311272/ that changes the HAL to ACPI Uni or ACPI Multi. This is the first post-imaging manual step, where I must know whether the machine can handle the HAL change before I try it, because if it is incompatible Windows will not boot afterwards. I generally only use the batch file to enable ACPI Multi, and I know to use it whenever I'm on a machine with dual CPUs, dual core CPUs, or HyperThread-enabled CPUs.
I have not explored whether it is possible to move between mass storage types (IDE to SCSI or vice versa), but if it is possible, it will probably involve editing the boot.ini file after deploying an image but before it first boots up. I've read of this kind of editing being done using a BartPE Windows XP bootable live CD where the goal was to change the HAL type.