Работа с контролами формы другого преложения

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

AndreyG_80
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 169
Зарегистрирован: 10.03.2006 (Пт) 13:27

Работа с контролами формы другого преложения

Сообщение AndreyG_80 » 29.05.2007 (Вт) 23:37

Всем доброго времени суток

Вопрос заключается в следующем: есть форма какого-то приложения на ней есть контролы, среди них есть ListBox. Как получить доступ к нему с моего приложения (приложение в VB.NET 2005)? Для того, чтоб прочитать записи этого ListBox-а и реагировать на событие обновления онного с последующим чтением записей.

З.Ы. Если хотите послать в поиск, то скажите пож, что писать в строку поиска?

Заранее благодарен за помощь

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 30.05.2007 (Ср) 7:12

Найти hWnd окна чужого контрола и общаться с ним посредством посыла ему сообщений
Весь мир матрица, а мы в нем потоки байтов!

AndreyG_80
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 169
Зарегистрирован: 10.03.2006 (Пт) 13:27

Сообщение AndreyG_80 » 30.05.2007 (Ср) 23:13

!Viper!
а можна поподробней, какие команды для этого использовать? Есть какие-то стандартные команды для этого в VB.NET или нужно API использовать?

В Visual Studio есть Spy++, там помимо формы, которая имеет свой hWnd, каждый контрол имеет так же свой Handle. В моем случае к контролу нужно по имени обращатся или по Handle?

Если можна, напишите пожалуста коротенькие примеры на следующее:

1. Как найти hWnd окна зная его заголовок и/или получить список открытых форм?
З.Ы. В поиске смотрел, но толком так и не понял, как в VB.NET определить hWnd окна по его значению.

2. Как определить список элементов, находящихся на форме с определенным hWnd?

3. Как обратится к определенному контролу и/или определенному свойству/методу контрола находящегося на форме?

4. Как отслеживать события которые происходят над определенным контролом/формой?

5. Как сгенерировать событие для определенного контрола? Например клик

Заранее благодарен за помощь

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 31.05.2007 (Чт) 7:20

Все необходимое для решения этого вопроса есть на форуме. Поиск должен дать все ответы. Это во-первых. Далее, обращаться к чужому контролу можно только через сообщения используя его hWnd.

1. FindWindow, FindWindowEx
2. На кой ляд оно надо? А вообще - пункт 1.
3. Путем посыла сообщения.
4. Путем перехвата сообщений
5. Путем посыла сообщения.
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 63

    TopList  
cron