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

  #4351  
Старый 04.02.2020, 18:54
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

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

Спасибо, сделаю, все понял)

А по поводу спавна все же как?)
так же. Это универсальный метод поиска нужного кода
 
Ответить с цитированием

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

Репутация: 183


По умолчанию

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

так же. Это универсальный метод поиска нужного кода
А потом просто его вызывать? А аргументы как искать? И еще в первом посту я скинул ссылку на то, где я пытался сделать хук, но по непонятным мне причинам тщетно.
 
Ответить с цитированием

  #4353  
Старый 04.02.2020, 19:59
p1cador
Участник форума
Регистрация: 19.03.2014
Сообщений: 222
С нами: 6395080

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

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

А аргументы как искать?
Чекай регистры и запушивание в стек непосредственно перед вызовом функции, и обращения к [ebp+...] в самой функции
 
Ответить с цитированием

  #4354  
Старый 05.02.2020, 20:46
Receiver
Постоянный
Регистрация: 26.03.2016
Сообщений: 660
С нами: 5332594

Репутация: 163


По умолчанию

как можно получить разрешение экрана (игры) без SFAPI
 
Ответить с цитированием

  #4355  
Старый 05.02.2020, 20:53
Carrentine
Постоянный
Регистрация: 25.12.2018
Сообщений: 568
С нами: 3886298

Репутация: 113


По умолчанию

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

как можно получить разрешение экрана (игры) без SFAPI
C++:





Код:
/* Глобально в системе. */
POINT globalScreenResolution
=
{
GetSystemMetrics
(
SM_CXSCREEN
)
,
GetSystemMetrics
(
SM_CYSCREEN
)
)
}
/* Установленное игрой. */
POINT gameScreenResolution
=
{
*
reinterpret_cast

(
0xC9C040
)
,
*
reinterpret_cast

(
0xC9C044
)
}
 
Ответить с цитированием

  #4356  
Старый 09.02.2020, 13:37
testuser
Новичок
Регистрация: 13.09.2005
Сообщений: 2
С нами: 10872326

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

Приветствую.

Как, используя sampfuncs, при получении RPC_ScrGangZoneStopFlash прочесть новый цвет гангзоны (если она была захвачена)?

В Lua работает просто используя

Код:





Код:
local pool = ffi.cast('struct stGangzonePool*', sampGetGangzonePoolPtr())
local color = pool.pGangzone[id].dwColor


, а вот sampfuncs'е через

Код:





Код:
stGangzonePool* pool = SF->getSAMP()->getInfo()->pPools->pGangzone;
pool->pGangzone[id]->dwColor;


отображает старый цвет гангзоны.
 
Ответить с цитированием

  #4357  
Старый 09.02.2020, 21:21
Musaigen
Познавший АНТИЧАТ
Регистрация: 01.04.2018
Сообщений: 1,710
С нами: 4272230

Репутация: 183


По умолчанию

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

Приветствую.
Как, используя sampfuncs, при получении RPC_ScrGangZoneStopFlash прочесть новый цвет гангзоны (если она была захвачена)?
В Lua работает просто используя

Код:





Код:
local pool = ffi.cast('struct stGangzonePool*', sampGetGangzonePoolPtr())
local color = pool.pGangzone[id].dwColor


, а вот sampfuncs'е через

Код:





Код:
stGangzonePool* pool = SF->getSAMP()->getInfo()->pPools->pGangzone;
pool->pGangzone[id]->dwColor;


отображает старый цвет гангзоны.
Через хук.
 
Ответить с цитированием

  #4358  
Старый 09.02.2020, 23:24
testuser
Новичок
Регистрация: 13.09.2005
Сообщений: 2
С нами: 10872326

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

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

Через хук.
Каким образом?
 
Ответить с цитированием

  #4359  
Старый 10.02.2020, 20:04
loganhackerdff
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами: 4633764

Репутация: 148


По умолчанию

как отправлять http запросы? желательно просто в консольном приложении с++
 
Ответить с цитированием

  #4360  
Старый 10.02.2020, 22:58
Romelo
Постоянный
Регистрация: 21.11.2014
Сообщений: 540
С нами: 6039222

Репутация: 163


По умолчанию

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

как отправлять http запросы? желательно просто в консольном приложении с++
Держи простенький класс, думаю на первое время тебе его хватит.

Исходник - SendGet

Класс для отправки get запроса и получения ответа. CleanLegend/SendGet(https://github.com/CleanLegend/SendGet) Пример использования: MyGet MyGetGet; std::string myotvet; MyGetGet.Init("mysite.com"); MyGetGet.SendGet("test.php?user=test", myotvet); MyGetGet.DeInit();

blast.hk


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

Каким образом?
RPC List

A list with SA-MP's packets documented. Contribute to Brunoo16/samp-packet-list development by creating an account on GitHub.

github.com


C++:





Код:
bool
CALLBACK
incomingRPC
(
stRakNetHookParams
*
params
)
{
if
(
params
->
packetId
==
ScriptRPCEnumeration
::
RPC_ScrGangZoneCreate
)
{
WORD wGangZoneID
;
float
minmax
[
4
]
;
DWORD color
;
params
->
bitStream
->
ResetReadPointer
(
)
;
params
->
bitStream
->
Read
(
wGangZoneID
)
;
params
->
bitStream
->
Read
(
minmax
)
;
params
->
bitStream
->
Read
(
color
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GangZoneCreate: %d / %0.2f, %0.2f, %0.2f, %0.2f / %d"
,
wGangZoneID
,
minmax
[
0
]
,
minmax
[
1
]
,
minmax
[
2
]
,
minmax
[
3
]
,
color
)
;
}
if
(
params
->
packetId
==
ScriptRPCEnumeration
::
RPC_ScrGangZoneDestroy
)
{
WORD wGangZoneID
;
params
->
bitStream
->
ResetReadPointer
(
)
;
params
->
bitStream
->
Read
(
wGangZoneID
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GangZoneDestroy: %d"
,
wGangZoneID
)
;
}
if
(
params
->
packetId
==
ScriptRPCEnumeration
::
RPC_ScrGangZoneFlash
)
{
WORD wGangZoneID
;
DWORD color
;
params
->
bitStream
->
ResetReadPointer
(
)
;
params
->
bitStream
->
Read
(
wGangZoneID
)
;
params
->
bitStream
->
Read
(
color
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GangZoneFlash: %d / %d"
,
wGangZoneID
,
color
)
;
}
if
(
params
->
packetId
==
ScriptRPCEnumeration
::
RPC_ScrGangZoneStopFlash
)
{
WORD wGangZoneID
;
params
->
bitStream
->
ResetReadPointer
(
)
;
params
->
bitStream
->
Read
(
wGangZoneID
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GangZoneStopFlash: %d"
,
wGangZoneID
)
;
}
return
true
;
}
//Init, Register hook RPC's
SF
->
getRakNet
(
)
->
registerRakNetCallback
(
RakNetScriptHookType
::
RAKHOOK_TYPE_INCOMING_RPC
,
incomingRPC
)
;
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...