Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.10;
Скачать: CL | DM;

Вниз

Чаво я не так делаю?   Найти похожие ветки 

 
Карлсон ©   (2002-08-26 17:07) [0]

procedure TForm1.Button1Click(Sender: TObject);
var
Nm: array [0..255] of Char;
Cs: array [0..255] of Char;
begin
Button1.Caption:=IntToStr(FindWindowEx(FindWindow(nil,"test.txt - Notepad"),0,"Edit",nil));
GetWindowText(StrToInt(Button1.Caption),Nm,255);
GetClassName(StrToInt(Button1.Caption),Cs,255);
ListBox1.Items.Add(String(Nm)+"/"+String(Cs));
end;

дескриптор эдита из блокнота я нахожу и он совпадает с указаниями другой программы, но вот текст у меня оттуда не получается :(
в документе всего несколько символов, просто для теста.
винсайт текст видит, а у меня просто пустая строка добавляется.
наверное вместо нуля нужно указать класс дочернего окна или как?


 
Игорь Шевченко ©   (2002-08-26 17:45) [1]

Даже не знаю, что и сказать...


 
MBo ©   (2002-08-26 17:47) [2]

A чаво сделать-то хотелось??


 
Карлсон ©   (2002-08-26 17:54) [3]

что значит не знаете, что сказать?
чаво, чаво.
хотелось вытащить текст из блокнота и в свою программу запихнуть.


 
Игорь Шевченко ©   (2002-08-26 18:06) [4]

GetWindowText:

This function cannot retrieve the text of an edit control in another application.


 
MBo ©   (2002-08-26 18:13) [5]

>что значит не знаете, что сказать?
дык знать бы, о чем говорить...

procedure TForm1.Button1Click(Sender: TObject);
var h:thandle;
p:pchar;
l:integer;
begin
h:=findwindow(Pchar("Notepad"),nil);
if h<>0 then begin
h:=findwindowex(h,0,PChar("Edit"),nil);
l:=sendmessage(h,wm_gettextlength,0,0);
getmem(p,l+1);
sendmessage(h,wm_gettext,l,integer(p));
end;
memo1.lines.text:=P;
end;


 
Карлсон ©   (2002-08-26 19:43) [6]

Большое СПАСИБО!!!


 
MBo ©   (2002-08-27 07:10) [7]

для большей надежности не помешает проверить h на 0 и после findwindowex и обязательно перенести memo1.lines.text:=P; внутрь If-а


 
Карлсон ©   (2002-08-27 13:33) [8]

я уже сделал все необходимые проверки, а то если памяти выделялось 0, прога из которой вытаскивался текст висла.



Страницы: 1 вся ветка

Текущий архив: 2002.10.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
1-31725
AL2002
2002-09-20 22:03
2002.10.10
Charset ричэдита не срабатывает


1-31859
Hanson
2002-09-27 17:51
2002.10.10
Есть ли в компиляторах Pascal оптимизация?


1-31740
Chlavik
2002-09-27 20:12
2002.10.10
Броблемы с сохранением масива.......


1-31762
Chlavik
2002-09-27 02:52
2002.10.10
Дайте Help на русском по Delphi 6 !!!!!


1-31735
KidMan
2002-09-30 22:24
2002.10.10
Exell и база данных