Текущий архив: 2008.04.27;
Скачать: CL | DM;
Вниз
Послать Найти похожие ветки
← →
Res (2008-04-01 17:34) [0]Здравствуйте, как послать нажатие клавиши допустим F1, окну приложения calc.exe?
← →
ANB (2008-04-01 17:42) [1]SendMessage(Хендл_Окна, WM_KEYDOWN, ...)
← →
Res (2008-04-01 18:00) [2]Такой вопрос, а если не знаешь Хендл_окна, но знаешь имя exe, то можно найти Хендл окна этого экзе?
← →
ANB (2008-04-01 18:07) [3]
> но знаешь имя exe
Можно, но задерешься. Намного проще узнать текст заголовка окна и посмотреть имя класса спаем. Но если таких окон будет несколько, то выцепишь только одно из них.
Кстати, глупый вопрос - а нафига это нужно ?
← →
AIK © (2008-04-01 18:11) [4]
> Кстати, глупый вопрос - а нафига это нужно ?
Чтобы туда
> послать нажатие клавиши допустим F1
:)
← →
Res (2008-04-01 18:13) [5]Есть такая прога называется AC Tools она меня устраивает, но есть одно но :) для начатия клавиши, она активирует окно, а мне нужно послать нажатие клавиши без активации окна
← →
ANB (2008-04-01 18:14) [6]
> AIK © (01.04.08 18:11) [4]
Клавиатурой это сделать намного легче.
А если нужен программный калькулятор :
1) любая субд - уже формульный калькулятор
2) не так уж и трудно написать свой. да и готовых хватает, включая халявые.
← →
Res (2008-04-01 18:16) [7]Тут не калькулятор :) я просто в пример взял )
и так, нужно теперь послать F1, но вот незнаю где взять все эти названия :))) для SendMessageprocedure TForm1.Button1Click(Sender: TObject);
var
h:HWND;
begin
h:=FindWindow(0,"RF Online"); //Íàõîäèì RF Online îêíî
if(h<>0) then
begin
SendMessage()
end
else
begin
application.MessageBox("Îøèáêà! Ïîæàëóéñòà çàéäèòå â èãðó","Error!!!!", mb_ok);
end;
end;
← →
AIK © (2008-04-01 18:25) [8]
> ANB (01.04.08 18:14) [6]
Ты чё попутал ???
← →
Res (2008-04-01 18:37) [9]Удалось послать f10, но только тогда, когда окно активируешь.
Можно ли как нить послать без активации окна?
var
h:HWND;
begin
h:=FindWindow(0,"RF Online"); //Íàõîäèì RF Online îêíî
if(h<>0) then
begin
SendMessage(h, WM_KEYDOWN,vk_f10,0);
sleep(1000);
SendMessage(h, WM_KEYUP,vk_f10,0);
sleep(2000);
SendMessage(h, WM_KEYDOWN,vk_f10,0);
sleep(1000);
SendMessage(h, WM_KEYUP,vk_f10,0);
end
else
begin
application.MessageBox("Îøèáêà! Ïîæàëóéñòà çàéäèòå â èãðó","Error!!!!", mb_ok);
end;
end;
← →
Игорь Шевченко © (2008-04-01 19:58) [10]Читаем правила оформления вопросов
Страницы: 1 вся ветка
Текущий архив: 2008.04.27;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.017 c