Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Достать текст из Label чужого приложения, текст из Label 
:(
    Опции темы
Rrader
Дата 24.12.2012, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 29
Всего: 191



Можно через RTTI вытащить текст с TLabel. Нужно знать только имя меток в коде (типа Label1, Label2 и т.п.)


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
bems
Дата 24.12.2012, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



Illusion Dolphin, угу, вижу. Странно что у меня это когда-то нормально работало под ХР


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Чучмек
Дата 24.12.2012, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(Illusion Dolphin @  24.12.2012,  11:35 Найти цитируемый пост)
Проблема только для XP

Могу скинуть готовую программу для внедрения dll. Писал для себя. Могу и исходник поискать.



--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
bems
Дата 24.12.2012, 12:24 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



Чучмек, скажи на словах как ты решаешь эту проблему


--------------------
Обижено школьников: 8
PM MAIL   Вверх
northener
Дата 24.12.2012, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: нет
Всего: 20



Цитата(Prospekt @  24.12.2012,  08:32 Найти цитируемый пост)
Процентов 95, что стандартные лейбы, текст изменяется при работе программы, а как я понимаю static text - это неизменяемый текст. Да и смысла городить там что-то другое нет.

Стандартный лейбл для Windows это именно STATIC. А TLabel это порождение Борланда.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Prospekt
Дата 24.12.2012, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 30.5.2012

Репутация: нет
Всего: 1



Думаю, имеет смысл "добить тему", вопрос не такой уж и редкий, кому-то пригодится. Возможно когда-нибудь даже мне.
Хотя в моем случае ОС не важна, у меня есть возможность выбора.

Так стоп, Rrader, а можно сделать не зная имен? Можно получить ВЕСЬ СПИСОК и потом из него выколупывать нужное? Можно как-нибудь перебором выявить ИМЕНА этих Label?
Т.е. поступить так:
1) долго и очень догло колупаться и узнать имена нужных меток.
2) работать с уже найденными именами.

northener, хорошо, будем надеятся, что ты прав. Как узнать Static или TLabel? Какие от меня действия? Рекурентное сканирование всего ФРЕЙМА нашло все элементы, за исключением надписей. Самый плохой варинат, если они рисуются программно "ручками", но обычно так не делают. Значит либо Static либо TLabel. Во всяком случае это что-то не являющееся окном, иначе я бы его нашел.

Это сообщение отредактировал(а) Prospekt - 24.12.2012, 13:20
PM MAIL   Вверх
bems
Дата 24.12.2012, 13:35 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



Цитата(Prospekt @  24.12.2012,  13:09 Найти цитируемый пост)
Можно как-нибудь перебором выявить ИМЕНА этих Label?

открой экзешник редактором ресурсов с поддержкой dfm-ресурсов дельфи и посмотри там. Хотя есть вероятность что это label создаётся динамически


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Чучмек
Дата 24.12.2012, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(bems @  24.12.2012,  12:24 Найти цитируемый пост)
Чучмек, скажи на словах как ты решаешь эту проблему 

Проблема??? Да не встречал. Проблема в том, что не всякую dll можно внедрять.  Из-за недоинициализации приложения на момент загрузки нашей dll не все api можно вызывать.
p.s. я другим путем пошел,наверное. createprocess-VirtualAllocEx-readprocessmemory/writeprocessmemory-ResumeThread

Добавлено @ 20:15
Цитата(Illusion Dolphin @  24.12.2012,  11:35 Найти цитируемый пост)
Но если есть идеи - я могу создать отдельную ветку для обсуждения.  

Присоединяюсь. Перехват+Внедрение


Это сообщение отредактировал(а) Чучмек - 24.12.2012, 20:33


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
Illusion Dolphin
Дата 24.12.2012, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 4
Всего: 63



Цитата

Присоединяюсь. Перехват+Внедрение

http://forum.vingrad.ru/forum/topic-360472...sumethread.html


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
northener
Дата 25.12.2012, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: нет
Всего: 20



Цитата(Prospekt @  24.12.2012,  13:09 Найти цитируемый пост)
northener, хорошо, будем надеятся, что ты прав. Как узнать Static или TLabel? Какие от меня действия? Рекурентное сканирование всего ФРЕЙМА нашло все элементы, за исключением надписей. Самый плохой варинат, если они рисуются программно "ручками", но обычно так не делают. Значит либо Static либо TLabel. Во всяком случае это что-то не являющееся окном, иначе я бы его нашел.

Ну если рекурсивный поиск окон был выполнен правильно и не нашел окон с таким текстом, то да это либо TLabel (если сторонняя программа сделана на Дельфи или на Билдере), либо "непомню как называется" (если сторонняя программа сделана на VB). Или это просто надписи выводимые ручками (неважно на чем сделана программа). И это точно не STATIC! Ибо статик это окно. Таким образом единственно надежный способ прочитать эти надписи программно - перехват API функций ответственных за вывод текста.


Это сообщение отредактировал(а) northener - 25.12.2012, 01:52


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Delvish
Дата 26.12.2012, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


oO
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 13.12.2006

Репутация: 2
Всего: 4



а если действовать сродни какому-нибудь редактору ресурсов? например, Resource  Hacker разбирает Делфевое приложение по косточкам, прекрасно показывая где какой лэйбл лежит. Т.е. можно бы наверное комбинировать поиск нужной координаты текста с чтением непосредственно из экзешника зашитой инфы

Код

object Form1: TForm1
  Left = 192
  Top = 124
  Width = 252
  Height = 182
  Caption = 'Form1 caption'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object Label1: TLabel
    Left = 16
    Top = 8
    Width = 71
    Height = 13
    Caption = 'Label1isThere'
  end
  object Label2: TLabel
    Left = 16
    Top = 32
    Width = 105
    Height = 13
    Caption = 'ThereIsLabelNumber2'
  end
  object Label3: TLabel
    Left = 24
    Top = 64
    Width = 24
    Height = 13
    Caption = 'Third'
  end
end

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0927 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.