 |
Чат. Отправка сообщений. - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок |
16.03.2014, 22:17
|
#1
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Чат. Отправка сообщений.
Примеры того как выдрать сообщения из чата видел. Как настраивать фильтры и прочее - тоже. Но не видел примера как отправлять сообщения. В пакетах они не ловятся. Кто подскажет механизм отправки?
Добавлено через 12 часов 31 минуту
Нашел тут. Понял почему не видел. Теперь вопрос стоит иначе. А по какому адресу их отправлять если у меня F_PACK=0x006D8400? И каков механизм отправки? Клиентский инжект для пакетов:
Код:
PUSHAD
MOV ECX,DWORD PTR DS:[ 00000000 ] //BA
MOV ECX,DWORD PTR DS:[ECX+20]
PUSH 11111111 //Pack_len
PUSH 22222222 //Params
MOV EAX,33333333 //F_Pack
CALL EAX
POPAD
RETN
Последний раз редактировалось bsbalex; 17.03.2014 в 10:50.
Причина: Добавлено сообщение
|
|
|
17.03.2014, 17:03
|
#2
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 14.06.2012
 Сообщений: 511
 Популярность: 7566
 Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
|
Re: Чат. Отправка сообщений.
а просто через GUI взять кнопку отправки и инжектить ее действие?
________________
Хотите как то отблагодарить за помощь?
Не стесняйтесь нажимайте "Спасибо" Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Делаю программы на заказ, по всем вопросам в скайп: Ginrey2
|
|
|
17.03.2014, 17:11
|
#3
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
Ну если где-то что меняется, значение например, то с помощью СЕ могу найти откуда оно меняется. А как искать событие кнопки?
|
|
|
17.03.2014, 17:55
|
#4
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 14.06.2012
 Сообщений: 511
 Популярность: 7566
 Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
|
Re: Чат. Отправка сообщений.
________________
Хотите как то отблагодарить за помощь?
Не стесняйтесь нажимайте "Спасибо" Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Делаю программы на заказ, по всем вопросам в скайп: Ginrey2
|
|
|
18.03.2014, 15:53
|
#5
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
Круто  Спасибо. Пока копаю. Какая-то ерунда получается кое-где. С окнами разобрался. С контролами пока глючу. По идее есть ошибка в примере поиска, но ищу по своему. Плохо что не у всех контролов есть имена. И смещение для текста не совпадает. Думаю...
Последний раз редактировалось bsbalex; 19.03.2014 в 18:05.
|
|
|
19.03.2014, 18:05
|
#6
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
Хех, смещение на контролы оказалось 0х1СС вместо 0х1С8... зато теперь ловлю все контролы и их названия... копаю глубже
|
|
|
19.03.2014, 23:18
|
#7
|
|
|
|
Рыцарь-капитан
|
 Регистрация: 14.06.2012
 Сообщений: 511
 Популярность: 7566
 Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
|
Re: Чат. Отправка сообщений.
все контролы и вроде их смещения можно через коннсоль прописать, то есть на какой объект наводите мышью выше вся статистика контрола. правда команду уже не помню
________________
Хотите как то отблагодарить за помощь?
Не стесняйтесь нажимайте "Спасибо" Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Делаю программы на заказ, по всем вопросам в скайп: Ginrey2
|
|
|
20.03.2014, 10:34
|
#8
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
Выщемил их все. Все ок. Теперь копаю как эмулировать отправку текста...
|
|
|
20.03.2014, 10:37
|
#9
|
|
|
|
Разведчик
|
 Регистрация: 20.05.2013
 Сообщений: 8
 Популярность: 822
 Сказал(а) спасибо: 19
Поблагодарили 12 раз(а) в 10 сообщениях
|
Re: Чат. Отправка сообщений.
|
|
|
20.03.2014, 17:23
|
#10
|
|
|
|
Рыцарь-лейтенант
|
 Регистрация: 31.01.2011
 Сообщений: 413
 Популярность: 14489
 Золото Zhyk.Ru: 300
 Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
|
Re: Чат. Отправка сообщений.
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
|
|
|
21.03.2014, 13:04
|
#11
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Выделяем память (malloc), пишем туда текст, указатель на текст суём в инжект или куда-нибудь еще
|
|
 |
|
 |
|
Далаю так:
Выделяю память в процессе игры.
Записываю туда свою строку.
Меняю указатель на текст в контроле, на нашу строку и клиент падает.
Код:
buffADDR = VirtualAllocEx(hProcess, 0, buffSIZE, MEM_COMMIT, PAGE_READWRITE)
Call WriteProcessMemory(hProcess, buffADDR, VarPtr(buff(0)), buffSIZE, tmp)
WinADDR = GUI.GetWinByName("Win_Chat")
CmdADDR = GUI.GetControlByName(WinADDR, "DEFAULT_Txt_Speech")
prevTEXT = MEM.Read_Long(CmdADDR + &H1400)
Call MEM.Write_Long(CmdADDR + &H13FC, buffADDR)
//Сюда еще надо впихнуть что-либо чтобы текст "улетел" в мир
Call MEM.Write_Long(CmdADDR + &H13FC, prevTEXT)
|
|
|
21.03.2014, 18:30
|
#12
|
|
|
|
Рыцарь-лейтенант
|
 Регистрация: 31.01.2011
 Сообщений: 413
 Популярность: 14489
 Золото Zhyk.Ru: 300
 Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
|
Re: Чат. Отправка сообщений.
А строка оканчивается 0000?
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
|
|
|
24.03.2014, 09:44
|
#13
|
|
|
|
Разведчик
|
 Регистрация: 14.10.2012
 Сообщений: 6
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Чат. Отправка сообщений.
угу...
Добавлено через 4 часа 57 минут
Решил проблему!!  Ура-ура-ура!!
Делюсь информацией...
В структуре контролла по смещению +0x13FC лежит указатель на текст. Это хорошо 
Но в памяти лежит не только текст!!! При отправке сообщения прога обращается еще и к -0х14 адресу.
Выход какой. Выделяю память на 20 байт более, чем надо для хранения текста. Структура записи в наш буфер:
 |
Цитата: |
 |
|
|
|
|
|
|
|
+0х0 хз что, меняется постоянно (но оно и не нужно)
+0х4 0
+0х8 const ( 1 )
+0xC textlen
+0x10 const ( 3F )
+0x14 text |
|
 |
|
 |
|
запихнув такую структуру в буфер, в контроле по +0x13FC записываем указатель на наш буфер +0x14. И вот тогдааа... и текст будет отображаться и эмуляцией контролла 'send' будет улетать в мир
З.Ы. странно, что про это ничего не писалось... видимо никто не пробовал
Добавлено через 5 часов 1 минуту
Да... и еще!! Огромное спасибо всем тем, кто принимал участие в решении проблемы
Насобираю 10 ответов (кстати где их получить?), обязательно поставлю + .
Спасибо, парни. Теперь еще решить вопрос надо про движение... темка рядом
Последний раз редактировалось bsbalex; 24.03.2014 в 14:46.
Причина: Добавлено сообщение
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 02:25.
|
 |