Форум: "WinAPI";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];
ВнизКак определить, что винда русифицирована? Найти похожие ветки
← →
@ac (2004-02-19 08:01) [0]Как определить, что винда русифицирована?
← →
Игорь Шевченко © (2004-02-19 10:44) [1]GetSystemDefaultUILanguage для Win2k и выше.
или
function TOSData.GetOSLanguage: String;
var
SystemLocale : String;
begin
SystemLocale := "";
with TRegistry.Create(KEY_READ) do
try
RootKey:=HKEY_LOCAL_MACHINE;
if OpenKey("SYSTEM\CurrentControlSet\Control\Nls\Language",
false) then begin
if ValueExists("InstallLanguage") then
SystemLocale := ReadString("InstallLanguage")
else
SystemLocale := ReadString("Default");
CloseKey();
end;
finally
Free();
end;
Result := HSGetLocaleLanguageName(SystemLocale);
end;
{ Для определения языка в NT-системах предпочтительней вызывать Unicode-версию
GetLocaleInfo }
function HSGetLocaleLanguageName (Locale : Cardinal) : String;
var
tmp : array[0..255] of char;
tmpW : array[0..255] of WideChar;
begin
if Win32Platform = VER_PLATFORM_WIN32_NT then begin
GetLocaleInfoW(Locale, LOCALE_SLANGUAGE, tmpW, SizeOf(tmpW));
Result := WideCharToString(tmpW);
end else begin
GetLocaleInfo(Locale, LOCALE_SLANGUAGE, tmp, SizeOf(tmp));
Result := tmp;
end;
end;
function HSGetLocaleLanguageName (SLocale : String) : String;
var
I : Integer;
Locale : Cardinal;
begin
Locale := 0;
for I:=1 to 4 do
Locale := (Locale shl 4) + Cardinal(Byte(SLocale[I]) - $30);
Result := HSGetLocaleLanguageName (Locale);
end;
← →
@ac (2004-02-22 08:02) [2]GetSystemDefaultUILanguage
А это какая библиотека?
← →
DVM © (2004-02-22 19:07) [3]
> А это какая библиотека?
kernel32.dll
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.033 c