07/04/08 15:00:54
>>609
WM_COPYDATAメッセージは届くのですが、COPYDATASTRUCT構造体の内容の参照が上手くいきません。
フックは次のようにセットしています。
#define EXPORT __declspec (dllexport)
#pragma data_seg(".shared")
static HHOOK hHook = NULL;
static HWND hWnd = NULL;
#pragma data_seg()
EXPORT HHOOK SetHook(const HWND hCaller)
{
hWnd = hCaller;
hHook = SetWindowsHookEx(WH_MOUSE,(HOOKPROC)HookProc,hInst,0);
return hHook;
}
ウィンドウプロシージャでは次のように処理しています。
case WM_COPYDATA:
if (((PCOPYDATASTRUCT)lp)->dwData == WM_NCLBUTTONDOWN) {
pmhs = (PMOUSEHOOKSTRUCT)lp;
if (pmhs->wHitTestCode == HTCAPTION) {
SetWindowText(pmhs->hwnd,"猫でもわかるフック");
}
}
break;