Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2007, 05:13   #1
iron
Новичок
Джуниор
 
Регистрация: 04.06.2007
Сообщений: 2
По умолчанию Текст другого окна

Здравствуйте. Извиняюсь сразу, если на форуме уже есть ответ на этот вопрос , но я не нашел, то что мне надо.
проблема такая:
Есть окно в чужой программе - класс TExecDBgrid. Я начинаю только с АПИ работать и меня хватило только на то чтобы присвоить это окно переменной типа HWND. Могу закрыть-открыть и т.д. А мне надо проанализировать содержимое ячеек. Можно как-нибудь с этим окном работать, как с DBgrid? Чтоб можно было иметь Col, row и т.п.? Или это не возможно?
iron вне форума Ответить с цитированием
Старый 14.06.2007, 22:59   #2
unnamed
Пользователь
 
Регистрация: 08.04.2007
Сообщений: 15
По умолчанию

В виндоусе с каждым выдимым объектом (окном) ассоциируется строковая константа, которая задаётся при создании этого объекта и доступна для сторонних приложений. Получить и изменить её можно с помощью GetWindowText() и SetWindowText(). В некоторых случаях эта константа напрямую связана с изображением объекта, как то метки, заголовки окон, поля ввода и подобные элементики. Если текстовое содержимое объекта не связано с этой константой, что имеет место быть в вашем, iron, случае, то получить его никак нельзя (если конечно не вторгаться в память чужого процесса).
Практика - лучший критерий истины. К.Маркс.
unnamed вне форума Ответить с цитированием
Старый 15.06.2007, 11:54   #3
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Get/setwindowtext тут вообще ни при чём.
Стандартных сообщений (типа как для list- и combobox, LB_* и CB_*) для работы с такой фигнёй винде нет, наверняка он работает с WM_USER, знач единственный выход пошпионить за той прогой прогой, где он находится, перехватывать сообщения, и разбиратся, как он реагирует на WM_USER+...
Кстати чё за программа?
пыщь
JTG вне форума Ответить с цитированием
Старый 15.06.2007, 12:21   #4
unnamed
Пользователь
 
Регистрация: 08.04.2007
Сообщений: 15
По умолчанию

Цитата:
Сообщение от JTG Посмотреть сообщение
наверняка он работает с WM_USER, знач единственный выход пошпионить за той прогой прогой, где он находится, перехватывать сообщения, и разбиратся, как он реагирует на WM_USER+...
Интересно, а как это можно сделать? Я имею ввиду, как узнать, как программа реагирует на WM_USER+. Если вас не затруднит, JTG, выложите какой-нибудь пример на эту тему.
Практика - лучший критерий истины. К.Маркс.
unnamed вне форума Ответить с цитированием
Старый 15.06.2007, 12:39   #5
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Да вот хотя б этим http://www.firststeps.ru/mfc/steps/r.php?47
Ещё в папке bin дельфы лежит довольно древняя прога (не помню название), тоже перехватывает сообщения окон.

Запускаешь прогу, где этот grid проклятый, находишь монитором окно, делаешь чё-то, чтоб в него, к примеру, добавилась строка и смотришь, что за сообщение было ей передано в этот момент, и соотв. lparam, wparam. Выделяешь мышей клетку - снова записываешь, какое сообщение, и т.д.
Скорее всего это будет WM_USER+что-то

(хотя может этот компонент и не использует сообщения windows, тады ой (но маловероятно))
пыщь

Последний раз редактировалось JTG; 15.06.2007 в 12:45.
JTG вне форума Ответить с цитированием
Старый 15.06.2007, 14:28   #6
Rouse_
Пользователь
 
Аватар для Rouse_
 
Регистрация: 31.05.2007
Сообщений: 56
По умолчанию

Если контрол кастомный, то скорее всего единственное сообщение, которое ему нужно - это WM_PAINT (ну и парочка для работы со сролами )
Vae Victis
(Горе побежденным (лат.))
Демки с открытым кодом:
http://rouse.drkb.ru
Rouse_ вне форума Ответить с цитированием
Старый 15.06.2007, 16:14   #7
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

ПРОГУ В СТУДИЮ!!! (если это не exel O_o)
пыщь
JTG вне форума Ответить с цитированием
Старый 18.06.2007, 03:39   #8
iron
Новичок
Джуниор
 
Регистрация: 04.06.2007
Сообщений: 2
По умолчанию

Цитата:
Сообщение от JTG Посмотреть сообщение
ПРОГУ В СТУДИЮ!!! (если это не exel O_o)
Товарищи! Извиняюсь, что долго отсутствовал - у меня дочь родилась ну и таво... . Прога называется БАНК-КЛИЕНТ. В одной из ячеек этой Grid есть слово "импортирован". Мне надо определить его местоположение (слова этого), программно кликнуть по нему мышом, потом ещё раз программно пару раз кликнуть по определенным координатам... И ВСЕГО-ТО!!! только чет не догоню, как...
iron вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одно без другого Принц Свободное общение 2 30.05.2008 22:50
Размер окна в зависимости от размера окна Reverent JavaScript, Ajax 1 02.02.2008 15:49
закрыть все дочерни окна, кроме главного окна Worms Общие вопросы Delphi 2 03.12.2007 22:18
Как сделать чтобы дочерние окна в MDI-приложениях были вне главного окна??? dimonchuk Общие вопросы Delphi 1 11.08.2007 12:13