{{notification.text}}

MirGames

23.09.06 00:34
0
мне нужно послать сообщение клика окну IE

вот делаю Sendmessage
но для него необходим хендл этого окна IE,
пытаюсь FindWindow но там есть параметр класс окна и я не знаю чего туды забить помогите


1 - какой класс окна у IE? и вообще как определить Хендл окна по его имени?
(пробовал FindWindow с пустым параметром клсса окна - выдает 0)

2 - можно ли как-то послать сообщение так , чтобы его программы восприняли как нажатие кнопки мыши?
(делаю sendMessage(0, WM_LETBUTTONDOWN, wParam, lparam); потом буттонАП но ноль реакции, т.е. навел курсор так что он должн попадать на ярлык, но ярлыку пофиг не реагирует на меня)

3 - нужно ли курсор передвигать в нужную позицию прежде чем по той позиции кликнуть (еще не успел попробовать)

помогите плззз.
#1
mov, просто mov
23.09.06 03:10
0
Второй пункт не понял :)
#2
Мастер XO
23.09.06 04:37
0
Цитата
но там есть параметр класс окна
Соответственно, там где-то есть и параметр для имени окна... Вводить оба параметра необязательно - потому достаточно просто определить класс требуемого окна по заголовку...
#3
23.09.06 14:12
0
то есть при открытии новой страницы експлорер меняет класс своего окна? 0_0

хорошо попробую

2 - пункт - т.е. ксть ли еще способы кликнуть программно?
#4
24.09.06 17:57
0
Класс окна не меняется...

Его (класс) можно посмотреть утилиткой идущей в комплекте с Дели. ProcessView или ProcessInspector или как-то так (сейчас под рукой Деллфи нет).
#5
24.09.06 17:59
0
Цитата(Sanitar @ 23.09.2006 - 12:12) [snapback]36857[/snapback]

2 - пункт - т.е. ксть ли еще способы кликнуть программно?

ТО, что ты написал в первом сообщении правильно, за исключением одного:

SendMessage(<хендл кнопки отличный от нуля>, WM_LEFTBUTTONDOWN, <не помню что>, <не помню что>);
#6
25.09.06 12:57
0
Drako , т.е. зная имя кнопки я могу по ней кликнуть?

допустим что это кнопка на ХТМЛ странице мне это удасться сделать?
потом еслидопустим я знаю имя окна IE на странице есть кнопка, могу я исп хендл окна как-то кликнуть по этой кнопке?
Отредактировано: 25.09.06 12:57
#7
mov, просто mov
26.09.06 02:25
0
Цитата(Sanitar @ 25.09.2006 - 08:57) [snapback]37019[/snapback]

Drako , т.е. зная имя кнопки я могу по ней кликнуть?

допустим что это кнопка на ХТМЛ странице мне это удасться сделать?
потом еслидопустим я знаю имя окна IE на странице есть кнопка, могу я исп хендл окна как-то кликнуть по этой кнопке?

Вроде FindWindowEx или есчё што
пуск в винде идйт как кнопарь, его можна отключить, даже гдат был алгоритм :)
#8
26.09.06 12:10
0
что правда никто не может помочь мне?

Megal2 , ты начало тьемы читал? что там не ясно указано что нужно знать класс окна и его имя что бы обратиться к нему через FindWindowEx,


я не знаю класс окна ИЕ, может кто подскажет? или ответит на несколько вопросов выше?
Отредактировано: 26.09.06 12:11
#9
аксакал
26.09.06 21:58
0
1) SpyX++ идёт в поставке с MSVS показывает все хэндлы и сообщения
2) --- ничего не понял ---
3) Сообщение о нажатии клавиши мыши в качестве параметров несёт координаты.
#10
26.09.06 22:54
0
XProger спс. Вообще всем спасибо , но я нашел решение!

Люди кому надо смотрите в сторону Mouse_Event из WinAPI , кста у этой функции есть спутник Keyboard_Event

объясню маленько: через findWindow(EX) мне бы пришлось найти хендл кнопки по которой мне надо кликнуть, потом дать туда фокус , потом послать сообщение нажать, потом- отпустить -- все это долго, да еще может потребваться класс окна и ... вобщем долго
и не удобно


вот второй пункт вызвал много затруднений видимо, объясняю :
я хотел просто сымитировать нажатие кнопки мыши, но не выискивать нужные мне хендлы и всякую фигню, а просто передвинуть туда курсор, и дать команду нажать, причем, чтобы любое окно или кнопка(или ссылка) ,которые находятся под курсором, его приняли

вот решение второй проблеме( самой главной), я нашел, и все остальные отпали

всем спасибо
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}