Having Problems with my universal image
i’m working on an universal image in audit mode. Its working good till i deployed this image on 2 of my HP computers. I get the problem :" windows could not complete the installation. to install windows on this computer reboot."
When installing , you see its going wrong. And i have no idea what the problem is.
I put manually drivers in the directory c:\windows\inf. When i delete this drivers , it will image good.
On the moment i add some drivers , i get the problem again. I have no idea what the solution is.
I searched already a lot for this. (Its Windows 7 Sysprep Audit mode)
A little bit based on :
I use snappy driver installer and I drop chipset + ethernet drivers in a driverpack folder inside of windows/inf and it works fine. After setup it launches SDI over network and installs the rest of the drivers.
There’s other reasons why sysprep could fail, such as Windows Media Player service (or whatever it’s called) running or your windows grace period expiring.
There’s only a few times I’ve seen issues with sysprep. First, the drivers that are being installed are NOT signed. Windows 7 (and later I suppose) require all drivers during the setup process to be signed. If the drivers it’s loading are not signed, it will cause issues during the sysprep process. Another time I’ve seen this is with the Antivirus software installed on the image. The GUID of the antivirus doesn’t get changed when you sysprep the system and when sysprep starts up the UID of the system changes which would require a GUID of the antivirus software to be updated. The fix for me was to uninstall antivirus from the image and have it install from the setupcomplete.cmd or use a version of the antivirus that did not make this a stringent element to boot the system.
This post is deleted!
When i look to the logs in the directory \panther … i see this error :
(copy pasted it from a site that got the exact same error).
2010-10-20 09:17:00, Info [windeploy.exe] WinDeploy.exe launched with command-line …
2010-10-20 09:17:00, Info [windeploy.exe] Setup has not completed, adding pending reboot.
2010-10-20 09:17:00, Info [windeploy.exe] Found generalization state [0x4], setup.exe completion flag [False] --> launching setup.exe.
2010-10-20 09:17:00, Info [windeploy.exe] Launching [C:\Windows\system32\oobe\setup.exe]…
2010-10-20 09:17:49, Info [windeploy.exe] Process exited with exit code [0x1f]
2010-10-20 09:17:49, Error [windeploy.exe] Setup.exe failed, returning exit code [0x1f]
2010-10-20 09:17:49, Error [windeploy.exe] Failure occured during online installation. Online installation cannot complete at this time.; hr = 0x80004005
2010-10-20 09:17:49, Info [windeploy.exe] Flushing registry to disk…
2010-10-20 09:17:51, Info [windeploy.exe] Flush took 1938 ms.
2010-10-20 09:17:51, Info [windeploy.exe] WinDeploy.exe exiting with code [0x80004005]
I’m not sure anymore.
I used driverpacks and SAD3 for another new solution – So drivers in a directory C:\D\SAD3 with a script and setupcomplete.cmd. So no drivers anymore in c:\windows\inf. I Deployed it and got the same error. I’m not understanding it anymore…
Its wierd because i made the same image without that SAD3 and without windows/inf and its just deploying easy.
First of all, let me say this is not a fog issue but rather a reference image build problem.
With that said, I’ve had this issue before even using MDT and then injecting the drivers with FOG. What happens is that you have a driver failing to install and it causes the windows setup to fail. This typically happens when you try to inject the wrong driver. The driver may be wrong, but close enough for windows to identify it.
So how do you fix it.
First I would change my approach on how you are injecting drivers into the image. I would recommend that you create a drivers folder in the root of the C: drive called C:\Drivers. Place your model specific drivers in that container. The (for Win7) update the registry path to tell windows to look in that drivers folder first then in the c:\windows\inf folder. You can do this by updating the registry with this command:
REG ADD "HKLM\Software\Microsoft\Windows\CurrentVersion" /v DevicePath /t REG_SZ /d "C:\Drivers;%SystemRoot%\inf;" /f
Understand I use MDT to build my reference image so everything is scripted and exactly the same each quarter when I rebuild my reference images. In my case I have a FOG posts install script determine the target computer model and then only copy that models drivers to the c:\drivers folder. That way I don’t have to add 15GB to each reference image to maintain a complete package of all drivers for all supported models.
To debug your current situation I would follow the accepted answer in this post:
The idea is to break out of the setup so you can inspect the install logs to find out what in your deployment is breaking. By setting the ChildCompletion registry setting to basically done, you will be able to reboot into a functioning windows computer and inspect the build logs in c:\windows\panther.
Why do you need the local system to have the drivers?
If the driver store is using this new location as the issue and something goes wrong there, this would be why you’re having problems.
The way I approach it is to have the drivers install during the setupcomplete script. It mounts the driver location from this script rather than regular bootup. I tell it when to install the drivers vs. windows trying to just use them.
Just a suggestion. I don’t know why it’s not working, but the fact that you already know WHY it’s failing (in the sense that keeping the drivers out of the loop everything is fine) so why keep trying to go down the same road.