Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Вниз

Достать данные   Найти похожие ветки 

 
borg   (2002-10-12 18:28) [0]

Я вытащил все Handel и с помощью SendMessage(1620,WM_GETTEXT,0,0); пытаюсь этот текст просмотреть, но :-(((
SendMessage возвращает Integer, а мне надо бы узнать написанный текст. Зарание большое спасибо.


 
Anatoly P   (2002-10-12 18:33) [1]

Не совсем понял, но может быть GetWindowText()


 
ZrenBy   (2002-10-12 18:33) [2]

WM_GETTEXT
wParam = (WPARAM) cchTextMax; // number of characters to copy
lParam = (LPARAM) lpszText; // address of buffer for text

+

WM_GETTEXTLENGTH
wParam = 0; // not used; must be zero
lParam = 0; // not used; must be zero


 
borg   (2002-10-12 18:41) [3]

Извиняюсь за неполный вопрос. Мне надо скопировать текст из DBEdit который находится в другой программе(она запущена) в мою в Edit1
{Ищем хэндл DBEdit}
handle1:=FindWindowEx(2196,0,nil,pchar(wind_name));
if button_handle=0 then
begin
result:=false;
exit;
end;
SendMessage(Handle1,WM_GETTEXT,0,0);



 
Anatoly P   (2002-10-12 18:46) [4]

buff : array[0..127] of char;

GetWindowText(Handle1,buff,sizeof(buff));

Попробуй, если не то , то не знаю


 
ZrenBy   (2002-10-12 18:47) [5]

var sStr:String[255];

SendMessage(Handle1,WM_GETTEXT,254,PChar(@sStr[0]));

или @sStr[1] - не помню уже, но вроде 0


 
borg   (2002-10-12 19:20) [6]

>>Anatoly P
Получилось:-), но последний вопрос, массив размером [127], а
в Edite всего 4 символа(но в другой момент может быть хоть сколько) и все не дастоюшие символы заполяются от фонаря, как этого избежать.


 
Shrek   (2002-10-12 20:08) [7]

var arr: array [1..$FF] of pChar;
Text: string;
SendMessage(handle, WM_GETTEXT, SizeOf(Arr), Integer(@Arr));

Text := @Arr;


 
Anatoly P   (2002-10-12 22:30) [8]

Это я для примера - а вообще используй динамические массивы

buff : array of char;

а далее - setlength(buff,NewLength);

NewLength - любое целое число


 
Юрий Зотов   (2002-10-12 23:57) [9]

Не проверял, но должно работать.

function GetWndText(Wnd: HWND; MaxLength: integer): string;
var
Buff: array of char;
begin
SetLength(Buff, MaxLength + 1);
try
SetString(Result, Buff,
SendMessage(Wnd, WM_GETTEXT, SizeOf(Buff), @Buff[0]))
finally
Buff := nil
end
end;

И вопрос - почему Вы используете числовые константы? Разве хэндлы окон программы не меняются при каждом ее новом запуске?



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

Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.014 c
8-78544
Alexfdfdfd
2002-06-26 01:17
2002.10.24
Короче задача, нужно взять файл типа *.bmp


3-78270
yaJohn
2002-10-02 13:15
2002.10.24
Оптимизация МИДАС.


3-78229
ДенМат
2002-10-01 14:05
2002.10.24
Да как же, блин, делать обновления..


1-78445
zevs_a
2002-10-12 12:40
2002.10.24
Kak mojno tekushego usera?


14-78606
Sergey13
2002-10-01 11:20
2002.10.24
Как думаете - попрутся наши вояки в Грузию или нет?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский