回 帖 发 新 帖 刷新版面

主题:hook的一些问题 ++分

最近想在.net环境下(C#/vb)

做个hook 来替换/屏蔽指定应用程序(比如word)的一些菜单功能(比如干掉另存为项)

因为平时很少接触api 

请高手给提供个思路,有相关事例最好了 用什么语言编写的都可以

谢谢

回复列表 (共2个回复)

沙发

用VC
用哪个LRESULT CALLBACK MouseProc(
  int nCode,      // hook code
  WPARAM wParam,  // message identifier
  LPARAM lParam   // mouse coordinates
);

在它里面得到当前窗口的名字
如果是“另寸为”直接返回
就OK了

板凳

LRESULT CALLBACK MouseProc( int nCode, WPARAM wParam, LPARAM lParam)
{
    if (nCode == HC_ACTION)
    {
        MOUSEHOOKSTRUCT *p = (MOUSEHOOKSTRUCT *)lParam;
        CString name;
        CWnd *pWnd = CWnd::FromHandle(p->hwnd);
        pWnd->GetWindowText(name);
                  //你用SPY++查查菜单项看是什么格式的
                    在做
    }

    return CallNextHookEx(g_hook, nCode, wParam, lParam);
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册