使用 Delphi 显示当前用户的语言(英文)?

And*_*zej 4 delphi delphi-10.3-rio

某些 Windows 计算机安装了多种显示语言。

我可以使用以下函数以该语言获取当前用户的 UI 语言:

function GetUsersWindowsLanguage: string;
var
  WinLanguage: array [0..50] of char;
begin
  VerLanguageName(GetUserDefaultUILanguage, WinLanguage, 50);
  Result := WinLanguage;
end;
Run Code Online (Sandbox Code Playgroud)

这个函数输出如下:

Espagnol (Espagne)
Run Code Online (Sandbox Code Playgroud)

输出不是英文。我只需要“西班牙语”。有没有办法获得英文的显示语言?

我正在使用 Delphi 10.3.3(VCL 应用程序)。

小智 7

function GetUsersWindowsLanguage: string;
var
  WinLanguage: array [0..50] of char;
begin
  GetLocaleInfoW(GetUserDefaultUILanguage, LOCALE_SENGLISHDISPLAYNAME, WinLanguage, 50);
  Result := WinLanguage;
end;
Run Code Online (Sandbox Code Playgroud)