 |
|

31.01.2021, 10:37
|
|
Флудер
Регистрация: 17.06.2013
Сообщений: 3,635
С нами:
6791977
Репутация:
183
|
|
Сообщение от SR_team
Зачем использовать auto ... -> type вне лямбд?
Тупо чтобы везде придерживаться одного стиля
|
|
|

04.02.2021, 17:25
|
|
Постоянный
Регистрация: 17.01.2014
Сообщений: 493
С нами:
6483143
Репутация:
93
|
|
Ребят, меня тралит компилятор, помогите
Есть функция, чья задача, это при вызове получить аргументы, отправленные в MessageBoxA, и позволить их изменить
Эта функция корректно отображает аргументы, т.е. всё перехватывается
C++:
Код:
__declspec
(
naked
)
void
_stdcall
printSomeShit
(
int
a
,
char
*
b
,
char
*
c
,
int
d
)
{
char
bb
[
256
]
;
char
cc
[
256
]
;
printf
(
"\n"
)
;
std
::
cin
>>
bb
;
b
=
bb
;
printf
(
"\n"
)
;
std
::
cin
>>
cc
;
c
=
cc
;
printf
(
"\n%d || %s || %s || %d"
,
a
,
b
,
c
,
d
)
;
_asm ret
;
}
Однако же попытки присваивания не меняют значение аргументов, хотя если в отладчике студии свапнуть адреса, то всё сработает
Я решил посмотреть, что делает в этом случае компилятор, и вот:
То-есть, он вообще ничего не делает. Он буквально проигнорировал b = bb и не прописал ей инструкций. В смысле? Почему?
Если же попытаться написать &b == &bb, то он даже компилировать программу откажется.
Я не понимаю, что тут происходит ,_,
|
|
|

04.02.2021, 18:34
|
|
Флудер
Регистрация: 10.08.2017
Сообщений: 2,659
С нами:
4609424
Репутация:
183
|
|
Сообщение от ishi
Ребят, меня тралит компилятор, помогите
Есть функция, чья задача, это при вызове получить аргументы, отправленные в MessageBoxA, и позволить их изменить
Эта функция корректно отображает аргументы, т.е. всё перехватывается
C++:
Код:
__declspec
(
naked
)
void
_stdcall
printSomeShit
(
int
a
,
char
*
b
,
char
*
c
,
int
d
)
{
char
bb
[
256
]
;
char
cc
[
256
]
;
printf
(
"\n"
)
;
std
::
cin
>>
bb
;
b
=
bb
;
printf
(
"\n"
)
;
std
::
cin
>>
cc
;
c
=
cc
;
printf
(
"\n%d || %s || %s || %d"
,
a
,
b
,
c
,
d
)
;
_asm ret
;
}
Однако же попытки присваивания не меняют значение аргументов, хотя если в отладчике студии свапнуть адреса, то всё сработает
Я решил посмотреть, что делает в этом случае компилятор, и вот:
То-есть, он вообще ничего не делает. Он буквально проигнорировал b = bb и не прописал ей инструкций. В смысле? Почему?
Если же попытаться написать &b == &bb, то он даже компилировать программу откажется.
Я не понимаю, что тут происходит ,_,
ну у тебя как минимум __declspec(naked) а ты объявляешь переменные внутри функции
прибавь к ним static (static char) и проверь, как себя поведёт
мсвс запрещает вообще внутри функций объявлять переменные (не static), значит у тебя не мсвс
|
|
|

10.02.2021, 18:35
|
|
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами:
3174020
Репутация:
213
|
|
Можно ли как-то подменинить функцию хука на пустышку которая вызывает трамплин, чтобы не прервать цепочку вызовов и не поломать чужие хуки и игру?
|
|
|

10.02.2021, 18:49
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от SC6UT
Можно ли как-то подменинить функцию хука на пустышку которая вызывает трамплин, чтобы не прервать цепочку вызовов и не поломать чужие хуки и игру?
можно, я так и делаю в своих хуках
|
|
|

10.02.2021, 20:31
|
|
Новичок
Регистрация: 07.02.2021
Сообщений: 9
С нами:
2770746
Репутация:
3
|
|
Здравствуйте, прошу прощения за оффтоп, это самая близкая по смыслу тема. Хочу сделать что-то типа ракбота, только для другой цели. Есть ли на C#/C/C++ библиотека, позволяющая имитировать клиент сампа и заходить в него?)
|
|
|

10.02.2021, 20:34
|
|
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами:
4483143
Репутация:
183
|
|
Сообщение от ISYS Tools
Здравствуйте, прошу прощения за оффтоп, это самая близкая по смыслу тема. Хочу сделать что-то типа ракбота, только для другой цели. Есть ли на C#/C/C++ библиотека, позволяющая имитировать клиент сампа и заходить в него?)
RakSAMP
Код там конечно не очень, но на его основе написан ракбот. Думаю для изучения принципа работы подойдет
|
|
|

12.02.2021, 17:38
|
|
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами:
3174020
Репутация:
213
|
|
как проиграть звук через bass.lib в определенной позиции?
|
|
|

12.02.2021, 23:55
|
|
Участник форума
Регистрация: 21.01.2020
Сообщений: 123
С нами:
3322808
Репутация:
78
|
|
Не могу изменить значение, не понимаю
Код:
Код:
void functions()
{
if (Mouse_Fix)
{
float x;
float y;
ReadProcessMemory(handle, (PBYTE*)0xB6EC1C, &x, 4, 0);
ReadProcessMemory(handle, (PBYTE*)0xB6EC18, &y, 4, 0);
{
WriteProcessMemory(handle, (LPVOID)0xB6EC18, &x, 4, 0);
}
}
}
|
|
|

14.02.2021, 12:09
|
|
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами:
3174020
Репутация:
213
|
|
попробовал проиграть звук в позиции игрока по айди через bass.lib, но не работает, то есть звук проигрывается, но не в позиции игрока. может кто-то знает как исправить?
C++:
Код:
float
*
pos
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
GetOnFootData
(
wPlayerID
)
->
fPosition
;
BASS_ChannelSet3DAttributes
(
stream
,
BASS_3DMODE_NORMAL
,
0.0f
,
0.0f
,
-
1
,
-
1
,
-
1
)
;
BASS_Apply3D
(
)
;
BASS_ChannelSet3DPosition
(
stream
,
new
BASS_3DVECTOR
(
pos
[
0
]
,
pos
[
1
]
,
pos
[
2
]
)
,
NULL
,
NULL
)
;
BASS_Apply3D
(
)
;
BASS_ChannelPlay
(
stream
,
TRUE
)
;
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|