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

CleanLegend

Известный
Всефорумный модератор
477
935
пацаны как хукать wndproc до сампа, чтоб можно было отменить ввод в чат например, самп быстрее чем я походу хукает, есть варик Lowlevel kbd hook, но я не хочу его ставить
мой хук
C++:
    D3DDEVICE_CREATION_PARAMETERS d3dcp;
    pGame->GetDevice()->GetCreationParameters(&d3dcp);

    OrigWndProc = (WNDPROC)SetWindowLongPtr(d3dcp.hFocusWindow, GWL_WNDPROC, (LONG)(LONG_PTR)funcWndProc);
можешь хукать WndProc gta_sa или samp, сюда выкладывали адрес или посмотри в других сурсах читов
 

PanSeek

t.me/dailypanseek
Всефорумный модератор
908
1,775
Можно ли как-то оставлять или пересылать ImGui::BeginTabItem?
Как для теста, самое основное:
C++:
bool test = false;
__int32 test2 = 0;
// frame
if (ImGui::BeginTabItem(test ? "One" : "Two")) {
    ImGui::Text("Text");
    ImGui::EndTabItem();
}
if (ImGui::BeginTabItem("Testing")) {
    if (ImGui::RadioButton("One", &test2, 0)) {
        test = true;
    } ImGui::SameLine();
    if (ImGui::RadioButton("Two", &test2, 1)) {
        test = false;
    } ImGui::SameLine();
    ImGui::EndTabItem();
}
После переключения RadioButton'а кидает на первый (в позиции) TabItem, а не на "Testing", можно ли как-то чтобы всегда было на "Testing" при обращении к этим RadioButton'ам?
 
  • Нравится
Реакции: James Saula

legendabrn

Известный
Проверенный
120
170
как на плюсах подменить структуру из памяти, на свою?
 

legendabrn

Известный
Проверенный
120
170
Так же, как и любое значение из памяти, через reinterpret_cast, наверно.
Код:
#pragma pack(push, 1)
struct CAR_MOD_INFO
{
    int test;
} mTest[24];
#pragma pack(pop)

*reinterpret_cast<uintptr_tr*>(0xABCFFF + 0xAB) = *reinterpret_cast<uintptr_t*>(&mTest[1]);
пытался таким способом, безуспешно
 

legendabrn

Известный
Проверенный
120
170
Лучше опиши всю задачу, что тебе надо сделать
В структуре хранится переменная типа char, но она позволяет хранить значения до 255, я подумал а почему бы не заменить на свою структуру с int и все будет заебумба))
Просмотрев в IDA где используется данная структура, на работоспособность никак не должна повлиять
Попробуй так *reinterpret_cast<CAR_MOD_INFO**>(addr) = &mTest[1];
не работает
 

.deserve

Участник
32
36
В структуре хранится переменная типа char, но она позволяет хранить значения до 255, я подумал а почему бы не заменить на свою структуру с int и все будет заебумба))
Просмотрев в IDA где используется данная структура, на работоспособность никак не должна повлиять

не работает
Проверь защиту страницы памяти по этому адресу.
Если это адрес структуры, то ты не сможешь поменять структуру по нему, т.к выравнивание по границам страниц похерится.
А если это адрес указателя, то ты можешь записать в него адрес начала своей структуры и читать оттуда по 4 байта. Но всё остальное всё равно будет читать оттуда по 1 байту. При этом, если у тебя будет прямой порядок байт (big endian), то когда по этому адресу будут читать 1 байт, то будет читаться старший байт из 4 байтового целочисленного типа. А если little endian, как на большинстве x86, то всё будет ок: младший байт и будет первым.

И еще мне не понятно: нахера тебе для этой структуры выравнивание упаковки в 1 байт, если у тебя там 1 4 байтовый мембер. А по дефолту выравнивание стоит на 8 байт.
 
  • Нравится
Реакции: etereon и legendabrn

PawnHelp

Новичок
6
0
Всем приветик, помогите решить проблему с сервер коннектом
1631130364177.png

Код:
#define SAMP_CHAT_INFO_OFFSET 0x26E8C8
#define SAMP_FUNC_ADDTOCHATWND 0x67460

SAMPBase *pSAMP;

void mainThread(void *pvParams)
{
    if (pSAMP)
    {
        while (!pSAMP->tryInit())
            Sleep(100);

        while (!pSAMP->isInited)
            continue;
        strcpy(pSAMP->getInfo()->m_szHostAddress, "217.106.106.86");
        pSAMP->getInfo()->m_nPort = 7024;
    }
}


BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved)
{
    switch (dwReasonForCall)
    {
        case DLL_PROCESS_ATTACH:
        {
            pSAMP = new SAMPBase(GetModuleHandle("samp.dll"));
            _beginthread(mainThread, NULL, NULL);
            break;
        }
    }
    return TRUE;
}
 

AdCKuY_DpO4uLa

Адский дрочер
Друг
317
673
Дайте адрес, который вызывается, когда самп полностю проинициализировался (структуры там всякие и т.д.), если есть
 
  • Грустно
Реакции: DarkP1xel

#Northn

Pears Project — уже запущен!
Всефорумный модератор
2,654
2,535
  • Влюблен
Реакции: AdCKuY_DpO4uLa