![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить раскладку в другой программе ? [D6, Win95/98, WinME, NT4, Win2k, WinXP]
pentium © (2002-07-30 03:23:00)Ситуация такова запущена программа например (Word, Winamp, Блокнот) в принципе без разницы.
Дальше запускается моя программа, и в какой-то из процедур надо определить раскладку клавиатуры в программе например (Word или Winamp или Блокноте). Запомнить раскладку и в дальнейшем использовать эту информацию в своей программе.
Для определения раскладки используется функция GetKeyboardLayout().
Для определении раскладки в своей программе GetKeyboardLayout(0) или GetKeyboardLayout(GetCurrentThreadId).
Как определить раскладку в другой программе GetKeyboardLayout(????????) ? Вроде надо знать идентификатор процесса(программы), для которого выясняется раскладка клавиатуры GetCurrentProcessID() ?
Хотелось бы пример.
pentium (2002-08-01 05:48:00) [1]Спасибо Yurko! Определение раскладка для активной программы мне тоже пригодится. А возможно определить раскладку не для активной ?
Yurko (2002-07-31 03:08:00) [2]
var
KL: HKL;
begin
KL := GetKeyboardLayout(GetWindowThreadProcessId(GetForegroundWindow, nil)); //раскладка для активной программы
end;