Не подскажет ли почтеннейшая публика, как определить язык установленной Windows NT?
Как-то же он определяется. Если, например, ставить на русскую английский SP, ругается, значит это где-то записано.
Здравствуйте, sved, Вы писали:
S>Не подскажет ли почтеннейшая публика, как определить язык установленной Windows NT?
S>Как-то же он определяется. Если, например, ставить на русскую английский SP, ругается, значит это где-то записано.
Ну а может это
LANGID GetSystemDefaultLangID(void);
и иже с ними?
Или не то?
Здравствуйте, As_an, Вы писали:
S>>Не подскажет ли почтеннейшая публика, как определить язык установленной Windows NT?
S>>Как-то же он определяется. Если, например, ставить на русскую английский SP, ругается, значит это где-то записано.
AA>Ну а может это
AA>LANGID GetSystemDefaultLangID(void);
AA>и иже с ними?
AA>Или не то?
Скорее не то. Это функции NLS, мне же надо определить, русская версия NT или английская.
Здравствуйте, sved, Вы писали:
S>Не подскажет ли почтеннейшая публика, как определить язык установленной Windows NT?
S>Как-то же он определяется. Если, например, ставить на русскую английский SP, ругается, значит это где-то записано.
То, что у пользователя выставлено как System Locale — ::GetSystemDefaultLCID() / ::GetSystemDefaultLangID().
То, что у пользователя выставлено как User Locale — ::GetUserDefaultLCID() / ::GetUserDefaultLangID().
А вот как определить язык САМОЙ системы — сразу не скажу

Где-то в ниших проектах такое делали, если найду — напишу.
Здравствуйте, disop, Вы писали:
S>>Не подскажет ли почтеннейшая публика, как определить язык установленной Windows NT?
S>>Как-то же он определяется. Если, например, ставить на русскую английский SP, ругается, значит это где-то записано.
D>То, что у пользователя выставлено как System Locale — ::GetSystemDefaultLCID() / ::GetSystemDefaultLangID().
D>То, что у пользователя выставлено как User Locale — ::GetUserDefaultLCID() / ::GetUserDefaultLangID().
D>А вот как определить язык САМОЙ системы — сразу не скажу
Где-то в ниших проектах такое делали, если найду — напишу.
Мне именно самой системы. Впрочем, уже не актуально, решение найдено. Читаем \VarFileInfo\Translation из NTOSKRNL.EXE с помощью VerQueryValue.
Здравствуйте, sved, Вы писали:
S>Мне именно самой системы. Впрочем, уже не актуально, решение найдено. Читаем \VarFileInfo\Translation из NTOSKRNL.EXE с помощью VerQueryValue.
Некорректный путь.
1) Если меняется руками ядро, а как это делать, даже M$ сам пишет, то туда записать можно любой NTOSKRNL.EXE
2) Более того, сам NTOSKRNL.EXE может отсутствовать, имя файла ядра/хала може быть любым.
3) Для этого существует файл ver.exe, его и надо юзать, алгоритм такой же.
Здравствуйте, vasketsov, Вы писали:
S>>Мне именно самой системы. Впрочем, уже не актуально, решение найдено. Читаем \VarFileInfo\Translation из NTOSKRNL.EXE с помощью VerQueryValue.
V>Некорректный путь.
V>1) Если меняется руками ядро, а как это делать, даже M$ сам пишет, то туда записать можно любой NTOSKRNL.EXE
V>2) Более того, сам NTOSKRNL.EXE может отсутствовать, имя файла ядра/хала може быть любым.
V>3) Для этого существует файл ver.exe, его и надо юзать, алгоритм такой же.
Нет такого файла. Есть Winver.exe и ver.dll.
Здравствуйте, sved, Вы писали:
S>Нет такого файла. Есть Winver.exe и ver.dll.

Конечно ver.dll.
Описались мы

.