请问用鼠标钩子屏蔽任务栏右键菜单咋不管用呢?

danseshi 2008-07-08 07:28:08
想屏蔽掉任务栏的右键菜单,改注册表却需要重新启动
下边是用c#写的鼠标钩子,可为什么不管用呢?
只把关键部分代码放上了
在线等回答

private int MouseHookProc(int nCode, int wParam, IntPtr lParam)
{
if (nCode >= 0)
{ //MOUSEHOOKSTRUCT是定义的一个结构体
MOUSEHOOKSTRUCT msh = (MOUSEHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(MOUSEHOOKSTRUCT));
POINTAPI p = msh.pt;

if (wParam == WM_RBUTTONDOWN)
{
//rect是任务栏的矩形区域
if(rect.Contains(new Point(p.x,p.y))
return 1;
}

}
return CallNextHookEx(hHook, nCode, wParam, lParam);
}
...全文
83 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
danseshi 2008-07-10
  • 打赏
  • 举报
回复
居然没人理
自己解决了
应改为
if (wParam == WM_RBUTTONDOWN || wParam == WM_RBUTTONUP )
{
//rect是任务栏的矩形区域
if(rect.Contains(new Point(p.x,p.y))
return 1;
}

原来是接收到鼠标释放消息的时候才会弹出右键菜单

110,024

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧