Wiki: Example 7 Step 1b

WARNING: Wiki content is an archive, no promise about quality!

Please choose a tutorial page:


You may find this function useful. I won't be using function pointers since they're a little more confusing.

#include <stdio.h>
#include <windows.h>

typedef void (__fastcall *fcnShowMessage) (const char* message, int unk, int intDisplayUntil, int unk0);
static const fcnShowMessage ShowMessage = (fcnShowMessage) 0x00469380;

BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
    switch(ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        ShowMessage("\x03Loading test plugin v2", 0, GetTickCount() + 30000, 0);
        break;

    case DLL_PROCESS_DETACH:
        ShowMessage("\x03Loading test plugin v2", 0, GetTickCount() + 30000, 0);
        break;
    }

    return TRUE;
}

Category: Assembly Examples