Главная страница
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.011 c
1-31713
Ionv
2002-10-01 09:11
2002.10.10
Как максимально быстро очистить Image


4-32105
TBeginner
2002-08-28 16:59
2002.10.10
Cookies


1-31699
I/O
2002-09-30 19:17
2002.10.10
Процедуры


1-31746
Осирис
2002-10-01 13:51
2002.10.10
Событие при клике на иконке в трее


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