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

  #1  
Старый 06.04.2020, 22:38
Deprecation
Новичок
Регистрация: 30.03.2020
Сообщений: 7
С нами: 3222983

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

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

как можно сделать активацию на команду в asi?
C++:





Код:
#define SAMP_INPUT_INFO                0x21A0E8
#define SAMP_FUNC_REGISTERCMD          0x65AD0
BOOL
RegisterChatCommand
(
LPCSTR sName
,
LPVOID lpvFunction
)
{
DWORD dwSAMPAddress
=
reinterpret_cast

(
GetModuleHandleA
(
"SAMP.DLL"
)
)
;
if
(
dwSAMPAddress
)
{
LPVOID lpvInputInfo
=
*
reinterpret_cast

(
dwSAMPAddress
+
SAMP_INPUT_INFO
)
;
if
(
lpvInputInfo
)
{
reinterpret_cast

(
dwSAMPAddress
+
SAMP_FUNC_REGISTERCMD
)
(
lpvInputInfo
,
sName
,
lpvFunction
)
;
return
TRUE
;
}
}
return
FALSE
;
}
/*

    Example:

        LPVOID CommandHandler(LPCSTR sParams)
        {
            // sParams - command parameters.
        }

        RegisterChatCommand("CommandName", CommandHandler);

*/


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

  #2  
Старый 07.04.2020, 00:36
ucciModd
Новичок
Регистрация: 21.03.2020
Сообщений: 17
С нами: 3235828

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

Сообщением ранее искал адрес памяти для клавиш гта и получил ответ. Выполнил следующий код:

C++:





Код:
while
(
bThread
)
{
*
(
int
*
)
(
0xB73458
+
0x3
)
=
255
;
}


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

  #3  
Старый 07.04.2020, 00:41
Deprecation
Новичок
Регистрация: 30.03.2020
Сообщений: 7
С нами: 3222983

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

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

Сообщением ранее искал адрес памяти для клавиш гта и получил ответ. Выполнил следующий код:

C++:





Код:
while
(
bThread
)
{
*
(
int
*
)
(
0xB73458
+
0x3
)
=
255
;
}


Все работает, но довольно часто останавливается, будто на микросекунду отжал клавишу
Все из за цикла while, возникают несостыковки с основным циклом игры. Как я понял, ты для этих дел создаешь поток, но в твоем случае нужно хукнуть основной цикл игры, и там уже ставить статус клавише. Пример хука можно поглядеть вот тут:

cEntry.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

gitlab.com


cAPI/cHooker/cHooker.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

gitlab.com


cAPI/cHooks/cHooks.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

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

  #4  
Старый 07.04.2020, 01:57
ucciModd
Новичок
Регистрация: 21.03.2020
Сообщений: 17
С нами: 3235828

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

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

Все из за цикла while, возникают несостыковки с основным циклом игры. Как я понял, ты для этих дел создаешь поток, но в твоем случае нужно хукнуть основной цикл игры, и там уже ставить статус клавише. Пример хука можно поглядеть вот тут:

cEntry.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

gitlab.com


cAPI/cHooker/cHooker.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

gitlab.com


cAPI/cHooks/cHooks.cpp · master · Konstantin Poletaev / API for GTA San Andreas with SAMP

GitLab.com

gitlab.com

Теперь перестал воспроизводить нажатие, хотя любой другой код исполняется

C++:





Код:
SA
->
getSignals
(
)
->
onLoop
+=
[
&
]
(
)
{
if
(
bTest
)
*
(
int
*
)
(
0xB73458
+
0x3
)
=
255
;
}
;
 
Ответить с цитированием

  #5  
Старый 09.04.2020, 17:57
Vesca
Новичок
Регистрация: 31.03.2016
Сообщений: 20
С нами: 5324981

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

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

  #6  
Старый 09.04.2020, 22:22
MrCold
Постоянный
Регистрация: 13.07.2017
Сообщений: 364
С нами: 4650077

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

1. Ваш вопрос. Решил на самоизоляции попробовать написать на C++ простой код. Раньше этого не делал, поэтому возможны костыли и небрежность. Суть в чем - выводится не то, что нужно, а именно:




Может кто показать ошибку?

C++:





[CODE]
#include
#include
#include
#include
#include
using
namespace
std
;
DWORD
GetProcId
(
const
wchar_t
*
procname
)
{
PROCESSENTRY32 pe
;
HANDLE hSnap
;
pe
.
dwSize
=
sizeof
(
PROCESSENTRY32
)
;
hSnap
=
CreateToolhelp32Snapshot
(
TH32CS_SNAPPROCESS
,
NULL
)
;
if
(
Process32First
(
hSnap
,
&
pe
)
)
{
do
{
if
(
wcscmp
(
pe
.
szExeFile
,
procname
)
==
0
)
break
;
}
while
(
Process32Next
(
hSnap
,
&
pe
)
)
;
}
return
pe
.
th32ProcessID
;
}
DWORD
get_module
(
HANDLE hProcess
,
const
wchar_t
*
name
)
{
HMODULE hMods
[
1024
]
;
DWORD cbNeeded
;
unsigned
int
i
;
if
(
EnumProcessModules
(
hProcess
,
hMods
,
sizeof
(
hMods
)
,
&
cbNeeded
)
)
{
for
(
i
=
0
;
i

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

  #7  
Старый 13.04.2020, 22:37
checkdasound
Постоянный
Регистрация: 12.01.2018
Сообщений: 963
С нами: 4387250

Репутация: 133


По умолчанию

Как строку перевести в utf-8? Есть ли штука типа u8, но чтобы работала еще и с переменными?
 
Ответить с цитированием

  #8  
Старый 14.04.2020, 19:55
DolgorukovGTA
Постоянный
Регистрация: 27.05.2018
Сообщений: 651
С нами: 4191790

Репутация: 83


По умолчанию

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

Как строку перевести в utf-8? Есть ли штука типа u8, но чтобы работала еще и с переменными?
Сработало?
 
Ответить с цитированием

  #9  
Старый 16.04.2020, 11:14
-raymond-
Участник форума
Регистрация: 17.12.2017
Сообщений: 110
С нами: 4423953

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

если у меня в длл будет использоваться имгуи, и при условии что я запротекчу ее VMProtect, возможно ли будет по сигнатуре файла распознать что там есть имгуи?
 
Ответить с цитированием

  #10  
Старый 17.04.2020, 10:07
FormatC
Новичок
Регистрация: 30.08.2005
Сообщений: 4
С нами: 10892344

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

Цитата:
Сообщение от -raymond-  

если у меня в длл будет использоваться имгуи, и при условии что я запротекчу ее VMProtect, возможно ли будет по сигнатуре файла распознать что там есть имгуи?
VMProtect снимается на изи, и очень сильно нагружает процесс gta, все другие распаковщики так же снимаются, и вообще обязательно найдётся человек, который снимет твой протект за плату. Смысл тогда защищать его? И да, с VMProtect при правильных настройках не будет видно что там ImGui.

---------------------------------------------------

Кто знает как можно сделать поиск hex строк или просто строк в памяти процесса gta? Искал долго оч, так и не нашел, вроде пробывал чекать в исходниках Process Hacker там где функция Memory -> Strings но тоже не нашел. буду оч благодарен если подскажите КОДОМ
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.