Страница: 1 | 2 |
Вопрос: Как получить имя объекта?
Добавлено: 28.12.05 02:47
Автор вопроса: HACKER
Зная hwnd я могу получить тип и содержимое элемента (TextBox например). Как узнать имя? (Поле Name) ЗЫ: прога не моя...
Ответы
Всего ответов: 25
Номер ответа: 1
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #1
Добавлено: 28.12.05 05:04
Поле Name есть у объекта TextBox, а hWnd это хендл окна. Уже все на этом сайте читают мануалы кроме тебя, хватит уже в отстающем звене сидеть (навеяло пионерским детством ), давай, нагоняй.
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 29.12.05 20:33
почему только хендел окна?
MsgBox Text1.hWnd
End Sub
?
Может просто это у объектом по другому называется - тогда ненадо предираться к терминологии, смысл ведь понятен, и по смыслу ты ничего не сказал...
Номер ответа: 3
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #3
Добавлено: 30.12.05 07:11
Издеваешся да? Handle of Window. Слово "Window" я надеюсь ты знаешь? Например по небезызвестной операционной системе от одной широкораспространённой корпорации.
Не сказал, потому что COM - это не моя стихия. Попробуй через vTable достучаться, хотя сомневаюсь что тебе это по силам, разве что кто нибудь тебе готовый код даст.
Номер ответа: 4
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #4
Добавлено: 30.12.05 17:19
Что ты хочешь мне доказать? что MsgBox Text1.hWnd это будет не хендел этого Text1 или что?
Номер ответа: 5
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #5
Добавлено: 31.12.05 05:43
Ещё есть мысли, идеи? Достучаться через vTable неполучилось, стучал и по монитору и по клаве даже, или по скольку vTable надо было по столу? Ок, попробую...
Номер ответа: 6
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #6
Добавлено: 31.12.05 05:47
Поразительная сообразительность. Перечитаешь ещё раз ответ номер 1 или тебе здесь размножить?
Номер ответа: 7
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #7
Добавлено: 31.12.05 05:51
Попробуй по голове себе.
Номер ответа: 8
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #8
Добавлено: 31.12.05 21:00
тоже не-то что-то... оно как-то типа больно чуть-чуть... низнаю...
размнож плиз
Номер ответа: 9
Автор ответа:
«UL.eXe»
ICQ: 197.895.916.247
Вопросов: 72
Ответов: 540
Профиль | | #9
Добавлено: 31.12.05 22:04
Кто там на Хакера нависает, я не понял?
Ану извинения просить, быстро!
И размножить на 500т постов!
Номер ответа: 10
Автор ответа:
AASoft
Вопросов: 86
Ответов: 920
Профиль | | #10
Добавлено: 03.01.06 06:33
blin, HACKER, ty pro programirovanie pod WIndows chital hot` kogdato?
TextBox, CommandButton, Form, i.t.d., vse contrly i elementy yavlyayutsya oknami. i tochka. u nih est`, kak skazal CyRax, Handle of Window, hWnd. kazhdoe okno imeet svoj stil`. Form->panel`ka i title bar. TextBox->ploshad` s bukvami i ciframi(ili kak eto nazvat`??). Tak vot, Name imeyut kontroly u tebya v VB IDE. kogda ty progu kompilish i zapuskaesh, VB za tebya sozdaet vse eti okna vyzovami API funkcij (CreateWindow, naprimer) i razmeshaet ih na forme(sozdanoj cherez tot-zhe CreateWindow). vse chto VB znaet from eti okna, eto ih stil` i hWnd. Vse tvoi vyzovy na kontroly on transliruet na obrasheniya k OKNU s DANNYM hWnd.
teper` nadeyus` ponyatno kak tvoya lyubimaya OS rabotaet?
Номер ответа: 11
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #11
Добавлено: 03.01.06 08:54
Окна это тоже в принципе объекты. Другое дело что объект окно и объект TextBox реализованы по совершенно разным технологиям. Окно - это обычный С++, а TextBox - это С++ и COM. vTable - это таблица указателей на методы и свойства объекта TextBox. Тут в принципе, даже не зная по какому конкретному адресу из таблицы vTable расположено свойство Name, можно перебором всех полей до этого свойства в конце концов добраться. Это кто то должен сесть и написать такую программу для HACKER'а. При сомнительной полезности и достаточной сложности этого дела вряд ли ему что то светит.
Номер ответа: 12
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #12
Добавлено: 03.01.06 09:23
Да, похоже HACKER совершенно не отдупляется.
Системный объект "Окно" имеет идентификатор hWnd, который используется API-функциями для нахождения этого окна. Например, функция GetWindowText позволяет получить текст из системного объекта типа окно по его идентификатору. Э.у. TextBox не относится к системным объектам, поэтому API-функций для получения его идентификатора (поле Name) не существует. Name - это свойство объекта TextBox. Например, создав класс HACKERBOX, а в нём Porperty Get Name, ты получишь тоже самое свойство объекта, которое может вернуть любую строку, которую ты ему(свойству) прикажешь. Далее, у объекта TextBox также есть Property Get hWnd, которое возвращает hWnd системного объекта "Окно", на которое ссылается VB-шный объект TextBox. Подобно свойству Name, свойство hWnd также возвращает то число, которое ты ему прикажешь. Оно может и не совпадать с настоящим идентификатором системного окна. Не утомил?
Номер ответа: 13
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #13
Добавлено: 04.01.06 22:26
Утомил!!! Был конкретный вопрос, как определить имя чужого объекта (не окна!) У любого объекта (батон текстбокс итп...) есть свой дескриптор, идентификатор, итп... я гребу как оно называется! Чисто мля которое через метод hWnd пролучить можно! что тут непонятного!!!??? А также у любого объекта есть Name, тот же "HACKERBOX" например!!! и что, я никак немогу получить это св-во Name у чужого приложения!!!???
Номер ответа: 14
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #14
Добавлено: 05.01.06 05:38
Мой юный друг...
Ответь на первый вопрос: известно ли, что целевая программа написана на VB6?
Номер ответа: 15
Автор ответа:
AASoft
Вопросов: 86
Ответов: 920
Профиль | | #15
Добавлено: 05.01.06 06:48
esli ya napishu svoj yazyk programirovaniya v kotorom ne budet svojstva Name, to kak ty ego poluchish? tak vot esli celevaya proga ne na VB6 sdelana, to kak ty ego poluchat` budesh ya ne znayu...