June 3, 2010

I recently had the displeasure of getting a 0x7E blue screen while trying to deploy our WinXP SP3 HI image to a couple of HP-Compaq NX6125 laptops. We use HIIS from Altrinsic Solutions and I thought perhaps that HIIS was trying to inject a HAL that was incorrect so I went into the driver management screen and ended up trying 3 different HAL files, none of which worked. After contacting Altrinsic support they were happy to share some information related to the 0x7E issue.

0x7E has a few root causes, mine happened to be that my HI image was built in VMWare running on an Intel processor and I was trying to send the image over to an AMD based machine. The technical details are as follows:

DS 6.9 SP3

Windows Server 2003 Std. SP2 (x86)

HIIS 6.9.0.1530

The fix is pretty straightforward as long as you’re comfortable with REGEDIT.

Open Image Explorer on the DS and within the image navigate to C:\WINDOWS\SYSTEM32\CONFIG.

Find the file named “SYSTEM”, it has no extension. This is a registry hive.

Right click the file and choose extract and send it out to the desktop of the DS. Do not close Image Explorer, you will need to replace this file later.

Launch REGEDIT on the DS and select HKEY_LOCAL_MACHINE and go to File> Load Hive, browse to the desktop and select the SYSTEM file you exported from the image in the previous step.

A dialog box will prompt you to name the hive, I used “temp”. Once you load the hive, expand the HKEY_LOCAL_MACHINE and then expand your TEMP hive.

Under the temp hive, find the “Select” folder and click once on it. In the right pane of regedit you should see some keys with their values such as: Current, Default, Failed, and LastKnownGood. What you are looking for is the value of “Current,; mine was 1.

The value of Current is going to relate to which “CurrentControlSet” folder you need to open. Since my value for Current was 1, I opened the CurrentControlSet001 folder. Expand the CurrentControlSet00Y (where Y is the value for “Current” in the previous step) folder and then expand Services.

Scroll down through the list of Services until you find “intelppm” and single click it. In the right pane you see several items, one of which should be “Start”. In my case, the value of Start was (1) which means the Intel driver is enabled; this was my problem.

Double click on the Start value and change it from 1 to 4 (leaving Hexadecimal selected). Once that is complete, collapse the TEMP hive and go to File> Unload Hive and confirm you wish to unload it.

Close regedit and then drag the SYSTEM file from the desktop of the DS (the one we just made a change to) over into the C:\WINDOWS\SYSTEM32\CONFIG directory within your image using image explorer and confirm your wish to overwrite the current SYSTEM file. Finally, close down Image Explorer and retry your image job.

What this does is disable the Intel PPM driver from loading during startup. My image deployed perfectly after this change was made.

One important thing to note: When you deploy this adjusted image to an Intel based machine, the registry value we changed will be flipped back to 1 or the keys/values will be recreated so that everything functions properly. There is NO need to create deploy jobs both processors.

That wraps up this post and I hope that I’ve given you enough information to fix your issue. Another cause of the 0x7E BSOD is if you are attempting to use a HAL file collected from XP SP2 on an image that is SP3, you sometimes run into issues there. If you haven’t checked out HIIS, give the demo a try.