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

  #1611  
Старый 03.07.2016, 18:31
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

reserWriteOffset();

ignorebits(8);

write(senderID);

Write((PCHAR)&psSync, sizeof(psSync));
 
Ответить с цитированием

  #1612  
Старый 03.07.2016, 19:07
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

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

Не работает чет. Вроде должно, заменяем функцию Present (VTable[17]) на свою и в своей вызываем оригинал. До этого в другом плагине делал так же, все работало.

C++:





Код:
DWORD dwOriginal
=
0x0
;
__declspec
(
naked
)
void
hook
(
)
{
__asm pushad
    __asm pushfd
Log
(
"work"
)
;
__asm popfd
    __asm popad

    __asm jmp
[
dwOriginal
]
}
void
init
(
)
{
Log
(
"init"
)
;
while
(
(
*
(
IDirect3DDevice9
*
*
)
0xC97C28
)
==
nullptr
)
Sleep
(
100
)
;
IDirect3DDevice9
*
Device
=
*
(
IDirect3DDevice9
*
*
)
0xC97C28
;
Log
(
"%X"
,
Device
)
;
DWORD
*
VTable
=
(
DWORD
*
)
*
(
DWORD
*
)
Device
;
Log
(
"%X"
,
VTable
)
;
MEMORY_BASIC_INFORMATION mbi
;
VirtualQuery
(
(
LPCVOID
)
VTable
,
&
mbi
,
sizeof
(
mbi
)
)
;
VirtualProtect
(
mbi
.
BaseAddress
,
mbi
.
RegionSize
,
PAGE_READWRITE
,
&
mbi
.
Protect
)
;
Log
(
"Start hook."
)
;
dwOriginal
=
VTable
[
17
]
;
VTable
[
17
]
=
(
DWORD
)
hook
;
Log
(
"Finish hook."
)
;
VirtualProtect
(
mbi
.
BaseAddress
,
mbi
.
RegionSize
,
mbi
.
Protect
,
&
mbi
.
Protect
)
;
}

А нахуя? В SFAPI и так есть хук на нее
 
Ответить с цитированием

  #1613  
Старый 03.07.2016, 19:51
AWRage
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами: 5706781

Репутация: 43


По умолчанию

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

А нахуя? В SFAPI и так есть хук на нее
Странно просто. Такой же код, в одном плагине работает, во втором нет.
 
Ответить с цитированием

  #1614  
Старый 03.07.2016, 20:09
ЯedЯuM
Участник форума
Регистрация: 13.03.2016
Сообщений: 242
С нами: 5351007

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

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

reserWriteOffset();
ignorebits(8);
write(senderID);
Write((PCHAR)&psSync, sizeof(psSync));
Не перезаписывает оно входящий битстрим(( В итоге ничего не происходит.

C++:





Код:
hook
->
bitStream
->
ResetWritePointer
(
)
;
hook
->
bitStream
->
IgnoreBits
(
8
)
;
hook
->
bitStream
->
Write
(
SenderID
)
;
hook
->
bitStream
->
Write
(
(
PCHAR
)
&
psSync
,
sizeof
(
psSync
)
)
;
 
Ответить с цитированием

  #1615  
Старый 03.07.2016, 22:02
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Пробуй читать ид пакета и записывать его тоже. Игнорирование прийдется убрать.
 
Ответить с цитированием

  #1616  
Старый 04.07.2016, 00:38
QGate
Познающий
Регистрация: 27.03.2016
Сообщений: 78
С нами: 5331145

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

Как можно снизить вес SF плагина?
 
Ответить с цитированием

  #1617  
Старый 04.07.2016, 01:16
NarutoUA
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами: 6822856

Репутация: 213


По умолчанию

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

Как можно снизить вес SF плагина?
UPX
 
Ответить с цитированием

  #1618  
Старый 04.07.2016, 01:27
QGate
Познающий
Регистрация: 27.03.2016
Сообщений: 78
С нами: 5331145

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

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

UPX
Разве он подойдет для плагинов SF?
 
Ответить с цитированием

  #1619  
Старый 04.07.2016, 01:27
NarutoUA
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами: 6822856

Репутация: 213


По умолчанию

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

Разве он подойдет для плагинов SF?
Разве принято задавать мне тупые вопросы?
 
Ответить с цитированием

  #1620  
Старый 04.07.2016, 18:23
barspinoff
Участник форума
Регистрация: 14.06.2015
Сообщений: 126
С нами: 5744580

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

помогите с кодом

никак не могу gui доделать - самп крашит

C++:





Код:
bool
CALLBACK
incomingRPC
(
stRakNetHookParams
*
params
)
{
if
(
params
->
packetId
==
RPC_ClickTextDraw
)
{
void
*
pointer
;
char
*
text
;
WORD TextDrawID
;
char
*
settext
=
"Settings"
;
params
->
Read
(
TextDrawID
)
;
params
->
ResetReadPointer
(
)
;
stSAMP
*
samp
=
SF
->
getSAMP
(
)
->
getInfo
(
)
;
pointer
=
(
SAMP
->
pPools
->
pTextdraw
)
+
0x2400
+
4
*
TextDrawID
;
text
=
*
(
char
*
*
)
addr
;
if
(
strcmp
(
settext
,
text
)
!=
0
)
{
//...
}
}
}
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.