Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как мне скопировать весь текст из FindWindowEX('SysListView32') [D7, WinXP]


Пат ©   (2004-12-15 14:51:00) 

Допустим я нашел в другой программе компонент SysListView32:
Window := FindWindowEX(Window, HWND(nil), 'SysListView32', '');
Как мне скопировать весь текст из него в свой ListView?

Послесловие: Я знаю, что ListView_GetItemText забирает текст из ListView. Как правильней использовать эту функцию? А может существует другой метод.

Заранее благодарен тем кто ответил по теме!!!


Leonid Troyanovsky   (2004-12-15 21:27:00) [1]


> Пат   (15.12.04 14:51)  
> Допустим я нашел в другой программе компонент SysListView32:
> Window := FindWindowEX(Window, HWND(nil), 'SysListView32',
> '');
> Как мне скопировать весь текст из него в свой ListView?
>


Здешний поиск со словом SysListView32

http://www.delphimaster.ru/cgi-bin/forum.pl?n=5&search=SysListView32

--
С уважением, LVT.


-=SS=-   (2004-12-15 17:31:00) [2]

SendMessage(Window, LVM_GETITEMTEXT  )
LVM_GETITEMCOUNT + F1 + uses CommCtrl


Cobalt   (2004-12-15 17:27:00) [3]

P.S. пример реализации хука и механизм его работы рассмотрен здесь на сайте в разделе "Статьи"
http://www.delphimaster.ru/articles.html


Cobalt   (2004-12-15 17:25:00) [4]

Для того, что бы принимать текст из другого приложения, которое не умеет общаться с твоим, есть такое решение:
1) Внедрить в это приложение (Process) хук (подходит только для оконных приложений, т.к. консольные не используют, как правило, оконные сообщения). Предположительно, для этого подойдёт WH_GETMESSAGE.
2) Послать в это приложение специальное сообщение, которое скажет твоему хуку о том, что пора, мол, собирать информацию. (Например, WM_NULL с параметрами wm и lm :-))
3) Приняв это сообщение, хук считает данные, и запишет куда надо (например, в Pipe или в MemoryMappedFile необходимого размера). По окончании считывания, хук пошлёт сообщение окну, инициировавшему установку хука.
4) Окно, получив сообщение об окончании собственно работы хука, считает данные в свою структуру, снимет хук.
Вроде всё.


Digitman   (2004-12-15 17:24:00) [5]


> Пат   (15.12.04 17:11) [1]
> Помогите!!!!!


помогаю.

параметр LPSTR pszText ф-ции ListView_GetItemText() должен быть КОРРЕКТНЫМ адресом буфера в АП того процесса, в контексте которого был создан этот самый ListView.


Пат   (2004-12-15 17:11:00) [6]

Помогите!!!!!


Наверх

Титульная страница Поиск, карта сайта Написать письмо