Показать сообщение отдельно

  #3  
Старый 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
)
;
}
 
Ответить с цитированием