Hi !

Moim marzeniem jest założenie globalnego hooka który odbierał by pewne eventy nt. okien, chodzi tu o hooka CBT.

Hook jest ładowany i aplikowany pomyslnie (z dll'ki) problem polega jednak na tym, że zbiera informacje wyłącznie z okna (z procesu), z którego został założony.

Kod wydaje sie być poprawny, no ale skoro nie działa to znaczy że gdzieś ktoś pogrzebał w nim psa.

	
if(RegisterShellHookWindow(window.hwnd) == FALSE)
		MessageBox(0, "ojee", "", 0);
	
	HMODULE module = LoadLibrary("windowHookDLL.dll");

	procAdress = (HOOKPROC)GetProcAddress(module, "_Proc@12");

	HHOOK ret = SetWindowsHookEx(WH_CBT, procAdress, module, 0);

	NewParent(window.hwnd);

To jeszcze może kod z dll'ki

LRESULT CALLBACK Proc(int nCode, WPARAM wParam, LPARAM lParam)
{
	if(parent != 0)
	{
		if(nCode == HCBT_CREATEWND)
			SendMessage(parent, WM_NEWWINDOW, wParam, lParam);
		if(nCode = HCBT_DESTROYWND)
			SendMessage(parent, WM_CLOSINGWINDOW, wParam, lParam);

	}
}

parent - to uchwyt okna do którego docelowo mają być wysyłane komunikaty z systemu, określany funkcją NewParent();

Jakieś pomysły, sugestie ?