Unload для индиги

ROAD TO THE LEGEND
Забаненный
Статус
Оффлайн
Регистрация
7 Фев 2018
Сообщения
2,194
Реакции[?]
714
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Начинающий
Статус
Оффлайн
Регистрация
21 Дек 2018
Сообщения
47
Реакции[?]
1
Поинты[?]
0
A'Kon Nevermind а если способ без краша игры?Я пытался так сделать, но все равно вылет

Код:
#include "Main.h"
#include "../RL/ReflectiveLoader.h"
#include <thread>

//[enc_string_enable /]
//[junk_enable /]
DWORD WINAPI CheatEntry(LPVOID lpThreadParameter)
{
    HMODULE hModule = (HMODULE)lpThreadParameter;

    if (Engine::Initialize())
    {
        return 0;
    }
    while (!Settings::Misc::Unload) {
        using namespace std::literals::chrono_literals;
        std::this_thread::sleep_for(1s);
    }

    Engine::Shutdown();
    std::this_thread::sleep_for(std::chrono::milliseconds(100));

    fclose((FILE*)stdin);
    fclose((FILE*)stdout);
    FreeConsole();

    FreeLibraryAndExitThread(static_cast<HMODULE>(hModule), 1);
    return 0;
}

bool threadLoop;
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved)
{
    if (fdwReason == DLL_PROCESS_ATTACH)
    {
        DisableThreadLibraryCalls(hinstDLL);

        Client::BaseDir = CSX::Utils::GetHackWorkingDirectory().c_str();


        if (Client::BaseDir.size() < 1)
        {
            Client::BaseDir = CSX::Utils::GetModuleBaseDir(hinstDLL);
        }

#if ENABLE_DEBUG_FILE == 1
        AllocConsole();
        AttachConsole(GetCurrentProcessId());
        freopen("CONIN$", "r", stdin);
        freopen("CONOUT$", "w", stdout);
        freopen("CONOUT$", "w", stderr);

        Client::LogFile = Client::BaseDir + "\\debug.log";
        DeleteFileA(Client::LogFile.c_str());
        CSX::Log::LogFile = Client::LogFile;
        printf("Client::BaseDir = %s\nClient::LogFile = %s\n", Client::BaseDir.c_str(), Client::LogFile.c_str());
        CSX::Log::Add("::Init::");

#endif

        CreateThread(0, 0, CheatEntry, hinstDLL, 0, 0);

    
            

    }
    else if (fdwReason == DLL_PROCESS_DETACH)
    {
        
        Engine::Shutdown();
        
    }

    return TRUE;
}
 
Модератор форума
Модератор
Статус
Оффлайн
Регистрация
2 Дек 2016
Сообщения
2,375
Реакции[?]
1,880
Поинты[?]
35K
Остальные хуки тоже надо анлодить :NotLikeThis:
 
nixware.cc
Эксперт
Статус
Оффлайн
Регистрация
1 Июл 2017
Сообщения
1,631
Реакции[?]
1,534
Поинты[?]
31K
C++:
    SetWindowLongPtrA(FindWindowA(XorStr("Valve001"), nullptr), GWLP_WNDPROC, reinterpret_cast<LONG_PTR>(original_proc));

    ImGui_ImplDX9_Shutdown();
 
Сверху Снизу