 |
|

17.03.2022, 22:57
|
|
Познающий
Регистрация: 09.05.2017
Сообщений: 33
С нами:
4743173
Репутация:
63
|
|
Сообщение от Harrington
Здарова, почему не могу сделать русский язык в программе (Выводятся каракули). Компилятор Dev C++ 6.3
Перепробовал все возможные способы из интернета
setlocale(LC_ALL, "ru");
|
|
|

18.03.2022, 15:05
|
|
Познающий
Регистрация: 16.01.2022
Сообщений: 71
С нами:
2276608
Репутация:
8
|
|
как подключить функцию к самп апи?
|
|
|

18.03.2022, 16:59
|
|
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами:
4012500
Репутация:
138
|
|
Сообщение от writeline
И снова доброго времени суток господа.
Как заменить строку при подключении "SAMP 0.3.7 R3 и тд" на "SAMP 0.3.7 R1"
Просто заменить данную строку.
Возможно будет полезно:
Код:
mem
::
copy
(
(
PVOID
)
(
samp
+
0x85FE
)
,
(
PVOID
)
&
str_connecting
,
4
)
;
//connecting
mem
::
copy
(
(
PVOID
)
(
samp
+
0xAB11
)
,
(
PVOID
)
&
str_entering
,
4
)
;
//connected enter....
mem
::
copy
(
(
PVOID
)
(
samp
+
0x1074B
)
,
(
PVOID
)
&
str_fullconnected
,
4
)
;
//entered
mem
::
copy
(
(
PVOID
)
(
samp
+
0xB7C5
)
,
(
PVOID
)
&
str_welcome
,
4
)
;
//samp 037....
mem
::
copy
(
(
PVOID
)
(
samp
+
0x8A77
)
,
(
PVOID
)
&
str_kicked
,
4
)
;
//closed
mem
::
copy
(
(
PVOID
)
(
samp
+
0x8AF7
)
,
(
PVOID
)
&
str_timeout
,
4
)
;
//didnt respond
mem
::
copy
(
(
PVOID
)
(
samp
+
0xB045
)
,
(
PVOID
)
&
str_timeout
,
4
)
;
//didnt respond
mem
::
copy
(
(
PVOID
)
(
samp
+
0x8A47
)
,
(
PVOID
)
&
str_full
,
4
)
;
//is full
mem
::
copy
(
(
PVOID
)
(
samp
+
0xB008
)
,
(
PVOID
)
&
str_full
,
4
)
;
//is full
mem
::
copy
(
(
PVOID
)
(
samp
+
0xA3C5
)
,
(
PVOID
)
&
str_restart
,
4
)
;
//server is resta
mem
::
copy
(
(
PVOID
)
(
samp
+
0xA9AA
)
,
(
PVOID
)
&
str_lost
,
4
)
;
//lost
mem
::
copy
(
(
PVOID
)
(
samp
+
0x10275
)
,
(
PVOID
)
&
uncnick
,
4
)
;
mem
::
copy
(
(
PVOID
)
(
samp
+
0x10285
)
,
(
PVOID
)
&
uncnick2
,
4
)
;
mem
::
copy
(
(
PVOID
)
(
samp
+
0x10296
)
,
(
PVOID
)
&
uncnick3
,
4
)
;
mem
::
copy
(
(
PVOID
)
(
samp
+
0x102A7
)
,
(
PVOID
)
&
uncnick4
,
4
)
;
mem
::
copy
(
(
PVOID
)
(
samp
+
0xAC70
)
,
(
PVOID
)
&
fakever
,
4
)
;
//0.3.7-R3
mem
::
copy
(
(
PVOID
)
(
samp
+
0x5FECD
)
,
(
PVOID
)
&
fakever
,
4
)
;
//0.3.7-R3
*reinterpret_cast(samp + 0xB7C5) = " SAMP 0.3.7 R1"; наверна так
|
|
|

18.03.2022, 17:05
|
|
Познающий
Регистрация: 16.01.2022
Сообщений: 71
С нами:
2276608
Репутация:
8
|
|
как подключить функцию к сампапи?
|
|
|

18.03.2022, 18:15
|
|
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами:
4012500
Репутация:
138
|
|
Сообщение от Dadazik
как подключить функцию к сампапи?
всмысле
|
|
|

18.03.2022, 22:16
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Ну и шо ты хочешь? Тебе компилятор говорит, что нет идентификатора "samp"
|
|
|

18.03.2022, 22:35
|
|
Участник форума
Регистрация: 08.03.2019
Сообщений: 121
С нами:
3781678
Репутация:
113
|
|
Сообщение от writeline
samp - это адрес в памяти
0xB7C5 это смещение
Нужно хукнуть samp.dll?
Или как сделать что бы просто работало? 😄
C++:
Код:
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
public
:
patchChatSAMP
(
)
{
*
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
+
0xB7C5
)
=
&
chatSAMP
;
}
}
|
|
|

18.03.2022, 22:53
|
|
Участник форума
Регистрация: 08.03.2019
Сообщений: 121
С нами:
3781678
Репутация:
113
|
|
на данное предупреждение можешь не обращать внимания, .asi плагины подгружаются после подгрузки модуля samp.dll, а значит он уже не может быть пустым
если это весь твой код - то у тебя не инициализирован класс
C++:
Код:
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
public
:
patchChatSAMP
(
)
{
*
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
+
0xB7C5
)
=
&
chatSAMP
;
}
}
pChatSAMP
;
|
|
|

19.03.2022, 08:48
|
|
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами:
4012500
Репутация:
138
|
|
Сообщение от writeline
С++:
Код:
#include "pch.h"
#include "string"
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
public
:
patchChatSAMP
(
)
{
*
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
+
0xB7C5
)
=
&
chatSAMP
;
}
}
pChatSAMP
;
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD ul_reason_for_call
,
LPVOID lpReserved
)
{
switch
(
ul_reason_for_call
)
{
case
DLL_PROCESS_ATTACH
:
case
DLL_THREAD_ATTACH
:
case
DLL_THREAD_DETACH
:
case
DLL_PROCESS_DETACH
:
break
;
}
return
TRUE
;
}
Всё равно не хочет работать 😒
так ты прям в иде можешь поменять байты
|
|
|

19.03.2022, 17:08
|
|
Участник форума
Регистрация: 08.03.2019
Сообщений: 121
С нами:
3781678
Репутация:
113
|
|
Сообщение от writeline
С++:
Код:
#include "pch.h"
#include "string"
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
public
:
patchChatSAMP
(
)
{
*
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
+
0xB7C5
)
=
&
chatSAMP
;
}
}
pChatSAMP
;
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD ul_reason_for_call
,
LPVOID lpReserved
)
{
switch
(
ul_reason_for_call
)
{
case
DLL_PROCESS_ATTACH
:
case
DLL_THREAD_ATTACH
:
case
DLL_THREAD_DETACH
:
case
DLL_PROCESS_DETACH
:
break
;
}
return
TRUE
;
}
Всё равно не хочет работать 😒
C++:
Код:
#include "pch.h"
#include
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
private
:
uintptr_t module_samp
{
0
}
;
public
:
patchChatSAMP
(
)
{
module_samp
=
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
)
;
DWORD lpflOldProtect
;
VirtualProtect
(
reinterpret_cast
(
module_samp
+
0xB7C5
)
,
0x4
,
PAGE_EXECUTE_READWRITE
,
&
lpflOldProtect
)
;
*
reinterpret_cast
(
module_samp
+
0xB7C5
)
=
&
chatSAMP
;
VirtualProtect
(
reinterpret_cast
(
module_samp
+
0xB7C5
)
,
0x4
,
lpflOldProtect
,
&
lpflOldProtect
)
;
}
}
pChatSAMP
;
upd, правильный вариант:
C++:
Код:
#include "pch.h"
#include
std
::
string chatSAMP
{
"SAMP 0.3.7 R1"
}
;
class
patchChatSAMP
{
private
:
uintptr_t module_samp
{
0
}
;
public
:
patchChatSAMP
(
)
{
module_samp
=
reinterpret_cast
(
GetModuleHandleA
(
"samp.dll"
)
)
;
DWORD lpflOldProtect
;
VirtualProtect
(
reinterpret_cast
(
module_samp
+
0xB7C5
)
,
0x4
,
PAGE_EXECUTE_READWRITE
,
&
lpflOldProtect
)
;
*
reinterpret_cast
(
module_samp
+
0xB7C5
)
=
&
chatSAMP
[
0
]
;
VirtualProtect
(
reinterpret_cast
(
module_samp
+
0xB7C5
)
,
0x4
,
lpflOldProtect
,
&
lpflOldProtect
)
;
}
}
pChatSAMP
;
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|