Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.04;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.042 c
1-1146041042
tickler
2006-04-26 12:44
2006.06.04
обратная нумерация строк в memo


15-1146945640
GanibalLector
2006-05-07 00:00
2006.06.04
Кто помнит pascal...


4-1141572142
Veon
2006-03-05 18:22
2006.06.04
Взаимодействие с Edit


6-1138449644
newprogrammer
2006-01-28 15:00
2006.06.04
ftp клиент своими руками


2-1148070813
Mr tray
2006-05-20 00:33
2006.06.04
VkKeyScan работает только для латинских символов