HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 27.09.2016, 14:22
MISTER_GONWIK
Познавший АНТИЧАТ
Регистрация: 09.03.2013
Сообщений: 1,262
С нами: 6935116

Репутация: 183


По умолчанию

Цитата:
Сообщение от Perojek)0  

Можно, пожалуйста, пример, как через dll написать что-нибудь в чат?
https://github.com/MISTERGONWIK/efc/...r/sampBase.hpp
 
Ответить с цитированием

  #2  
Старый 29.09.2016, 10:45
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

C++:





Код:
CVector vecSpeed
=
*
(
CVector
*
)
(
(
pPed
)
+
0x44
)
;
ReadProcessMemory
(
pHandle
,
(
LPCVOID
)
vecSpeed
,
&
vecSpeed
,
4
,
0
)
;


Как правильно сделать? А то не дает CVector в LPCVOID преобразовать.
 
Ответить с цитированием

  #3  
Старый 29.09.2016, 11:24
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от iAmerican  

C++:





Код:
CVector vecSpeed
=
*
(
CVector
*
)
(
(
pPed
)
+
0x44
)
;
ReadProcessMemory
(
pHandle
,
(
LPCVOID
)
vecSpeed
,
&
vecSpeed
,
4
,
0
)
;


Как правильно сделать? А то не дает CVector в LPCVOID преобразовать.
потому что ***ню написал. читаешь вектор из свой программы, а потом в ReadProcessMemory пытаешься запихать этот вектор вместо адреса
 
Ответить с цитированием

  #4  
Старый 29.09.2016, 11:58
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Цитата:
Сообщение от SR_team  

потому что ***ню написал. читаешь вектор из свой программы, а потом в ReadProcessMemory пытаешься запихать этот вектор вместо адреса
как мне его прочитать? что бы потом с ним мат. действия выполнять

C++:





Код:
DWORD vPos
=
(
DWORD
)
(
(
pPed
)
+
0x14
)
;
ReadProcessMemory
(
pHandle
,
(
LPCVOID
)
vPos
,
&
vPos
,
4
,
0
)
;


Это получается тоже неправильно ?
 
Ответить с цитированием

  #5  
Старый 29.09.2016, 13:08
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от iAmerican  

как мне его прочитать? что бы потом с ним мат. действия выполнять

C++:





Код:
DWORD vPos
=
(
DWORD
)
(
(
pPed
)
+
0x14
)
;
ReadProcessMemory
(
pHandle
,
(
LPCVOID
)
vPos
,
&
vPos
,
4
,
0
)
;


Это получается тоже неправильно ?
конечно не правильно. загугли "ReadProcessMemory example c++"
 
Ответить с цитированием

  #6  
Старый 29.09.2016, 16:36
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Цитата:
Сообщение от SR_team  

конечно не правильно. загугли "ReadProcessMemory example c++"
ты понимаешь что это EXE приложение?

То что ты сказал, что vPos тоже не правильно , оно правильно 100%

C++:





Код:
CVector vecSpeed
;
// = *(CVector*)((pPed)+0x44);
ReadProcessMemory
(
pHandle
,
(
LPCVOID
)
(
(
pPed
)
+
0x44
)
,
&
vecSpeed
,
4
,
0
)
;


Вот так вот читает , но только координату X
 
Ответить с цитированием

  #7  
Старый 29.09.2016, 16:17
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Код:





Код:
CVector vecSpeed = *(CVector*)((pPed) + 0x44);


Рабочий вариант кстати.
 
Ответить с цитированием

  #8  
Старый 30.09.2016, 12:43
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Как адресс игры получить?
 
Ответить с цитированием

  #9  
Старый 30.09.2016, 13:52
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от iAmerican  

Как адресс игры получить?
OpenProcess
 
Ответить с цитированием

  #10  
Старый 05.10.2016, 00:28
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

C++:





[CODE]
char
Hostname
(
)
{
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
(
SAMPDLLBASE
+
0x21A0F8
)
,
(
LPVOID
)
&
Out
,
sizeof
(
Out
)
,
NULL
)
;
char
ServerString
[
128
]
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
(
Out
+
0x121
)
,
&
ServerString
,
128
,
NULL
)
;
cout



В отдельности читает все отлично , но хочу сделать это функцией , что бы вызывать , например вот так :

C++:





Код:
printf
(
"%s"
,
Hostname
(
)
)
;


Но бьет ошибку.

Думаю это из за того что я как то не так возвращаю ServerString , подскажите пж.

Код:





Код:
Вызвано исключение по адресу 0x6D6D2E47 (ucrtbase.dll) в API.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFFFFFFD8.

Если для этого исключения имеется обработчик, выполнение программы может быть продолжено безопасно.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.