ghHook nu nullen hat die Lösung gebracht, ich unhooke vor dem Simulieren und hooke erst, wenn ich wirklich aufzeichnen muss.
Ich bitte dennoch um erleuchtende Worte.
EDIT: Noch eine Frage:
LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam)
{
if( nCode >= 0 && ghHook) // Wieso hat das hinzugefügte ghHook hier den interessanten Effekt, dass die Fkt nur noch Mausaktionen auf dem Programm mit der eingebundenen DLL protokolliert ?
{
MOUSEHOOKSTRUCT mhs = *(MOUSEHOOKSTRUCT*)lParam;
pHookStruct->MouseHookStruct = mhs;
LONG lPoint = MAKELONG((WORD)mhs.pt.x, (WORD)mhs.pt.y);
SendMessage(pHookStruct->hwnd, WM_MOUSEHOOK, wParam, (LPARAM)lPoint);
}
return CallNextHookEx(ghHook, nCode, wParam, lParam);
}