![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SendInput( with INPUT_KEYBOARD) & WordPad
kami © (2006-10-09 20:13:00)При "нажатии" любой клавиши через SendInput WordPad начинает грузить процессор на 100%. На других программах пока такого замечено не было. Кто нибудь сталкивался с подобным и как решал?
З.Ы. Please, не надо про мои кривые руки - у Eraser -a такая же проблема с ROM, а (имхо) его радиус кривизны рук стремится к 0.
icWasya (2006-10-10 09:32:00) [1]а это что?
FillChar(Inputs[0], SizeOf(tagInput) *2 , #0);
Ketmar (2006-10-09 21:28:00) [2]я намекаю на то, что о вм-твари в [0] не было ни слова. %-)
kami (2006-10-09 21:24:00) [3]Ketmar © (09.10.06 21:21) [3]
добрались до вм-твари
Не вижу ничего тварного в этом. Мой радиус кривизны рук не подлежит измерению, а на своей машине ловить AV и GPF как-то неохота.
Ketmar (2006-10-09 21:21:00) [4]о. добрались до вм-твари. "сколько нам открытий чудных..." (ц)
kami (2006-10-09 20:50:00) [5]Leonid Troyanovsky © (09.10.06 20:28) [1]
всухую трудно рассуждать
Привожу.
procedure TForm1.Timer1Timer(Sender: TObject);
var
Inputs:array[0..1] of tagInput;
// с дин. массивами не хочет отрабатывать,
// хотя возвращает желаемое кол. посланных клавиш
begin
//Timer1.Enabled:=False;
FillChar(Inputs[0], SizeOf(tagInput)*2, #0);
Inputs[0].Itype:=INPUT_KEYBOARD;
Inputs[0].ki.wVk:=VK_RETURN;
Inputs[1].Itype:=INPUT_KEYBOARD;
Inputs[1].ki.wVk:=VK_RETURN;
Inputs[1].ki.dwFlags:=KEYEVENTF_KEYUP;
Caption:='Sended '+IntToStr(SendInput(2, Inputs[0], SizeOf(tagInput)))+' keyevents';
end;
Запускаем WordPad, запускаем этот код и активируем WordPad. На "реальных" машинах происходит через раз, зато на VMWare работать дальше невозможно пока не закроешь WordPad.
Leonid Troyanovsky (2006-10-09 20:28:00) [6]
> kami © (09.10.06 20:13)
> При "нажатии" любой клавиши через SendInput WordPad начинает
> грузить процессор на
Ну, ты б хоть привел бы преступный код,
бо, всухую трудно рассуждать.
--
Regards, LVT.