Вниз
Скачать: CL | DM;

Взаимодействие с Edit   Найти похожие ветки 

← →
Veon   (2006-03-05 18:22) [0]

Есть 2 приложения
1е - простой Edit на форме
2e - попытка им управлять.

Handle его я нахожу и вроде всё ок. только

GetWindowText - отдаёт пустую строку
хотя SetMessage (handle,WM_GETTEXT,PAnsichar) - возвращает текст
после того как отправляю wm_SETPASSWORDCHAR читать из Edit"a и менять его св-ва (даже отправить 2й wm_SETPASSWORDCHAR) не получаеться - GetLastError = Отказано в доступе
WM_SETTEXT меняет текст во всех случаях

Как бы сделать чтоб тот Edit не выпадал в "мороз" и продолжал работать


← →
begin...end ©   (2006-03-05 18:42) [1]

> Veon   (05.03.06 18:22)

> GetWindowText - отдаёт пустую строку
"This function cannot retrieve the text of an edit control in another application" (c) MSDN

> wm_SETPASSWORDCHAR
EM_SETPASSWORDCHAR?

> менять его св-ва
Какие?

> GetLastError = Отказано в доступе
Полный код можно увидеть?


← →
Veon   (2006-03-05 18:58) [2]


var
mw,Ew:THandle;
s:string[100];
begin
mw:=FindWindow("AUTO_WINDOW",nil);
if not (mw>0) then exit;

ew:=FindWindowEx(mw,0,"Edit",nil);
SendMessage(ew,EM_SETPASSWORDCHAR,ord("-"),0);

// начиная от сюда я получаю отказ в доступе
SendMessage(ew,EM_SETPASSWORDCHAR,ord("*"),0);
if SendMessage(ew,WM_GETTEXT,100,integer(PChar(s)))>0 then Edit1.Text:=s else
Edit1.Text:=SysErrorMessage(GetLastError());



← →
begin...end ©   (2006-03-05 19:02) [3]

> Veon   (05.03.06 18:58) [2]

> var
> s:string[100];
> ...
> SendMessage(ew,WM_GETTEXT,100,integer(PChar(s)))

Не компилируется.


← →
Veon   (2006-03-05 20:43) [4]

var
s:array [0..100] of char;

if SendMessage(ew,WM_GETTEXT,100,integer(@s))>0 then Edit1.Text:=string(s)

Сорри, я код переписывал =/


← →
begin...end ©   (2006-03-05 21:14) [5]

> Veon   (05.03.06 20:43) [4]

И значение хэндла ew, насколько я понимаю, правильное?

Если да, то просьба выслать 1-ю программу, если она невелика, на alexey.1983[гав]gmail.com. Аж интересно :)


← →
Veon   (2006-03-11 19:28) [6]

Всё правильное, другие API отрабатывают корректно

Отправил, заранее спасибо за помощь


← →
begin...end ©   (2006-03-12 22:20) [7]

> Veon   (11.03.06 19:28) [6]

ОК, ясно. Попробуйте DefWindowProc(EditHandle, WM_GETTEXT, ..., ...).



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.039 c
2-1147952508
Мурзилка
2006-05-18 15:41
2006.06.04
время


2-1147783724
DesperadO666
2006-05-16 16:48
2006.06.04
Помогите разобраться с pchar


15-1147261429
Photus
2006-05-10 15:43
2006.06.04
Борьба с экспортом в Borland Builder


15-1147237978
Ega23
2006-05-10 09:12
2006.06.04
С Днём рождения! 9 мая


2-1148047662
xVx
2006-05-19 18:07
2006.06.04
Listbox ввиде greed




   Наверх