Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Найти элемнты в другои приложении [D5, Win95/98, WinME, NT4, Win2k]


mafiya ©   (2002-04-17 06:53:00) 

Есть окно, его я нашел из своей проги, могк нажимать на кнопки, но внем есть 3 поля EDIT получилось найти только одно, а вот как наяти два других не получается.
Делаю вот так:

procedure TForm1.Button1Click(Sender: TObject);
var
h1,h2,h3: hwnd;
begin
h1:=findwindow(nil, "Ввод пароля");
h2:=findwindowex(h1,0,"BUTTON","Ok");
h3:=findwindowex(h1,0,"EDIT",nil);
sendmessage(h3,wm_settext,0,lparam(pchar("test")));
что тут надо написать чтобы в два других EDIT можно запихать свою информацию?
sendmessage(h2,BM_CLICK,0,0);
end;


Song   (2002-04-18 12:58:00) [1]

Не дописал:
И конечно же всеми не любимый FAQ (и Вами в том числе - иначе вопроса бы не было)...


Song   (2002-04-18 12:56:00) [2]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1017886314&n=5
См. последюю мою реплику

А также:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1017236735&n=5

И конечно же всеми (и Вами в том числе - иначе вопроса бы не было):
http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988620990&n=15


mafiya   (2002-04-18 11:33:00) [3]

Или что-то с моими руками или я заработался, но что-то ни как не въеду. Не получается. Может у кого конкретный пример есть как вводить текст в несколько EDIT"ов на однома окне, ну точнее как по ним гулять.
Заранее всем огромное спасибо.


Digitman   (2002-04-17 09:42:00) [4]

Используй циклический условный вызов ф-ции GetWindow() для перечисления всех дочерних окон для родительского окна h1. Среди перечисленных и найдешь хэндлы интересующих тебя EDIT-окон


mafiya   (2002-04-17 09:34:00) [5]

Я использую Winsight но дело в том что все 3 EDIT"а имеют ClassName EDIT. Я ни как не въеду как перейти в следующее поле и вести туда теус, у меня в первое поле нормально влетает, а два других ни как


SB.John   (2002-04-17 07:47:00) [6]

А почему найти не получается? Используй WinSight.
Я в свое время делал то же самое (программную регистрацию на Novell"овском серваке). WM_SETTEXT здесь не работает: окошко-то чужое. Я использовал WM_KEYDOWN. Может коряво, но лучше способа я не нашел. Если нужны исходники, могу кинуть мылом.


Наверх

Титульная страница Поиск, карта сайта Написать письмо