Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Послать сообщение о нажатия клавиши в активное окно / 9 сообщений из 9, страница 1 из 1
03.05.2016, 14:27
    #39228621
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Есть место в программе, которое циклом на протяжение примерно 10 секунд ожидает от пользователя нажатия специальной клавиши.
Если пользователь её нажимает, то программа должна определить активное окно, с которым работает пользователь и послать туда команду Enter 3 раза.
Вот сам код посылания команды:
Код: plaintext
1.
2.
3.
HWND hWnd;
hWnd = GetForegroundWindow();
SendMessage(hWnd, VK_RETURN, 0, 0);


Видимо, что-то не так с 3 строчкой.
Как можно исправить?
...
Рейтинг: 0 / 0
03.05.2016, 14:33
    #39228623
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Пробовал так, тоже безрезультатно.
Код: plaintext
1.
2.
3.
4.
5.
6.
HWND hWnd, cwnd, wnd;
			hWnd = GetForegroundWindow();
			char szTitle[128] = "";
GetWindowText(hWnd,szTitle,127);
cout << "1...    " << szTitle;
SendMessage(hWnd, VK_RETURN, 0, 0);
...
Рейтинг: 0 / 0
03.05.2016, 14:45
    #39228629
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Код: plaintext
1.
PostMessage(cwnd, WM_KEYDOWN, VK_RETURN, 0L);


Тоже нулевой эффект.
...
Рейтинг: 0 / 0
03.05.2016, 15:45
    #39228644
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
ukugyul552465,

Консольное приложение ?
...
Рейтинг: 0 / 0
03.05.2016, 17:56
    #39228692
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Да, консольное.
...
Рейтинг: 0 / 0
03.05.2016, 18:06
    #39228694
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Пробовал такую пару:
Код: plaintext
1.
2.
SendMessage(cwnd, WM_KEYDOWN, VK_RETURN, 0L);
SendMessage(cwnd, WM_KEYUP, VK_RETURN, 0L);


И с PostMessage такое не прокатило.
...
Рейтинг: 0 / 0
03.05.2016, 18:07
    #39228695
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Функцию SendInput используй.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
03.05.2016, 18:11
    #39228698
ukugyul552465
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
Благодарю, помогло.
...
Рейтинг: 0 / 0
04.05.2016, 12:52
    #39229040
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Послать сообщение о нажатия клавиши в активное окно
ukugyul552465Есть место в программе, которое циклом на протяжение примерно 10 секунд ожидает от пользователя нажатия специальной клавиши.
Если пользователь её нажимает, то программа должна определить активное окно, с которым работает пользователь и послать туда команду Enter 3 раза.
Вот сам код посылания команды:
Код: plaintext
1.
2.
3.
HWND hWnd;
hWnd = GetForegroundWindow();
SendMessage(hWnd, VK_RETURN, 0, 0);


Видимо, что-то не так с 3 строчкой.
Как можно исправить?


тут не так со всей идеей.
принцип уже неверный.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Послать сообщение о нажатия клавиши в активное окно / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]