windows could not complete the installation
Hey all, I have been scouring this site and the web for this error over the past few days and not finding a solid answer. I have a slightly more unusual error that I have yet to see referenced by any of the forums or posts that I have found.
In most scenarios people are booting their computers after Fog drops the image, it goes through the standard Windows is preparing this computer for first boot, etc, and then they receive this error. When they reboot the error returns. Several solutions for this have been:
- Enable the administrator account
- Give the administrator account a password
- (FOG specific) make sure the client is disabled prior to sysprep/capture
- Driver related
- Lack of administrator account prior to sysprep: http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_install/windows-could-not-complete-the-installation-to/bf09c3c5-298b-459f-aed5-4f431b8398f5?auth=1
And there are a few others I’m forgetting I’m sure, but whats unusual about my setup, is if I reboot my computer at this stage (or press OK to reboot) then it boots into the OS without error or issue. I don’t believe there is a forum out there that describes this behavior, because if I try the steps above, after I try them, the next step is to reboot, which I know will fix the issue, so its not a great answer.
I am running FOG 1.3.0 -RC8 on Centos 7. This is on a Windows 7 x64 image.
I am using an ESXi box to create a VM that houses my ‘base image’. I booted to the ISO, installed windows 7, booted up, entered Audit mode, created a local admin for my purposes (and perhaps this is what I should avoid and let sysprep do this) and that was pretty much it. Since I had seen these issues after several hours of perfecting a base image, just to watch it get errors, I stopped doing all of the windows 7 updates and left it as plain as possible.
I register my VM with FOG and capture the image. I then create another VM, boot it to PXE and deploy that image to it.
In one trial I used an unattend file that I created using WAIK. This has seen errors such as the computer hanging on “Setup is checking Video performance” and then displaying the same error (or not, sometimes it would just check video performance for several hours), ultimately a reboot would make it go to windows, no problem.
I then decided to sysprep without a unattend file, thinking there was an error in there somewhere. Started with my plain base image, sysprepped it, captured, and deployed it. It pushed quickly, made me do the oobe setup (as expected), at the end of it, setup went to a black screen and did some final services and setup items (again, as expected) and then up popped the same error about not being able to complete the installation, and yet again, a reboot solved the issue. Going crazy because there is an issue, that isn’t actually an issue!
Would love to hear if others have had this, or solved it, I don’t mind syspreppging the image over and over with an updated unattend file and trying that as well, or even if adding a shutdown /r /t 0 in a setupcomplete (assuming this script runs around that time), which I am not currently using because i have had these issues and wanted to keep this as clean as possible.
As always, thanks for the advice and support.
Thanks, yes, I didn’t even have it installed until last night, and I did disable it and have it re-enable in the new system. I like 1.3 because it shows up as a pending host automatically which is awesome. Just need to get name changing working from the Fog server and I’ll be set.
Thanks again everyone!
@MattPayerle Thats great you have it working (sort of).
I’m sure you know this already, but I will state it again. Make sure the FOG service is disabled in your reference image before you sysprep it. Then use the setupcomplete.cmd file and sc to reenable the service. That keeps the fog client from starting its job too soon in the OOBE process.
Ok, so I am about to shove rusted forks into my eyeballs. In short, this issue is resolved, but I don’t know what it is.
Whilst waiting and testing, I decided to take some time and work on polishing my reference image. I installed the fog client, a couple of other applications. I changed my unattend.xml to activate the built in administrator account, gave it a password, and did some other small adjustments to a SetupComplete file that didn’t exist in the first place, because I didn’t think it needed to be there if it didn’t serve much purpose at the time, especially for just a blank OS to be dropped.
Anyway, thank you all for your help and knowledge through this process. Feel free to mark solved, or at least solved (not a FOG issue).
@Avaryan Thank you, sometimes the simple answers are easiest to forget :(
@george1421 Ok, Tried these steps, and no matter what, it still threw the error at the end.
Good news out of all of this is I finally got a full log file in the Panther folder that shows items from today. It has several hundred lines, so I would rather not paste it here to avoid a lengthy post, anyway I can upload it here?
TrustedInstaller.exeis suspect. But, it could be any of these processes. Some I recognize, some I don’t. For example, it’s not
Sounds good, pasted below.
Not sure if this would matter, but I selected all of the images to be Single disk, resizable every time, but since windows 7 has that 100 mb partition up front, would that cause an issue here? I went ahead and created an image for multi parition non resizable and am capturing and will deploy later on tonight. I noticed when I booted my test VM that the hard drive was nearly full at almost 9 gigs when I had originally given it 45. So I’m wondering if something happened there. Also, since it was a VM, I was booting originally from the ISO from the datastore, and I forgot to disconnect and remove the ISO connection before capturing. I’ll try removing this as well and re-capturing in a few different formats and redeploying to see if one of those (either partitions or iso/dvd) was causing some problems while you all review the task list :) Thanks again!
Image Name PID Session Name Session# Mem Usage Status User Name CPU Time Window Title ========================= ======== ================ =========== ============ =============== ================================================== ============ ======================================================================== System Idle Process 0 Services 0 24 K Unknown NT AUTHORITY\SYSTEM 0:03:18 N/A System 4 Services 0 604 K Unknown NT AUTHORITY\SYSTEM 0:00:07 N/A smss.exe 232 Services 0 1,092 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A csrss.exe 308 Services 0 3,592 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A wininit.exe 336 Services 0 4,368 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A csrss.exe 352 Console 1 4,048 K Running NT AUTHORITY\SYSTEM 0:00:00 N/A winlogon.exe 384 Console 1 5,716 K Running NT AUTHORITY\SYSTEM 0:00:00 FirstUXWnd services.exe 436 Services 0 8,180 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A lsass.exe 460 Services 0 10,448 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A lsm.exe 468 Services 0 3,604 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A svchost.exe 580 Services 0 8,872 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A svchost.exe 652 Services 0 6,332 K Unknown NT AUTHORITY\NETWORK SERVICE 0:00:00 N/A windeploy.exe 728 Console 1 8,388 K Running NT AUTHORITY\SYSTEM 0:00:00 Install Windows sppsvc.exe 824 Services 0 10,740 K Unknown NT AUTHORITY\NETWORK SERVICE 0:00:01 N/A svchost.exe 864 Services 0 42,704 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A svchost.exe 888 Services 0 33,628 K Unknown NT AUTHORITY\SYSTEM 0:00:02 N/A svchost.exe 924 Services 0 13,156 K Unknown NT AUTHORITY\LOCAL SERVICE 0:00:00 N/A svchost.exe 108 Services 0 10,784 K Unknown NT AUTHORITY\LOCAL SERVICE 0:00:00 N/A svchost.exe 316 Services 0 29,184 K Unknown NT AUTHORITY\NETWORK SERVICE 0:00:00 N/A spoolsv.exe 1116 Services 0 4,060 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A svchost.exe 1144 Services 0 12,144 K Unknown NT AUTHORITY\LOCAL SERVICE 0:00:00 N/A WmiPrvSE.exe 1856 Services 0 8,668 K Unknown NT AUTHORITY\NETWORK SERVICE 0:00:00 N/A svchost.exe 1912 Services 0 7,720 K Unknown NT AUTHORITY\LOCAL SERVICE 0:00:00 N/A SearchIndexer.exe 1976 Services 0 23,028 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A SearchProtocolHost.exe 1252 Services 0 7,316 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A SearchFilterHost.exe 1204 Services 0 4,620 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A cmd.exe 1612 Console 1 2,924 K Running NT AUTHORITY\SYSTEM 0:00:00 Administrator: C:\Windows\system32\cmd.exe - tasklist /v conhost.exe 1000 Console 1 4,832 K Running NT AUTHORITY\SYSTEM 0:00:00 OleMainThreadWndName TrustedInstaller.exe 1708 Services 0 20,612 K Unknown NT AUTHORITY\SYSTEM 0:00:03 N/A VSSVC.exe 1760 Services 0 12,244 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A svchost.exe 1972 Services 0 5,472 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A tasklist.exe 2248 Console 1 5,508 K Unknown NT AUTHORITY\SYSTEM 0:00:00 N/A
Nothing popped out at me on the tasklist, but happy to paste it or upload it.
Please paste it, use the code-wrapping tool.
@Wayne-Workman Agreed, hoping to find something that is hung that can be fixed. I redeployed the image that gets through oobe without hanging, but after I do answer all of the initial questions (Name, EULA, timezone, etc) and then it prepares windows and goes to a black screen and shows the original error message: Windows could not complete the installation…"
I did the Shift f10 and pushed tasklist to a text file as soon as I saw the error appear. I’ll attach that here.
I went to the Panther file and found the 3 files that were modified at the time that I dropped the image. There were a few files in there from a few days ago, so I found these in the IE folder under Panther.
Scratch that, I apparently don’t have enough privileges to upload a file here, can this be granted or is there a better way you would rather have me share these text files?
The Setupact.log file under Panther only had this for today, the reset of the items are dated for 2 days ago:
2016-08-28 16:50:40, Info [IE sysprep provider] Sysprep_Specialize_IE entered
2016-08-28 16:50:40, Info [SetIEInstalledDate LIB] SetIEInstalledDate() Setting IE Installed Date
2016-08-28 16:50:40, Info [SetIEInstalledDate LIB] On 64-bit OS: Setting IE Installed Date values
2016-08-28 16:50:40, Info [IESetup LIB] Calling CAdjustPrivilege constructor arg: SeRestorePrivilege
2016-08-28 16:50:40, Info [IESetup LIB] Calling CAdjustPrivilege constructor arg: SeRestorePrivilege
2016-08-28 16:50:40, Info [IE sysprep provider] Sysprep_Specialize_Shell exit
Nothing popped out at me on the tasklist, but happy to paste it or upload it.
Haven’t gotten around to the other troubleshooting steps from George, trying those later tonight.
Well, if you find a hanging process, what it is would likely lead you to an answer.
@Tom-Elliott Thanks for this, I had seen this as well through other forums, especially with AVG. Sadly, I don’t have this or any other AV installed during these tests, but solid note and something to look for for sure in the future, or as @Wayne-Workman mentioned, checking the process on the hang up. I’ll look to do that as well. I’m hoping I can find something that will be easily scriptable to kill because, it doesn’t do me a lot of good to look it up each time on a machine if a reboot will fix it anyway, which means scripting in a reboot would be just as effective here, just doesn’t answer the question of ‘why’ it happens.
@george1421 I’ll take a look at those deployment ideas, and get back once I have done them and report my findings.
Thanks all, have a good one!
@MattPayerle OK so it sysprepped, launched and deployed OK upon reboot. The next step is to introduce FOG into the picture. Repeat the sysprep part, power off the vm and then pxe boot into FOG and capture the image. Then redeploy the image back to the same vm, reboot the system. Since the fog client isn’t installed then none of the fog post install actions will be carried out (make sure the early name change is not enabled too). The expectation of this test is to produce the same exact results as your previous test. If you receive the same oobe results (success) as your first test then go on to the next test.
For the next test you will deploy to a second VM. The expected results is the same as your very first test. In this case you must use your previously captured image (from above) and just deploy to a like Virtual Machine.
Understand this is the same methodical process I would use to find a flaw in my deployments. You need to back up to where you have success and then start moving slowly out to your final design. Once you have a failure then you can identify what changed between working and failure. If the deployment to a second VM works, then you need to introduce the unatten.xml so you can avoid the questions during OOBE.
According to this article for Windows 7,
Windows can hang on “Finalizing Settings” due to a KB installer running, doing nothing - maybe attempting to install updates.
According to this article for Windows 8,
Windows can hang on “Finalizing Settings” when there are un-needed USB devices attached.
According to this article for Windows 8.1,
Windows can hang on “Finalizing Settings” due to a number of reasons:
It is recommended to temporarily deactivate your security protection – you should do that because antivirus and antimalware programs might interfere with the Windows installation process. Disable the disk utility software, including DVD/CD burning tools or third party defragment programs that you might use on your computer. You should apply all the Windows 8 updates before updating to Windows 8.1. If external devices are connected to your computer, before starting the flashing operation you should disconnect the same. Your hard disk must be checked against errors; in that matter you should run a scan disk operation – open a cmd window and on the same type “chkdsk /r /f”.
I would advise you to follow the advice for the Win8 one, check process IDs.
On the screen that hangs, press
Shift + F10to get to the command prompt. Then run
tasklistto get a list of tasks, or
tasklist /vfor a detailed view. If you see a kb process, kill it. Type
taskkill /PID 1234Replace “1234” with the process ID you noted earlier.
@MattPayerle while I’m not quite sure what’s going on, I have seen this issue appear when antivirus softer is installed. For my experience, the issue was due to AVG and I needed to unchecked the self identity check box to allow things to run properly or use an older version that did not worry about the system identifiers. Any possibility of the issue can crop up if you go to reboot the system, setup the upload task, but let the host system boot partially into Windows while it’s still in its first time stuff (before main GUI part loads and we see wiggly windows icon in center typically). Then reboot the system and the upload begins.
Ok, good information here. I went ahead and walked through the oobe settings of my reference image and it did everything perfectly. It went through its setup, checked all of the services, installed all of the devices and settings, then rebooted, went into the user config, made me create a user, accept the EULA, set the timezone, and windows updates. Then went to finalizing windows settings (note: just after this, it would then go to a black screen to and show the error) however, this went right to the login screen and allowed me to select my two users. So, I’m starting to lean towards a fog capture or deploy issue at this point. Since the reference image hasn’t changed.
No fog client, no sysprep file no setupcomplete file, etc. Literally just plain old windows 7 SP1 x64 - seriously, like the original install, still with IE8 (no updates, and don’t worry, it would do it even if it had updates :) ). But yeah, I’m at a small loss here. I can work on digging through the panther logs in a bit, but wanted to post this progress as well. Thanks again!
Ok, good call on that, I’ll sysprep the reference image. Yes, I always take a snapshot before sysprepping so I can go back. But I’ll see if fog is causing the issue that way or not. Maybe its the way I’m capturing and deploying the image. Since I’m building it from the iso, it might create 2 partitions for the boot environment, but I am telling fog to create an image that is 1 partition and make it expandable. Haven’t looked into that yet.
I’ll test that out and look through some of the logs and let you know. Thanks!
Its still not clear if this is a fog problem (which I’m thinking not) or a reference image creation issue. Of course you would have a snapshot before you sysprep (so you can restore the vm after this test), but sysprep the image on your reference image and then just boot your reference image back up. Does it startup without issue? This will test without fog in the picture. You are just syspreping the reference image and then booting it up through OOBE.
As for the logs in panther, they end with .log as well as there is a folder with DG or DC in the name there are logs in there too. You may have to copy them to the desktop to be able to view them. But they should give you an idea of what is going on with the OOBE process.
Thanks guys for the help, but I wanted to clarify a line in my original post that may change your answers slightly. I referenced that the issue may have been caused by the FOG service trying to start, or not being disabled in the reference image. However, I don’t have the FOG client installed at all on the reference image, I wanted to rule things out and I don’t have that in there, so therefore, no need to start it using the SetupComplete.cmd. Do you believe that me not having that client in the reference image could be causing this to take place?
I have watched the image drop process from the moment that FOG says the cloning is complete, all the way through the windows boot process and the setup and it doesn’t reboot at all, it does all of the system setup and configs and services, and then gets to the error I mentioned in the header. The full message (no picture at the moment) is “Windows could not complete the installation. To install Windows on this computer, restart the installation.”
I do use a VM and take a snapshot prior to doing sysprep so that I can revert, make changes and keep working. What logs should I look at in the panther folder? When I try to open them, I get Access is denied when I am logged in as an administrator (but not the ‘administrator’ built in user).
Also, I’m not using any drivers or any pointers to drivers since I am going to a fully functioning VM with full drivers installed, to another VM on the same machine. I mostly get the ‘checking video performance’ when I use a sysprep file, but again, it just hangs there, and a reboot resolves the issue. I’m happy if that is my final solution, albeit a little annoying, but I can handle that.
Thanks again, and hope the clarification brings light to this.