I was able to run trials on a VM and I can't get this to work.

I created a win32 app deployed to system with the following script:

$Hebrew = Get-WindowsCapability -online -Name lang*he* | Where-Object displayname -Match "hebrew"
foreach($h in $Hebrew){if($h.State -ne "Installed"){Add-WindowsCapability -Online -Verbose -Name $h.name}}
Set-WinSystemLocale -SystemLocale he-IL
Set-Culture -CultureInfo he-IL
Set-WinHomeLocation -GeoId 117
Set-WinUserLanguageList en-US,he-IL -Force
$XMLfile = @"
<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">

<!-- user list -->
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/>
</gs:UserList>

<!-- system locale -->
<gs:SystemLocale Name="he-IL"/>

<!-- input preferences -->
<gs:InputPreferences>
<gs:InputLanguageID Action="add" ID="0409:00000409"/>
<gs:InputLanguageID Action="add" ID="040D:0000040D"/>
<!--gs:InputLanguageID Action="remove" ID="0409:00000409"/-->
</gs:InputPreferences>

</gs:GlobalizationServices>
"@
New-Item -Path $env:TEMP -Name "intlcfg.xml" -Value $XMLfile -Force -Verbose
$XMLPath = Join-Path $env:Temp -ChildPath "intlcfg.xml"
& $env:windir\System32\control.exe "intl.cpl,,/f:`"$XMLPath`""
Start-Sleep 5
& $env:windir\System32\control.exe "intl.cpl,,/f:`"$XMLPath`""
Get-Item -Path (Join-Path $env:TEMP -ChildPath "intlcfg.xml") | Remove-Item -Verbose

 

If I run this manually in an OOBE fresh installation, I get the expected result. but when I try it during autopilot the settings don't copy.

 

Rahamim.