Jump to content

Issue with adding x64 image to domain


Recommended Posts

I am currently working on 2 Windows 7 Enterprise images and am having an issue adding the PC to the domain on the 64bit image.

The sysprep file contains marker files for certain info that I will replace in the unattend.xml file while in WinPE after applying the image. But for whatever reason, at the end of the setup, the x64 setup is not adding to the domain while the x86 setup is.

Snippets from the original Sysprep file

        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CopyProfile>true</CopyProfile>
<TimeZone>Eastern Standard Time</TimeZone>
<ShowWindowsLive>false</ShowWindowsLive>
<ComputerName>REPLACEME</ComputerName>
</component>
<component name="Microsoft-Windows-UnattendedJoin" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Identification>
<Credentials>
<Domain>THEDOMAIN</Domain>
<Password>THEPASSWORD</Password>
<Username>THEUSERNAME</Username>
</Credentials>
<JoinDomain>THEJOINDOMAIN</JoinDomain>
</Identification>
</component>

Looking at the setupact log file in the panther folder, I find where djoin.exe is being called but am getting a different return code for each setup.

x64

[setup.exe] [Action Queue] : Command Line = C:\WINDOWS\SYSTEM32\DJOIN.EXE / arguments =  / pass = specialize / manifest path = C:\Windows\Winsxs\Manifests\amd64_microsoft-windows-unattendedjoin_31bf3856ad364e35_6.1.7600.16385_none_0f09d6468685a4d3.manifest
[setup.exe] [Action Queue] : Command Line = C:\WINDOWS\SYSTEM32\SETUPUGC.EXE / arguments = / pass = specialize / manifest path = C:\Windows\Winsxs\Manifests\amd64_microsoft-windows-deployment_31bf3856ad364e35_6.1.7600.16385_none_57e3e87206ff08ca.manifest
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\RUNDLL32.EXE" shsetup.dll,SHUnattendedSetup specialize
[setup.exe] [Action Queue] : process exit code = 1
[setup.exe] [Action Queue] : Unattend action requested delayed reboot.
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\DJOIN.EXE" specialize
[setup.exe] [Action Queue] : process exit code = 0
[setup.exe] [Action Queue] : Unattend action returned operation complete.
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\SETUPUGC.EXE" specialize
[setup.exe] [Action Queue] : process exit code = 0
[setup.exe] [Action Queue] : Unattend action returned operation complete.
[setup.exe] [Action Queue] : ProcessActionQueue finish (hr = 0x1f1000)
[setup.exe] One or more unattend GCs requested a delayed reboot; we will reboot the computer

x86

[setup.exe] [Action Queue] : Command Line = C:\WINDOWS\SYSTEM32\DJOIN.EXE / arguments =  / pass = specialize / manifest path = C:\Windows\Winsxs\Manifests\x86_microsoft-windows-unattendedjoin_31bf3856ad364e35_6.1.7600.16385_none_b2eb3ac2ce28339d.manifest
[setup.exe] [Action Queue] : Command Line = C:\WINDOWS\SYSTEM32\SETUPUGC.EXE / arguments = / pass = specialize / manifest path = C:\Windows\Winsxs\Manifests\x86_microsoft-windows-deployment_31bf3856ad364e35_6.1.7600.16385_none_fbc54cee4ea19794.manifest
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\RUNDLL32.EXE" shsetup.dll,SHUnattendedSetup specialize
[setup.exe] [Action Queue] : process exit code = 1
[setup.exe] [Action Queue] : Unattend action requested delayed reboot.
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\DJOIN.EXE" specialize
[setup.exe] [Action Queue] : process exit code = 1
[setup.exe] [Action Queue] : Unattend action requested delayed reboot.
[setup.exe] [Action Queue] : Executing command "C:\WINDOWS\SYSTEM32\SETUPUGC.EXE" specialize
[setup.exe] [Action Queue] : process exit code = 0
[setup.exe] [Action Queue] : Unattend action returned operation complete.
[setup.exe] [Action Queue] : ProcessActionQueue finish (hr = 0x1f1000)
[setup.exe] One or more unattend GCs requested a delayed reboot; we will reboot the computer

I did some searching and was unable to find info on the djoin return codes so am not certain why they are different outside of one worked while the other didn't.

I know that the username/password that I am using in the unattend.xml file is correct as I can use them to add the PC to the domain manually.

Any thoughts on what I am missing?

Link to comment
Share on other sites


Usually when djoin exits out with error code 0, it really is an error code 2138, or 0x85a (the exit code of 0 is the last error code, which would be 1 if it worked). 0x85a is generally an error setting or resetting a machine account in the domain, but if you're using the same user/pass combo in both answer files (might want to check for typos, trailing spaces, etc just in case) it doesn't make a whole lot of sense why it's failing only on x64. Note that WDS has it's own set of rules for this, where the account set/reset is done with the creds entered into the WDS UI once you've booted PE (before you see the images), although the error is likely the same error code.

Link to comment
Share on other sites

Thanks for the response, I think I have it working. I recreated my answer file and while doing that I found the debugjoin setting. I set that in my unattend.xml file in the image and tried imaging the PC again. When I looked in the setuperr.log file, found in c:\Windows\panther\unattendGC I found the following

[DJOIN.EXE] Unattended Join: NetJoinDomain failed error code is [1355]

[DJOIN.EXE] Unattended Join: DsGetDcName test failed: 0x54b, last error is 0x0, breaking if debugger attached...

[DJOIN.EXE] Unattended Join: Unable to join; gdwError = 0x54b

Did a search on DSGetDcName test failed and found mention of using the FQDN, reimaged my test machine, added the FQDN and the PC was added to the domain. Looks like that corrected my issue. Not sure why the 64bit image requires the FQDN for the unattended setup while the 32bit image doesn't.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...