Другое С/С++ Вопрос - Ответ

zTechnology

Известный
1,101
486
Compile in release x86

Зачем создавать лишние файлы в проекте? Не леге отключить pch файлы -_-?
 
  • Нравится
Реакции: F0RQU1N and и kin4stat

Daurin

Потрачен
10
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Парни всем привет,такой вопрос,что можно использовать для поворота мышки на определённые координаты? mouse_event не подойдет,заранее спасибо.
 

0x73616D

Активный
140
42
How I can write this values in c++? I took it from one .lua script.

Lua:
memory.hex2bin("E865041C00", 0x53C136, 5)
memory.write(12697552, 1, 1, false)--
 

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,744
4,808
How I can write this values in c++? I took it from one .lua script.

Lua:
memory.hex2bin("E865041C00", 0x53C136, 5)
memory.write(12697552, 1, 1, false)--
C++:
void set_raw(std::uintptr_t address, const char* RawData, std::size_t size, bool protect) {
    DWORD oldProt;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), size, PAGE_READWRITE, &oldProt);
    memcpy(reinterpret_cast<void*>(address), RawData, size);
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), size, oldProt, &oldProt);
}

template <typename T>
inline void write_memory(std::uintptr_t address, T value, bool protect = true) {
    unsigned long oldProt;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), sizeof(T), PAGE_READWRITE, &oldProt);
    *reinterpret_cast<T*>(address) = value;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), sizeof(T), oldProt, &oldProt);
}

set_raw(0x53C136, "\xE8\x65\x04\x1C\x00", 5, true);
set_raw(0xC1BFD0, "\x01", 1, true); // or WriteMemory(0xC1BFD0, char(1), true);

It is also bad form to write addresses not in hex
 
Последнее редактирование:
  • Влюблен
  • Нравится
Реакции: etereon и 0x73616D
15
11
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
How I can write this values in c++? I took it from one .lua script.

Lua:
memory.hex2bin("E865041C00", 0x53C136, 5)
memory.write(12697552, 1, 1, false)--


C++:
#include "llmo/include/rwe.hpp"

llmo::rwe::Copy(0x53C136, "\xE8\x65\x04\x1C\x00", 5);
llmo::rwe::Set(0xC1BFD0, 0x01, 1);


C++:
void set_raw(std::uintptr_t address, const char* RawData, std::size_t size, bool protect) {
    DWORD oldProt;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), size, PAGE_READWRITE, &oldProt);
    memcpy(reinterpret_cast<void*>(address), RawData, size);
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), size, oldProt, &oldProt);
}

template <typename T>
inline void write_memory(std::uintptr_t address, T value, bool protect = true) {
    unsigned long oldProt;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), sizeof(T), PAGE_READWRITE, &oldProt);
    *reinterpret_cast<T*>(address) = value;
    if (protect) VirtualProtect(reinterpret_cast<void*>(address), sizeof(T), oldProt, &oldProt);
}

set_raw(0x53C136, "\xE8\x65\x04\x1C\x00", 5, true);
set_raw(0xC1BFD0, "\x01", 1, true); // or WriteMemory(0xC1BFD0, char(1), true);

It is also bad form to write addresses not in hex
Исправился, 🐞 аннулирую
 
Последнее редактирование:
  • Bug
Реакции: legendabrn

0x73616D

Активный
140
42
how can i register a command without using sampfuncs? (.ASI)

как я могу зарегистрировать команду без использования sampfuncs? (.ASI)
===========================================================

How can I write this snippet taken from .lua in C++?

Lua:
function samp.onRemoveBuilding()
    return false
end
 
Последнее редактирование:

F0RQU1N and

Известный
1,309
498
how can i register a command without using sampfuncs? (.ASI)
Как эмулировать зажатие/нажатие клавиши?