Вопрос Ссылка на неразрешенный внешний символ "unsigned long __cdecl z5(void *)" (?z5@@YAKPEAX@Z) в функции DllMain.

  • Автор темы Автор темы Isvqqq
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
1 Ноя 2024
Сообщения
13
Реакции
0
"ссылка на неразрешенный внешний символ "unsigned long __cdecl z5(void *)" (?z5@@YAKPEAX@Z) в функции DllMain." Выдает такую ошибку, хотя вроде все нормально.
hook.cpp
C++:
Expand Collapse Copy
#include <d3d9.h>
#include <Windows.h>
#include <mutex>
#include "MinHook.h"
#include "imgui.h"
#include "imgui_impl_win32.h"
#include "imgui_impl_dx9.h"
#include "esp.hpp"
#include "imgui_menu.hpp"
#include "xorstr.hpp"

typedef HRESULT(__stdcall* t7)(LPDIRECT3DDEVICE9);
t7 y7 = nullptr;
HWND w7 = nullptr;
std::mutex mtx;

HRESULT __stdcall z3(LPDIRECT3DDEVICE9 pDevice) {
    std::lock_guard<std::mutex> lock(mtx);

    static bool x1 = false;
    if (!x1) {
        IMGUI_CHECKVERSION();
        ImGui::CreateContext();
        w7 = FindWindowA(XORSTR("Qt5QWindowIcon"), nullptr);
        ImGui_ImplWin32_Init(w7);
        ImGui_ImplDX9_Init(pDevice);
        x1 = true;
    }

    ImGui_ImplDX9_NewFrame();
    ImGui_ImplWin32_NewFrame();
    ImGui::NewFrame();
    z1();
    z2();
    ImGui::EndFrame();
    ImGui::Render();
    ImGui_ImplDX9_RenderDrawData(ImGui::GetDrawData());
    return y7(pDevice);
}

DWORD WINAPI z5(LPVOID lpParam) {
    WNDCLASSEXA wc = { sizeof(WNDCLASSEXA), CS_CLASSDC, DefWindowProcA,0,0,GetModuleHandle(NULL),NULL,NULL,NULL,NULL, XORSTR("DX"), NULL };
    RegisterClassExA(&wc);
    HWND hWnd = CreateWindowA(XORSTR("DX"), NULL, WS_OVERLAPPEDWINDOW, 100, 100, 300, 300, NULL, NULL, wc.hInstance, NULL);

    LPDIRECT3D9 pD3D = Direct3DCreate9(D3D_SDK_VERSION);
    D3DPRESENT_PARAMETERS d3dpp = {};
    d3dpp.Windowed = TRUE;
    d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
    d3dpp.hDeviceWindow = hWnd;

    LPDIRECT3DDEVICE9 pDev = nullptr;
    if (pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
        D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &pDev) == D3D_OK) {

        void** vtable = *reinterpret_cast<void***>(pDev);
        MH_Initialize();
        MH_CreateHook(vtable[42], z3, reinterpret_cast<void**>(&y7));
        MH_EnableHook(vtable[42]);
        pDev->Release();
    }
    pD3D->Release();
    DestroyWindow(hWnd);
    UnregisterClassA(XORSTR("DX"), wc.hInstance);
    return 0;
}
dllmain.cpp
C++:
Expand Collapse Copy
#include <Windows.h>
DWORD WINAPI z5(LPVOID lpParam);
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID) {
    if (ul_reason_for_call == DLL_PROCESS_ATTACH) {
        DisableThreadLibraryCalls(hModule);
        CreateThread(nullptr, 0, z5, hModule, 0, nullptr);
    }
    return TRUE;
}

1750621959576.png

Почему так может быть?
1750621985453.png
 
дай анидеск под хайд, помогу
 
Последнее редактирование:
Назад
Сверху Снизу