Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Чтение с TDBGrid

48K
03 июля 2009 года
andrey__gromov
3 / / 11.04.2009
Уважаемые коллеги! Подскажите, как мне наиболее корректно прокрутить одну комбинацию. Надо из приложения MFC считать содержимое элемента окна другого приложения (написанного на Delphi), а именно - компонента TDBGrid. Окно приложения-родителя нахожу легко (CWnd* FindWindow() ), потом получаю список детей, ищу дочернее окошко, в котором еще раз дочернее и так далее до необходимой глубины. Наконец, найдя тот самый TDBGrid, вижу его размер, свойства, но не могу прочитать его содержимое (ох уж эти ДУРАЦКИЕ компоненты от делфи (да и приложения! Olly DBG вообще мне отказался одно приложение скомпиллированное в Delphi понимать как PE-файл, но это так, к слову....)).

Пытался посылать ему SendMessage, работать с ним как с CListBox, CListControl, CComboBox и так далее, пытался найти в нём еще дочерние окна (ноль эмоций), короче, что я только не пытался сделать, не могу прочитать содержимое этого компонента.

Пробовал даже использовать существующие средства автоматизации (лучшее, на мой взгляд - AutoIT v.3)

Подскажите, как мне обойти эту ситуацию. А то скриншот с экрана распознавать неохота.
288
03 июля 2009 года
nikitozz
1.2K / / 09.03.2007
Затея на мой взгляд малоперспективная. По крайней мере работа с с DBGrid'ом как с окном пользы не принесет. Дочерних окон вы не нашли, потому что их у него попросту нет.

Хотя нет. Вру. Можно поизвращаться ))
Если нужный вам TDBGrid редактируемый, то заставив нужную ячейку перейти в режим редактирования (возможно поплясав с бубном и сообщениями мыши), вы можете найти описатель единственного в этот момент дочернего окна грида, которое и будет редактируемым полем, текст которого вы можете получить.
48K
06 июля 2009 года
andrey__gromov
3 / / 11.04.2009
как же добраться до этих данных, которые отрисовывает TDBGrid? как прочитать у TDBGrid кто источник данных? это же можно сделать!? как?
288
07 июля 2009 года
nikitozz
1.2K / / 09.03.2007
Цитата: andrey__gromov
как же добраться до этих данных, которые отрисовывает TDBGrid? как прочитать у TDBGrid кто источник данных? это же можно сделать!? как?



Вопрос из разряда риторических. :) А оно вам надо?
Т.е. если вы действительно хотите добраться именно до данных объекта, тогда вооружайтесь исходниками VCL, отладчиками и вперед. Но стоит ли?

48K
09 июля 2009 года
andrey__gromov
3 / / 11.04.2009
наверное не стоит
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог