как определить локализацию Windows
От: Аноним  
Дата: 24.01.03 11:29
Оценка:
Если в FormatMessage передать MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), то будет взято сообщение на языке локализации Windows. А есть ф-ции, от которых можно узнать этот язык локализации Windows?
такие как GetUserDefaultLangID и GetSystemDefaultLangID не подходят — они возвращают язык из региональных установок, а мне нужно чтобы если винды английские, то одно число, а если русские, то другое, независимо от региональных установок.
Re: как определить локализацию Windows
От: vasketsov Россия http://ntprog.by.ru
Дата: 24.01.03 12:46
Оценка:
Здравствуйте, Аноним, Вы писали:

[]

Как вариант:
[hklm \ system \ ccs \ control \ nls \ language]
Default : REG_SZ — там что-то типа 0419 будет.
Васкецов Сергей
http://registry.km.ru
Re: как определить локализацию Windows
От: Bolgaroff Казахстан  
Дата: 24.01.03 12:54
Оценка:
Здравствуйте, Аноним

В таком раскладе можно определить с помощью WinVer.exe — в VersionInfo этого файла, параметр Language хранит локализацию Windows.
Как достать этот VersionInfo из файла — думаю, ты знаешь.

(Информацию нашел в МСДНе )
Re[2]: как определить локализацию Windows
От: Bolgaroff Казахстан  
Дата: 24.01.03 13:21
Оценка:
Здравствуйте, Аноним

Ну че, помогло?
Re[3]: как определить локализацию Windows
От: vasketsov Россия http://ntprog.by.ru
Дата: 24.01.03 13:25
Оценка:
Здравствуйте, Bolgaroff, Вы писали:

B>Ну че, помогло?


Видать, завис.
Васкецов Сергей
http://registry.km.ru
Re[4]: как определить локализацию Windows
От: Аноним  
Дата: 24.01.03 15:19
Оценка:
Здравствуйте, vasketsov, и Здравствуйте, Bolgaroff, Вы писали:

B>>Ну че, помогло?


V>Видать, завис.


я сделал через реестр
в Win98 System\\CurrentControlSet\\Control\\Nls\\Locale параметр Default
в Win2000 System\\CurrentControlSet\\Control\\Nls\\Language параметр InstallLanguage
вроде работает
спасибо
Re[5]: как определить локализацию Windows
От: vasketsov Россия http://ntprog.by.ru
Дата: 24.01.03 15:38
Оценка:
Здравствуйте, Аноним, Вы писали:

А>в Win2000 System\\CurrentControlSet\\Control\\Nls\\Language параметр InstallLanguage

В NT4 этого паарметра нет, а который я указал — есть.
Васкецов Сергей
http://registry.km.ru
Re[6]: как определить локализацию Windows
От: Аноним  
Дата: 27.01.03 14:52
Оценка:
Здравствуйте, vasketsov, Вы писали:

А>>в Win2000 System\\CurrentControlSet\\Control\\Nls\\Language параметр InstallLanguage

V>В NT4 этого паарметра нет, а который я указал — есть.

после того как строки взял в обрамление _T(System\\CurrentControlSet\\Control\\Nls\\Locale)получил нужный параметр и под W2000
hklm \ system \ ccs \ control \ nls \ language мне не подходит — он меняется через панель управления -язык системы по умолчанию
еще раз спасибо
Re[2]: как определить локализацию Windows
От: RobinBobin  
Дата: 27.01.03 17:05
Оценка:
Здравствуйте, Bolgaroff, Вы писали:

B>Здравствуйте, Аноним


B>В таком раскладе можно определить с помощью WinVer.exe — в VersionInfo этого файла, параметр Language хранит локализацию Windows.

B>Как достать этот VersionInfo из файла — думаю, ты знаешь.

Расскажи, плз, если не сложно. Или кинь ссылочку на МСДН.
Re[3]: как определить локализацию Windows
От: Bolgaroff Казахстан  
Дата: 27.01.03 17:35
Оценка:
Здравствуйте, RobinBobin

Ну, это так, вкратце...
  FSize := GetFileVersionInfoSize(PChar(FFileName), FHandle);
  if FSize > 0 then
    try
      GetMem(FBuffer, FSize);
      FValid := GetFileVersionInfo(PChar(FFileName), FHandle, FSize, FBuffer);
    except
      FValid := False;
      raise;
    end;


К тому же я не знаю на чем пишется программа.

А вообще — в МСДНе надо посмотреть здесь функции GetFileVersionInfoSize(), GetFileVersionInfo(), VerQueryValue(), VerLanguageName()...

Удачи!
Re[4]: как определить локализацию Windows
От: RobinBobin  
Дата: 27.01.03 18:42
Оценка:
Здравствуйте, Bolgaroff, Вы писали:

Общий принцип понял, спасибо

Собственно, я ждал лишь имён функций, за подробности отдельное спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.