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

  #4921  
Старый 17.11.2020, 13:44
#Northn
Флудер
Регистрация: 10.08.2017
Сообщений: 2,659
С нами: 4609424

Репутация: 183


По умолчанию

R3 насколько я помню

BlastHackNet/SAMP-API

A library for interacting with functions, classes and structures of SA-MP client - BlastHackNet/SAMP-API

github.com


изучай
 
Ответить с цитированием

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

Репутация: 183


По умолчанию

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

Amazing CRMP какую использует? мне она и нужна.
посмотри в свойствах samp.dll
 
Ответить с цитированием

  #4923  
Старый 17.11.2020, 13:45
Vintik
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами: 4598023

Репутация: 183


По умолчанию

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

Она вроде из класса, поэтому нужно еще передавать указатель, а у тебя идет чисто аргумент в виде указателя на текст
C++:





Код:
void
SendChat
(
const
std
::
string
&
text
)
{
typedef
int
(
__stdcall
*
SendCommand
)
(
const
char
*
)
;
typedef
int
(
__stdcall
*
SendText
)
(
const
char
*
)
;
static
SendCommand sendCommand
=
(
SendCommand
)
(
(
DWORD
)
GetModuleHandle
(
"samp.dll"
)
+
0x65C60
)
;
static
SendText sendText
=
(
SendText
)
(
(
DWORD
)
GetModuleHandle
(
"samp.dll"
)
+
0x57F0
)
;
/*
        какой-нибудь способ конвертировать std::string -> const char*, чтобы оно не крашило через n повторений
        */
if
(
text
[
0
]
==
'/'
)
sendCommand
(
cstr
)
;
else
sendText
(
cstr
)
;
}


Почему то тут не передаёт человек только указатель на строку и у него работает (если что, из этой темы)
 
Ответить с цитированием

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

Репутация: 183


По умолчанию

Цитата:
Сообщение от #Northn  

R3 насколько я помню

BlastHackNet/SAMP-API

A library for interacting with functions, classes and structures of SA-MP client - BlastHackNet/SAMP-API

github.com


изучай
R2 это

 
Ответить с цитированием

  #4925  
Старый 17.11.2020, 13:48
Gunborg Johansson
Познающий
Регистрация: 30.10.2020
Сообщений: 32
С нами: 2914352

Репутация: 8
По умолчанию

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

C++:





Код:
void
SendChat
(
const
std
::
string
&
text
)
{
typedef
int
(
__stdcall
*
SendCommand
)
(
const
char
*
)
;
typedef
int
(
__stdcall
*
SendText
)
(
const
char
*
)
;
static
SendCommand sendCommand
=
(
SendCommand
)
(
(
DWORD
)
GetModuleHandle
(
"samp.dll"
)
+
0x65C60
)
;
static
SendText sendText
=
(
SendText
)
(
(
DWORD
)
GetModuleHandle
(
"samp.dll"
)
+
0x57F0
)
;
/*
        какой-нибудь способ конвертировать std::string -> const char*, чтобы оно не крашило через n повторений
        */
if
(
text
[
0
]
==
'/'
)
sendCommand
(
cstr
)
;
else
sendText
(
cstr
)
;
}


Почему то тут не передаёт человек только указатель на строку и у него работает (если что, из этой темы)
C++:





Код:
const
uint32_t
sampHandle
=
.
.
.
;
void
AddRecail
(
const
char
*
const
recailString
)
{
using
AddRecail_t
=
void
(
__thiscall
*
)
(
class
CInput
*
,
const
char
*
const
)
;
auto
addRecail
{
reinterpret_cast

(
sampHandle
+
0x68E60
)
}
;
addRecail
(
*
reinterpret_cast

(
sampHandle
+
0x26E8CC
)
,
recailString
)
;
}
 
Ответить с цитированием

  #4926  
Старый 17.11.2020, 13:49
#Northn
Флудер
Регистрация: 10.08.2017
Сообщений: 2,659
С нами: 4609424

Репутация: 183


По умолчанию

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

R2 это
дллка р3



калкор лентяй не обновил инфу или забыл
 
Ответить с цитированием

  #4927  
Старый 17.11.2020, 13:50
Gunborg Johansson
Познающий
Регистрация: 30.10.2020
Сообщений: 32
С нами: 2914352

Репутация: 8
По умолчанию

Цитата:
Сообщение от Gunborg Johansson  

C++:





Код:
const
uint32_t
sampHandle
=
.
.
.
;
void
AddRecail
(
const
char
*
const
recailString
)
{
using
AddRecail_t
=
void
(
__thiscall
*
)
(
class
CInput
*
,
const
char
*
const
)
;
auto
addRecail
{
reinterpret_cast

(
sampHandle
+
0x68E60
)
}
;
addRecail
(
*
reinterpret_cast

(
sampHandle
+
0x26E8CC
)
,
recailString
)
;
}

Just don't forget to check CInput for nullptr.
 
Ответить с цитированием

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

Репутация: 183


По умолчанию

Цитата:
Сообщение от #Northn  

дллка р3

калкор лентяй не обновил инфу или забыл
Да, ты прав
 
Ответить с цитированием

  #4929  
Старый 17.11.2020, 13:54
Vintik
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами: 4598023

Репутация: 183


По умолчанию

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

Да, ты прав
То есть что мне в итоге надо сделать, чтобы не было моей ошибки: EXCEPTION_ACCESS_VIOLATION?
 
Ответить с цитированием

  #4930  
Старый 17.11.2020, 13:55
Gunborg Johansson
Познающий
Регистрация: 30.10.2020
Сообщений: 32
С нами: 2914352

Репутация: 8
По умолчанию

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

То есть что мне в итоге надо сделать, чтобы не было моей ошибки: EXCEPTION_ACCESS_VIOLATION?
I threw you the code above, check CInput for nullptr and everything will work.
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.