Macro für Funktion
-
Hi
Ist es möglich durch ein Macro folgenden String:
int MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType)in folgende Funktion umzuwandlen:
int _stdcall MessageBoxAF(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType) { Logger::log(Formatter::format("MessageBoxA","HWND",hWnd,"LPCSTR",lpText,"LPCSTR",lpCaption,"UINT",uType,"END")); return MessageBoxAT(hWnd,lpText,lpCaption,uType); }MfG Joe
-
des is kei string,sonder int!!
-
#define MessageBoxA MessageBoxAF
Die Frage ist wie Du das Original dann aufrufen möchtest... in dem Fall #undef nicht vergessen.
API-Hooking ist eine andere Mögichkeit. John Robbins beschreibt das mit HookImportedFunctionsByName seiner Bugslayer Utilities.
-
Hi
Folgendes wäre ja möglich:
macroformat(int,MessageBoxA,HWND,hWnd,LPCSTR,lpText,LPCSTR,lpCaption,UINT,uType)Nur eben müsste ich jede API Funktion mit Kommas unterteilen, was sehr umständlich ist. Gibt es nicht die Möglichkeit einen String in einem Macro zu unterteilen?
MfG Joe