как отправить нажатия клавиш только в одну программу?
Мне было трудно найти что-нибудь полезное, но я нашел кого-то, кто спросил, как это сделать, (Как отправить нажатия клавиш в окно?)
Если используется код и я могу установить текст блокнота, но я хочу отправить ключи, но устанавливает текст, я хочу отправить ключи, как keybd_event я использую его, но я хочу, чтобы он отправлялся только в одну программу.
keybd_event('a', NULL, NULL, NULL);
keybd_event('a', NULL, KEYEVENTF_KEYUP, NULL);
Как я мог это сделать?
1 ответ:
Звучит так, как будто вы пытаетесь заставить окно сфокусироваться перед отправкой ключей. Посмотрите на
FindWindow
и ещеSetForegroundWindow
.Что-то вроде этого должно сработать:
SetForegroundWindow(FindWindow(0,"Untitled - Notepad")); keybd_event(....);
Если вместо этого вы говорите об изменении текста окна напрямую, посмотрите на
GetWindow
для навигации по дереву окон иSendMessage
с собойWM_SETTEXT
параметр.