Hello.
I don't have the registry key that you mention:
"/HKEY_CURRENT_USER/Control Panel/Desktop/MuiCached/MachinePreferredUILanguages"
The bold part is as far as I could go on that path.
I do, however, have "\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Nls\Language\Default", mentioned earlier, which correctly has value 0409 for English.
Also, I found "HKEY_CURRENT_USER\Control Panel\International", which had an item "sLanguage" with value "ENU" for U.S. English. I don't know if one can count on that being there for other machines.
EDIT - I got a bit more curious about this, and tried it in Construct 0.99.84. I Created a new .cap, dropped a Registry and a Text object in it, and it works. Here is the one event that I used 'copied as text' using Construct:
+ System: Start of layout
-> Registry: Open key "SYSTEM\\ControlSet001\\Control\\Nls\\Language" under root HKEY_LOCAL_MAHCINE
-> Text: Set text to "Language code is " & Registry.ReadString("Default")[/code:2s6rxsh0]
This displays 0409 for me (US English.)
Note that the backslashes were 'escaped' using double backslashes, and the 'MAHCINE' is a typo in Construct.