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

  #7451  
Старый 16.02.2025, 01:18
Receiver
Постоянный
Регистрация: 26.03.2016
Сообщений: 660
С нами: 5332594

Репутация: 163


По умолчанию

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

как id машины получить через sampapi или plugin sdk
Получить откуда? Из CVehicle?

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

и как из uint16_t сделать cvehicle
Если твой uint16_t это индекс машины в пуле: https://github.com/BlastHackNet/SAM...b62/src/sampapi/0.3.7-R1/CVehiclePool.cpp#L82
 
Ответить с цитированием

  #7452  
Старый 16.02.2025, 15:33
TokyoQq
Новичок
Регистрация: 14.01.2024
Сообщений: 20
С нами: 1228197

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

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

Получить откуда? Из CVehicle?

Если твой uint16_t это индекс машины в пуле: https://github.com/BlastHackNet/SAM...b62/src/sampapi/0.3.7-R1/CVehiclePool.cpp#L82
да получить из CVehicle.

Из uint16_t пробовал так делать:

я пробовал так samp::CVehicle* playaVeh = samp::RefNetGame()->GetVehiclePool()->Get(v);

но там были ошибки по типу невозможно приобразовать из samp::CVehicle в CVehicle вот больше кода

C++:





Код:
static
void
RenderNeonForVehicle
(
CVehicle
*
vehicle
)
{
CVector Pos
=
CModelInfo
::
ms_modelInfoPtrs
[
vehicle
->
m_nModelIndex
]
->
m_pColModel
->
m_boundBox
.
m_vecMin
;
CVector center
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
0.0f
,
0.0f
,
0.0f
)
)
;
CVector up
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
0.0f
,
0.0f
-
Pos
.
y
,
0.0f
)
)
-
center
;
CVector right
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
Pos
.
x
-
0.0f
,
0.0f
,
0.0f
)
)
-
center
;
}


если типо делать в RenderNeonForVehicle samp::CVehicle то пишет что TransformFromObjectSpace ненайден а в CVehicle* playaVeh = samp::RefNetGame()->GetVehiclePool()->Get(v); без samp:: будут ошибки
 
Ответить с цитированием

  #7453  
Старый 16.02.2025, 17:13
ARMOR
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами: 3831395

Репутация: 183


По умолчанию

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

да получить из CVehicle.

Из uint16_t пробовал так делать:
я пробовал так samp::CVehicle* playaVeh = samp::RefNetGame()->GetVehiclePool()->Get(v);
но там были ошибки по типу невозможно приобразовать из samp::CVehicle в CVehicle вот больше кода

C++:





Код:
static
void
RenderNeonForVehicle
(
CVehicle
*
vehicle
)
{
CVector Pos
=
CModelInfo
::
ms_modelInfoPtrs
[
vehicle
->
m_nModelIndex
]
->
m_pColModel
->
m_boundBox
.
m_vecMin
;
CVector center
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
0.0f
,
0.0f
,
0.0f
)
)
;
CVector up
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
0.0f
,
0.0f
-
Pos
.
y
,
0.0f
)
)
-
center
;
CVector right
=
vehicle
->
TransformFromObjectSpace
(
CVector
(
Pos
.
x
-
0.0f
,
0.0f
,
0.0f
)
)
-
center
;
}


если типо делать в RenderNeonForVehicle samp::CVehicle то пишет что TransformFromObjectSpace ненайден а в CVehicle* playaVeh = samp::RefNetGame()->GetVehiclePool()->Get(v); без samp:: будут ошибки
В samp::CVehicle есть поле m_pGameVehicle, это то что тебе нужно
 
Ответить с цитированием

  #7454  
Старый 16.02.2025, 18:28
TokyoQq
Новичок
Регистрация: 14.01.2024
Сообщений: 20
С нами: 1228197

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

C++:





Код:
samp
::
RefNetGame
(
)
->
GetVehiclePool
(
)
->
Get
(
v
)
;


может кто-то дать этот код только для plugin sdk
 
Ответить с цитированием

  #7455  
Старый 16.02.2025, 19:13
ARMOR
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами: 3831395

Репутация: 183


По умолчанию

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

C++:





Код:
samp
::
RefNetGame
(
)
->
GetVehiclePool
(
)
->
Get
(
v
)
;


может кто-то дать этот код только для plugin sdk
В PSDK ты это никак не сделаешь. Оно перебирает самповский пулл
 
Ответить с цитированием

  #7456  
Старый 16.02.2025, 19:28
Wu_Yu_Le
Новичок
Регистрация: 16.02.2025
Сообщений: 2
С нами: 653791

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

How can I add the main parts of this code to mod_sta? I have already done everything about the menu. But I don't know how to correctly add a new patch
 
Ответить с цитированием

  #7457  
Старый 16.02.2025, 21:43
TokyoQq
Новичок
Регистрация: 14.01.2024
Сообщений: 20
С нами: 1228197

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

кто может помочь с хуком вот срочка из ida

ida pro:





Код:
.text:1008D077 68 D4 B2 0E 10  push    offset aSampguiPng ; "sampgui.png"


то есть надо изменить sampgui.png на gui.png чет типо

C++:





Код:
patch
::
RedirectCall
(
0x100EB2D4
,
"gui.png"
)
;


Цитата:
Сообщение от Спойлер  


ida pro:





Код:
void __thiscall CDXUTDialog::InitDefaultElements(CDXUTDialog *this)
{
  struct tagRECT rc; // [esp+10h] [ebp-7Ch] BYREF
  CDXUTElement a4; // [esp+20h] [ebp-6Ch] BYREF

  CGrowableArray::SetTexture(this, 0, "sampgui.png");
  CDXUTDialog::InitFont(this);
  CDXUTElement::SetFont(&this->m_CapElement, 1, -1, 5);
  SetRect(&rc, 17, 269, 241, 287);
  CDXUTElement::SetTexture(&this->m_CapElement, 0, &rc, 0xFFFFFFFF);
  this->m_CapElement.TextureColor.States[0] = 0xC80A0A0A;
  this->m_CapElement.FontColor.States[0] = 0xFFD2D2D2;
  CDXUTElement::SetFont(&this->m_CapElement, 1, 0xFFD2D2D2, 4);
  DXUTBlendColor::Blend(&this->m_CapElement.TextureColor, 0, 10.0, 0.69999999);
  DXUTBlendColor::Blend(&this->m_CapElement.FontColor, 0, 10.0, 0.69999999);
  CDXUTElement::SetFont(&a4, 1, -1, 5);
  CDXUTElement::SetFont(&a4, 1, 0xFFBEBEBE, 68);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  CDXUTDialog::SetDefaultElement(this, 1, 0, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = 0xFF95B0D0;
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.FontColor.States[4] = 0xFFFFFFFF;
  a4.FontColor.States[0] = 0xFFC8C8C8;
  CDXUTDialog::SetDefaultElement(this, 0, 0, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFu);
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.TextureColor.States[5] = 0x3C505050;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 0, 1, &a4);
  SetRect(&rc, 0, 54, 27, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 4);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = -1;
  CDXUTDialog::SetDefaultElement(this, 2, 0, &a4);
  SetRect(&rc, 27, 54, 54, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 2, 1, &a4);
  SetRect(&rc, 54, 54, 81, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 4);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = -1;
  CDXUTDialog::SetDefaultElement(this, 3, 0, &a4);
  SetRect(&rc, 81, 54, 108, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 3, 1, &a4);
  SetRect(&rc, 7, 81, 247, 123);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.TextureColor.States[3] = 0xFFB92228;
  a4.TextureColor.States[1] = 0x46C8C8C8;
  a4.FontColor.States[4] = 0xFFFFFFFF;
  a4.FontColor.States[5] = 0xFF000000;
  a4.FontColor.States[1] = 0xC8C8C8C8;
  CDXUTDialog::SetDefaultElement(this, 4, 0, &a4);
  SetRect(&rc, 272, 0, 325, 49);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = 0xFF969696;
  a4.TextureColor.States[3] = 0xFF969696;
  a4.TextureColor.States[1] = 0x46FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 4, 1, &a4);
  SetRect(&rc, 7, 123, 241, 265);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 0);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 4, 2, &a4);
  SetRect(&rc, 7, 266, 241, 289);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 0);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFC8C8C8, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 4, 3, &a4);
  SetRect(&rc, 1, 290, 280, 331);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[1] = 0x46FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 5, 0, &a4);
  SetRect(&rc, 54, 54, 81, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xFF95B0D0, 0);
  a4.TextureColor.States[4] = 0xFFF0F0F0;
  a4.TextureColor.States[5] = 0xFFB92228;
  a4.TextureColor.States[3] = 0xFFDCDCDC;
  CDXUTDialog::SetDefaultElement(this, 5, 1, &a4);
  SetRect(&rc, 243, 144, 265, 155);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 0, &a4);
  SetRect(&rc, 243, 124, 265, 144);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 1, &a4);
  SetRect(&rc, 243, 155, 265, 176);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 2, &a4);
  SetRect(&rc, 266, 123, 286, 167);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xFF95B0D0, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 3, &a4);
  CDXUTElement::SetFont(&a4, 0, -16777216, 4);
  SetRect(&rc, 14, 90, 241, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 0, &a4);
  SetRect(&rc, 8, 82, 14, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 1, &a4);
  SetRect(&rc, 14, 82, 241, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 2, &a4);
  SetRect(&rc, 241, 82, 246, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 3, &a4);
  SetRect(&rc, 8, 90, 14, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 4, &a4);
  SetRect(&rc, 241, 90, 246, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 5, &a4);
  SetRect(&rc, 8, 113, 14, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 6, &a4);
  SetRect(&rc, 14, 113, 241, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 7, &a4);
  SetRect(&rc, 241, 113, 246, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 8, &a4);
  CDXUTElement::SetFont(&a4, 0, 0xFF000000, 4);
  SetRect(&rc, 14, 90, 241, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 0, &a4);
  SetRect(&rc, 8, 82, 14, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 1, &a4);
  SetRect(&rc, 14, 82, 241, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 2, &a4);
  SetRect(&rc, 241, 82, 246, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 3, &a4);
  SetRect(&rc, 8, 90, 14, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 4, &a4);
  SetRect(&rc, 241, 90, 246, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 5, &a4);
  SetRect(&rc, 8, 113, 14, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 6, &a4);
  SetRect(&rc, 14, 113, 241, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 7, &a4);
  SetRect(&rc, 241, 113, 246, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 8, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  CDXUTDialog::SetDefaultElement(this, 7, 9, &a4);
  SetRect(&rc, 13, 124, 241, 265);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 1, -1, 64);
  CDXUTDialog::SetDefaultElement(this, 8, 0, &a4);
  SetRect(&rc, 17, 269, 241, 287);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 1, 0xFFFFFFFF, 64);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 8, 1, &a4);
}


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

  #7458  
Старый 16.02.2025, 21:56
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

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

кто может помочь с хуком вот срочка из ida

ida pro:





Код:
.text:1008D077 68 D4 B2 0E 10  push    offset aSampguiPng ; "sampgui.png"


то есть надо изменить sampgui.png на gui.png чет типо

C++:





Код:
patch
::
RedirectCall
(
0x100EB2D4
,
"gui.png"
)
;


Цитата:
Сообщение от Спойлер  


ida pro:





Код:
void __thiscall CDXUTDialog::InitDefaultElements(CDXUTDialog *this)
{
  struct tagRECT rc; // [esp+10h] [ebp-7Ch] BYREF
  CDXUTElement a4; // [esp+20h] [ebp-6Ch] BYREF

  CGrowableArray::SetTexture(this, 0, "sampgui.png");
  CDXUTDialog::InitFont(this);
  CDXUTElement::SetFont(&this->m_CapElement, 1, -1, 5);
  SetRect(&rc, 17, 269, 241, 287);
  CDXUTElement::SetTexture(&this->m_CapElement, 0, &rc, 0xFFFFFFFF);
  this->m_CapElement.TextureColor.States[0] = 0xC80A0A0A;
  this->m_CapElement.FontColor.States[0] = 0xFFD2D2D2;
  CDXUTElement::SetFont(&this->m_CapElement, 1, 0xFFD2D2D2, 4);
  DXUTBlendColor::Blend(&this->m_CapElement.TextureColor, 0, 10.0, 0.69999999);
  DXUTBlendColor::Blend(&this->m_CapElement.FontColor, 0, 10.0, 0.69999999);
  CDXUTElement::SetFont(&a4, 1, -1, 5);
  CDXUTElement::SetFont(&a4, 1, 0xFFBEBEBE, 68);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  CDXUTDialog::SetDefaultElement(this, 1, 0, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = 0xFF95B0D0;
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.FontColor.States[4] = 0xFFFFFFFF;
  a4.FontColor.States[0] = 0xFFC8C8C8;
  CDXUTDialog::SetDefaultElement(this, 0, 0, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFu);
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.TextureColor.States[5] = 0x3C505050;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 0, 1, &a4);
  SetRect(&rc, 0, 54, 27, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 4);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = -1;
  CDXUTDialog::SetDefaultElement(this, 2, 0, &a4);
  SetRect(&rc, 27, 54, 54, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 2, 1, &a4);
  SetRect(&rc, 54, 54, 81, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 4);
  a4.FontColor.States[1] = 0xC8C8C8C8;
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = -1;
  CDXUTDialog::SetDefaultElement(this, 3, 0, &a4);
  SetRect(&rc, 81, 54, 108, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 3, 1, &a4);
  SetRect(&rc, 7, 81, 247, 123);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[4] = 0xFFB92228;
  a4.TextureColor.States[3] = 0xFFB92228;
  a4.TextureColor.States[1] = 0x46C8C8C8;
  a4.FontColor.States[4] = 0xFFFFFFFF;
  a4.FontColor.States[5] = 0xFF000000;
  a4.FontColor.States[1] = 0xC8C8C8C8;
  CDXUTDialog::SetDefaultElement(this, 4, 0, &a4);
  SetRect(&rc, 272, 0, 325, 49);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  a4.TextureColor.States[0] = 0xC8FFFFFF;
  a4.TextureColor.States[5] = 0xFF969696;
  a4.TextureColor.States[3] = 0xFF969696;
  a4.TextureColor.States[1] = 0x46FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 4, 1, &a4);
  SetRect(&rc, 7, 123, 241, 265);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 0);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 4, 2, &a4);
  SetRect(&rc, 7, 266, 241, 289);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 0);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFC8C8C8, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 4, 3, &a4);
  SetRect(&rc, 1, 290, 280, 331);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  a4.TextureColor.States[0] = 0x96FFFFFF;
  a4.TextureColor.States[3] = 0xC8FFFFFF;
  a4.TextureColor.States[1] = 0x46FFFFFF;
  CDXUTDialog::SetDefaultElement(this, 5, 0, &a4);
  SetRect(&rc, 54, 54, 81, 81);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xFF95B0D0, 0);
  a4.TextureColor.States[4] = 0xFFF0F0F0;
  a4.TextureColor.States[5] = 0xFFB92228;
  a4.TextureColor.States[3] = 0xFFDCDCDC;
  CDXUTDialog::SetDefaultElement(this, 5, 1, &a4);
  SetRect(&rc, 243, 144, 265, 155);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 0, &a4);
  SetRect(&rc, 243, 124, 265, 144);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 1, &a4);
  SetRect(&rc, 243, 155, 265, 176);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFFFFFFF, 0xFFFFFFFF, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 2, &a4);
  SetRect(&rc, 266, 123, 286, 167);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xFF95B0D0, 0);
  CDXUTDialog::SetDefaultElement(this, 9, 3, &a4);
  CDXUTElement::SetFont(&a4, 0, -16777216, 4);
  SetRect(&rc, 14, 90, 241, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 0, &a4);
  SetRect(&rc, 8, 82, 14, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 1, &a4);
  SetRect(&rc, 14, 82, 241, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 2, &a4);
  SetRect(&rc, 241, 82, 246, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 3, &a4);
  SetRect(&rc, 8, 90, 14, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 4, &a4);
  SetRect(&rc, 241, 90, 246, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 5, &a4);
  SetRect(&rc, 8, 113, 14, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 6, &a4);
  SetRect(&rc, 14, 113, 241, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 7, &a4);
  SetRect(&rc, 241, 113, 246, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 6, 8, &a4);
  CDXUTElement::SetFont(&a4, 0, 0xFF000000, 4);
  SetRect(&rc, 14, 90, 241, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 0, &a4);
  SetRect(&rc, 8, 82, 14, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 1, &a4);
  SetRect(&rc, 14, 82, 241, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 2, &a4);
  SetRect(&rc, 241, 82, 246, 90);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 3, &a4);
  SetRect(&rc, 8, 90, 14, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 4, &a4);
  SetRect(&rc, 241, 90, 246, 113);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 5, &a4);
  SetRect(&rc, 8, 113, 14, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 6, &a4);
  SetRect(&rc, 14, 113, 241, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 7, &a4);
  SetRect(&rc, 241, 113, 246, 121);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTDialog::SetDefaultElement(this, 7, 8, &a4);
  SetRect(&rc, 0, 0, 136, 54);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 0, -1, 5);
  CDXUTDialog::SetDefaultElement(this, 7, 9, &a4);
  SetRect(&rc, 13, 124, 241, 265);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 1, -1, 64);
  CDXUTDialog::SetDefaultElement(this, 8, 0, &a4);
  SetRect(&rc, 17, 269, 241, 287);
  CDXUTElement::SetTexture(&a4, 0, &rc, 0xFFFFFFFF);
  CDXUTElement::SetFont(&a4, 1, 0xFFFFFFFF, 64);
  DXUTBlendColor::SetColor(&a4.TextureColor, 0xFFB92228, 0xC8808080, 0);
  CDXUTDialog::SetDefaultElement(this, 8, 1, &a4);
}


умнее будет менять указатель на строку в push:

C++:





Код:
auto
samp_handle
=
reinterpret_cast

(
GetModuleHandleA
(
"samp.dll"
)
)
;
patch
::
SetPointer
(
samp_handle
+
0x8D078
,
"gui.png"
)
;
 
Ответить с цитированием

  #7459  
Старый 22.02.2025, 17:21
TokyoQq
Новичок
Регистрация: 14.01.2024
Сообщений: 20
С нами: 1228197

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

C++:





Код:
#include 
typedef
BOOL
(
WINAPI
*
IsDebuggerPresent_t
)
(
)
;
BOOL WINAPI
FakeIsDebuggerPresent
(
)
{
return
FALSE
;
}
void
HookIAT
(
)
{
DWORD
*
pIAT
=
(
DWORD
*
)
0x10035068
;
DWORD oldProtect
;
VirtualProtect
(
pIAT
,
sizeof
(
DWORD
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
*
pIAT
=
(
DWORD
)
FakeIsDebuggerPresent
;
VirtualProtect
(
pIAT
,
sizeof
(
DWORD
)
,
oldProtect
,
&
oldProtect
)
;
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD  ul_reason_for_call
,
LPVOID lpReserved
)
{
if
(
ul_reason_for_call
==
DLL_PROCESS_ATTACH
)
{
HookIAT
(
)
;
}
return
TRUE
;
}


че делать если при инжекте

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

  #7460  
Старый 22.02.2025, 17:33
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

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

DWORD* pIAT = (DWORD*)0x10035068;
я подозреваю, что 1 в начале адреса лишняя при работе из дллки
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

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

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

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

Сумма USDT:

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

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

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

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

×

Мои сделки

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

Сделка


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