1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
// ställer in haka VERIFIERA (CFuncInAPIHook:: Anföra som exempel () .HookFunction (_T (”user32.dll”), _T (”MessageBoxW”), AfxGetInstanceHandle (), &MyMessageBox (PROC))); // utbytestillvägagångssätt int WINAPI MyMessageBox (HWND-hWnd, LPCTSTR-lpText, LPCTSTR-lpCaption, UINT-uType ) { // fungerar pekaren måste ha samma kallande regel som PROC (WINAPI)! Prepend WINAPI (__stdcall), därför! typedef int (WINAPI-*MESSAGEBOX_FUNC) (HWND, LPCTSTR, LPCTSTR, UINT); // hämtar endast den original- funktionen tilltalar en gång! pFunc för statisk elektricitet MESSAGEBOX_FUNC = (MESSAGEBOX_FUNC) CFuncInAPIHook:: Anföra som exempel () .RetrieveOriginalAPIFunctionAddress (_T (”user32.dll”), _T (”MessageBoxW”)); PÅSTÅ (pFunc); gå pFunc tillbaka? (*pFunc) (hWnd, _T (”jag har hakat denna appell! ”), lpCaption, uType): 0; } // denna ska appell hakas :: OGILTIGA MessageBox (, _T (""), _T (”titeln”), MB_OK);