![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Дано: неактивное окно блокнота с именем "Безымянный - Блокнот".
Задача: написать программу, которая сможет эммитировать нажатия клавиш в окне блокнота, неактивизируя его. |
|
#2
|
||||
|
||||
|
Как то так...
Нужно по имени окна найти его Handle... Код:
Handle := FindWindow(nil, 'Безымянный - Блокнот'); Ответ Код:
function ChangeWndFirstEditText(Wnd: HWND; const Text: string):
boolean;
var
EditWnd: HWND;
begin
Result := False;
EditWnd := FindWindowEx(Wnd, 0, 'EDIT', nil);
if EditWnd = 0 then
exit; //эдит не найден
Result := SendMessage(EditWnd, WM_SETTEXT, 0, Integer(PChar(Text))) <> 0;
end;Дальше нужно думать и экспериментировать... |
|
#3
|
||||
|
||||
|
NIch, чисто из академического интереса спрашиваю. А вдруг нажатой клавишей будет Print Screen?
|
|
#4
|
||||
|
||||
|
лично я про нажатые клавиши ничего не писал...показал лишь возможность ввода текста в "чужое окно"...
а по поводу твоего вопроса, думаю нужно просто фильтровать коды клавиш... |