скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как получить информацию о локальных настройках системы



Юзер: - Поставь-ка новые драйверы видеокарточки.
Windows: - А диск есть?
Юзер: - Есть.
Windows: - А что сказать надо?
Юзер: - Ok".
Windows: - Фиг тебе, а не Ok". Не могу найти необходимые файлы!
Юзер: - Так вот же они!
Windows: - Где?!
Юзер: - Да на диске!
Windows: - На каком?
Юзер: - На B:\.
Windows: - Нет такого диска.
Юзер: - А почему под DOS"ом есть?!
Windows: - Не мои проблемы.
Юзер: - А как же мне драйверы поставить?
Windows: - А зачем тебе драйверы? У тебя видеокарточки-то нет.
Юзер: - Не может быть!
Windows: - Точно тебе говорю.
Юзер: - А аудио есть?
Windows: - И аудио нет.
Юзер: - А что есть?
Windows: - Джойстик есть.
Юзер: - Отродясь не было...
Windows: - Мне виднее.
Юзер: - Надо же, а я его покупать собрался.
Windows: - Вот видишь! Что бы ты без меня делал?

Delphi имеет функцию GetLocaleInfo, которая позволяет получать различную информацию о локальных настройках, таких как системный язык, символ валюты, количество десятичных знаков и т.д.

Далее приведена функция, которая возвращает значение в зависимости от параметра "flag":


function TForm1.GetLocaleInformation(Flag: Integer): string;
var
  pcLCA: array [0..20] of Char;
begin
  if GetLocaleInfo(LOCALE_SYSTEM_DEFAULT, Flag, pcLCA, 19) <= 0 then
    pcLCA[0] := #0;
  Result := pcLCA;
end;

Пример использования функции:


procedure TForm1.Button1Click(Sender: TObject);
begin 
  ShowMessage(GetLocaleInformation(LOCALE_SENGLANGUAGE));
end;

"Flag" может содержать следующее значение (если посмотреть в Windows.pas):


LOCALE_NOUSEROVERRIDE { do not use user overrides }
LOCALE_USE_CP_ACP { use the system ACP }
LOCALE_ILANGUAGE { language id }
LOCALE_SLANGUAGE { localized name of language }
LOCALE_SENGLANGUAGE { English name of language }
LOCALE_SABBREVLANGNAME { abbreviated language name }
LOCALE_SNATIVELANGNAME { native name of language }
LOCALE_ICOUNTRY { country code } 
LOCALE_SCOUNTRY { localized name of country } 
LOCALE_SENGCOUNTRY { English name of country } 
LOCALE_SABBREVCTRYNAME { abbreviated country name } 
LOCALE_SNATIVECTRYNAME { native name of country } 
LOCALE_IDEFAULTLANGUAGE { default language id } 
LOCALE_IDEFAULTCOUNTRY { default country code } 
LOCALE_IDEFAULTCODEPAGE { default oem code page } 
LOCALE_IDEFAULTANSICODEPAGE { default ansi code page } 
LOCALE_IDEFAULTMACCODEPAGE { default mac code page } 
LOCALE_SLIST { list item separator } 
LOCALE_IMEASURE { 0 = metric, 1 = US } 
LOCALE_SDECIMAL { decimal separator } 
LOCALE_STHOUSAND { thousand separator } 
LOCALE_SGROUPING { digit grouping } 
LOCALE_IDIGITS { number of fractional digits } 
LOCALE_ILZERO { leading zeros for decimal } 
LOCALE_INEGNUMBER { negative number mode } 
LOCALE_SNATIVEDIGITS { native ascii 0-9 } 
LOCALE_SCURRENCY { local monetary symbol } 
LOCALE_SINTLSYMBOL { intl monetary symbol } 
LOCALE_SMONDECIMALSEP { monetary decimal separator } 
LOCALE_SMONTHOUSANDSEP { monetary thousand separator } 
LOCALE_SMONGROUPING { monetary grouping } 
LOCALE_ICURRDIGITS { # local monetary digits } 
LOCALE_IINTLCURRDIGITS { # intl monetary digits } 
LOCALE_ICURRENCY { positive currency mode } 
LOCALE_INEGCURR { negative currency mode } 
LOCALE_SDATE { date separator }
LOCALE_STIME { time separator } 
LOCALE_SSHORTDATE { short date format string } 
LOCALE_SLONGDATE { long date format string } 
LOCALE_STIMEFORMAT { time format string } 
LOCALE_IDATE { short date format ordering } 
LOCALE_ILDATE { long date format ordering } 
LOCALE_ITIME { time format specifier } 
LOCALE_ITIMEMARKPOSN { time marker position } 
LOCALE_ICENTURY { century format specifier (short date) } 
LOCALE_ITLZERO { leading zeros in time field } 
LOCALE_IDAYLZERO { leading zeros in day field (short date) } 
LOCALE_IMONLZERO { leading zeros in month field (short date) } 
LOCALE_S1159 { AM designator } 
LOCALE_S2359 { PM designator } 
LOCALE_ICALENDARTYPE { type of calendar specifier } 
LOCALE_IOPTIONALCALENDAR { additional calendar types specifier } 
LOCALE_IFIRSTDAYOFWEEK { first day of week specifier } 
LOCALE_IFIRSTWEEKOFYEAR { first week of year specifier } 
LOCALE_SDAYNAME1 { long name for Monday } 
LOCALE_SDAYNAME2 { long name for Tuesday } 
LOCALE_SDAYNAME3 { long name for Wednesday } 
LOCALE_SDAYNAME4 { long name for Thursday } 
LOCALE_SDAYNAME5 { long name for Friday } 
LOCALE_SDAYNAME6 { long name for Saturday } 
LOCALE_SDAYNAME7 { long name for Sunday } 
LOCALE_SABBREVDAYNAME1 { abbreviated name for Monday } 
LOCALE_SABBREVDAYNAME2 { abbreviated name for Tuesday } 
LOCALE_SABBREVDAYNAME3 { abbreviated name for Wednesday } 
LOCALE_SABBREVDAYNAME4 { abbreviated name for Thursday } 
LOCALE_SABBREVDAYNAME5 { abbreviated name for Friday } 
LOCALE_SABBREVDAYNAME6 { abbreviated name for Saturday }
LOCALE_SABBREVDAYNAME7 { abbreviated name for Sunday } 
LOCALE_SMONTHNAME1 { long name for January } 
LOCALE_SMONTHNAME2 { long name for February } 
LOCALE_SMONTHNAME3 { long name for March } 
LOCALE_SMONTHNAME4 { long name for April } 
LOCALE_SMONTHNAME5 { long name for May } 
LOCALE_SMONTHNAME6 { long name for June } 
LOCALE_SMONTHNAME7 { long name for July } 
LOCALE_SMONTHNAME8 { long name for August } 
LOCALE_SMONTHNAME9 { long name for September } 
LOCALE_SMONTHNAME10 { long name for October } 
LOCALE_SMONTHNAME11 { long name for November } 
LOCALE_SMONTHNAME12 { long name for December } 
LOCALE_SMONTHNAME13 { long name for 13th month (if exists) } 
LOCALE_SABBREVMONTHNAME1 { abbreviated name for January } 
LOCALE_SABBREVMONTHNAME2 { abbreviated name for February } 
LOCALE_SABBREVMONTHNAME3 { abbreviated name for March } 
LOCALE_SABBREVMONTHNAME4 { abbreviated name for April } 
LOCALE_SABBREVMONTHNAME5 { abbreviated name for May } 
LOCALE_SABBREVMONTHNAME6 { abbreviated name for June } 
LOCALE_SABBREVMONTHNAME7 { abbreviated name for July } 
LOCALE_SABBREVMONTHNAME8 { abbreviated name for August } 
LOCALE_SABBREVMONTHNAME9 { abbreviated name for September } 
LOCALE_SABBREVMONTHNAME10 { abbreviated name for October } 
LOCALE_SABBREVMONTHNAME11 { abbreviated name for November } 
LOCALE_SABBREVMONTHNAME12 { abbreviated name for December } 
LOCALE_SABBREVMONTHNAME13 { abbreviated name for 13th month (if exists) } 
LOCALE_SPOSITIVESIGN { positive sign } 
LOCALE_SNEGATIVESIGN { negative sign } 
LOCALE_IPOSSIGNPOSN { positive sign position } 
LOCALE_INEGSIGNPOSN { negative sign position }
LOCALE_IPOSSYMPRECEDES { mon sym precedes pos amt } 
LOCALE_IPOSSEPBYSPACE { mon sym sep by space from pos amt } 
LOCALE_INEGSYMPRECEDES { mon sym precedes neg amt } 
LOCALE_INEGSEPBYSPACE { mon sym sep by space from neg amt } 
LOCALE_FONTSIGNATURE { font signature } 
LOCALE_SISO639LANGNAME { ISO abbreviated language name } 
LOCALE_SISO3166CTRYNAME { ISO abbreviated country name }






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook