Page 1 of 1

[SOLVED] Wads - Failed installation of Windows 11

Published: November 5, 2024 - 9:10 AM
by Vercingetorix
Good morning,
wapt 2.5.5.15697 with Wads we are trying to install windows 11 with an iso in 24h2.
We are encountering an incomplete installation which ends with "Windows 11 installation failed".
You will find attached the error log file ("setuperr.log" "setupact.log") in case you need it.
We are primarily looking into this on the Microsoft side, but in case you have encountered this type of problem, I am opening a post on the subject.
Here are the types of errors found in the logs:

Code: Select all

MOUPG  CSetupManager::InitializeImageDeployAction(8932): Result = 0x80070002[gle=0x00000002]
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::DlpManagerCallback(2626): Result = 0x80070002[gle=0x00000002]
2024-10-31 11:01:28, Error                 MOUPG  SendCallbackMessage: [0x20001] -> user callback returned 0x80070002[gle=0x00000002]
2024-10-31 11:01:28, Error                 MOUPG  CDlpTask::SendCallbackMessage(2696): Result = 0x80070002[gle=0x00000002]
2024-10-31 11:01:28, Error                 MOUPG  CDlpTask::ExecuteActions(3487): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CDlpTask::Execute(1643): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::ExecuteTask(3116): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::ExecuteTask(3078): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::ExecuteInstallMode(1159): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::ExecuteDownlevelMode(609): Result = 0x80070002
2024-10-31 11:01:28, Error                 MOUPG  CSetupManager::GetDUSetupResults(8418): Result = 0x80070490
2024-10-31 11:02:32, Error                 MOUPG  CSetupManager::Execute(345): Result = 0x80070002
2024-10-31 11:02:32, Error                 MOUPG  CSetupHost::Execute(517): Result = 0x80070002
If you have any ideas, we're all ears.
Thank you in advance.
Good day.

Re: Wads - Failed installation of Windows 11

Published: November 5, 2024 - 12:52 PM
by sfonteneau
Good morning

Indeed, Windows 11 24h2 requires modifications.

The XML file should no longer begin with comments but directly with:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
Then this must be deleted:

Code: Select all

<FullName>superadmin</FullName>
And this too must be removed:

Code: Select all

<Path>install.wim</Path>
The new template is therefore:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
	<!--https://schneegans.de/windows/unattend-generator/?LanguageMode=Unattended&UILanguage=en-US&Locale=en-US&Keyboard=00000409&GeoLocation=244&ProcessorArchitecture=amd64&ComputerNameMode=Random&CompactOsMode=Default&TimeZoneMode=Implicit&PartitionMode=Interactive&WindowsEditionMode=Unattended&WindowsEdition=pro&UserAccountMode=Unattended&AccountName0=Admin&AccountPassword0=password&AccountGroup0=Administrators&AccountName1=User&AccountPassword1=password&AccountGroup1=Users&AccountName2=&AccountName3=&AccountName4=&AutoLogonMode=Own&PasswordExpirationMode=Unlimited&LockoutMode=Default&HideFiles=Hidden&TaskbarSearch=Box&WifiMode=Interactive&ExpressSettings=DisableAll&KeysMode=Skip&ColorMode=Default&WallpaperMode=Default&StartTilesMode=Default&StartPinsMode=Default&WdacMode=Skip&Microsoft-Windows-UnattendedJoin=offlineServicing-->
	<settings pass="offlineServicing">
		<component name="Microsoft-Windows-UnattendedJoin" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<!--Placeholder-->
		</component>
	</settings>
	<settings pass="windowsPE">
		<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<SetupUILanguage>
				<UILanguage>en-US</UILanguage>
			</SetupUILanguage>
			<InputLocale>0409:00000409</InputLocale>
			<SystemLocale>en-US</SystemLocale>
			<UILanguage>en-US</UILanguage>
			<UserLocale>en-US</UserLocale>
		</component>
		<component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<UserData>
				<ProductKey>
					<Key>VK7JG-NPHTM-C97JM-9MPGT-3V66T</Key>
				</ProductKey>
				<AcceptEula>true</AcceptEula>
			</UserData>
		</component>
	</settings>
	<settings pass="generalize"></settings>
	<settings pass="specialize">
		<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<RunSynchronous>
				<RunSynchronousCommand wcm:action="add">
					<Order>1</Order>
					<Path>net.exe accounts /maxpwage:UNLIMITED</Path>
				</RunSynchronousCommand>
				<RunSynchronousCommand wcm:action="add">
					<Order>2</Order>
					<Path>powershell.exe -NoProfile -Command "$xml = [xml]::new(); $xml.Load('C:\Windows\Panther\unattend.xml'); $sb = [scriptblock]::Create( $xml.unattend.Extensions.ExtractScript ); Invoke-Command -ScriptBlock $sb -ArgumentList $xml;"</Path>
				</RunSynchronousCommand>
				<RunSynchronousCommand wcm:action="add">
					<Order>3</Order>
					<Path>reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT"</Path>
				</RunSynchronousCommand>
				<RunSynchronousCommand wcm:action="add">
					<Order>4</Order>
					<Path>reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v "UnattendedSetup" /t REG_SZ /d "powershell.exe -NoProfile -Command \"Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\UserOnce.ps1' -Raw | Invoke-Expression;\"" /f</Path>
				</RunSynchronousCommand>
				<RunSynchronousCommand wcm:action="add">
					<Order>5</Order>
					<Path>reg.exe unload "HKU\DefaultUser"</Path>
				</RunSynchronousCommand>
			</RunSynchronous>
		</component>
	</settings>
	<settings pass="auditSystem"></settings>
	<settings pass="auditUser"></settings>
	<settings pass="oobeSystem">
		<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<InputLocale>0409:00000409</InputLocale>
			<SystemLocale>en-US</SystemLocale>
			<UILanguage>en-US</UILanguage>
			<UserLocale>en-US</UserLocale>
		</component>
		<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
			<UserAccounts>
				<LocalAccounts>
					<LocalAccount wcm:action="add">
						<Name>Admin</Name>
						<Group>Administrators</Group>
						<Password>
							<Value>password</Value>
							<PlainText>true</PlainText>
						</Password>
					</LocalAccount>
					<LocalAccount wcm:action="add">
						<Name>User</Name>
						<Group>Users</Group>
						<Password>
							<Value>password</Value>
							<PlainText>true</PlainText>
						</Password>
					</LocalAccount>
				</LocalAccounts>
			</UserAccounts>
			<AutoLogon>
				<Username>Admin</Username>
				<Enabled>true</Enabled>
				<LogonCount>1</LogonCount>
				<Password>
					<Value>password</Value>
					<PlainText>true</PlainText>
				</Password>
			</AutoLogon>
			<OOBE>
				<ProtectYourPC>3</ProtectYourPC>
				<HideEULAPage>true</HideEULAPage>
				<HideWirelessSetupInOOBE>false</HideWirelessSetupInOOBE>
				<HideOnlineAccountScreens>false</HideOnlineAccountScreens>
			</OOBE>
			<FirstLogonCommands>
				<SynchronousCommand wcm:action="add">
					<Order>1</Order>
					<CommandLine>reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoLogonCount /t REG_DWORD /d 0 /f</CommandLine>
				</SynchronousCommand>
			</FirstLogonCommands>
		</component>
	</settings>
	<Extensions xmlns="https://schneegans.de/windows/unattend-generator/">
		<ExtractScript>
param(
    [xml] $Document
);

$scriptsDir = 'C:\Windows\Setup\Scripts\';
foreach( $file in $Document.unattend.Extensions.File ) {
    $path = [System.Environment]::ExpandEnvironmentVariables(
        $file.GetAttribute( 'path' )
    );
    if( $path.StartsWith( $scriptsDir ) ) {
        mkdir -Path $scriptsDir -ErrorAction 'SilentlyContinue';
    }
    $encoding = switch( [System.IO.Path]::GetExtension( $path ) ) {
        { $_ -in '.ps1', '.xml' } { [System.Text.Encoding]::UTF8; }
        { $_ -in '.reg', '.vbs', '.js' } { [System.Text.UnicodeEncoding]::new( $false, $true ); }
        default { [System.Text.Encoding]::Default; }
    };
    [System.IO.File]::WriteAllBytes( $path, ( $encoding.GetPreamble() + $encoding.GetBytes( $file.InnerText.Trim() ) ) );
}
		</ExtractScript>
		<File path="C:\Windows\Setup\Scripts\UserOnce.ps1">
&amp; {
Set-ItemProperty -LiteralPath 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Search' -Name 'SearchboxTaskbarMode' -Type 'DWord' -Value 2;
} *&gt;&amp;1 &gt;&gt; "$env:TEMP\UserOnce.log";
		</File>
	</Extensions>
</unattend>

[SOLVED] Re: Wads - Failed installation of Windows 11

Published: November 6, 2024 - 10:34 AM
by Vercingetorix
Good morning,
Indeed, the new configuration file provided resolves the issue.
After adapting it a bit, because the language is US and not French for example.

Code: Select all

	
	<SetupUILanguage>
	<UILanguage>en-US</UILanguage>
	</SetupUILanguage>
	<InputLocale>0409:00000409</InputLocale>
	<SystemLocale>en-US</SystemLocale>
	<UILanguage>en-US</UILanguage>
	<UserLocale>en-US</UserLocale>  
The problem is therefore solved.
Thank you very much for your help.
Good day.