加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于winform 屏蔽FLASH界面鼠标右键的问题

发布时间:2020-12-15 18:14:06 所属栏目:百科 来源:网络整理
导读:最近测试提出问题,要求屏蔽FLASH界面的鼠标右键,经过验证以下方法可行: 在文件里添加以下代码: private const int GWL_WNDPROC = -4; ??????? public delegate IntPtr FlaWndProc(IntPtr hWnd,int msg,IntPtr wParam,IntPtr lParam); ??????? private In

最近测试提出问题,要求屏蔽FLASH界面的鼠标右键,经过验证以下方法可行:

在文件里添加以下代码:

private const int GWL_WNDPROC = -4;
??????? public delegate IntPtr FlaWndProc(IntPtr hWnd,int msg,IntPtr wParam,IntPtr lParam);

??????? private IntPtr OldWndProc = IntPtr.Zero;
??????? private FlaWndProc Wpr = null;

??????? [DllImport("user32.dll",CharSet = CharSet.Auto)]
??????? public static extern IntPtr SetWindowLong(IntPtr hWnd,int nIndex,FlaWndProc wndProc);
??????? [DllImport("user32.dll",CharSet = CharSet.Auto)]
??????? public static extern IntPtr CallWindowProc(IntPtr wndProc,IntPtr hWnd,IntPtr lParam);

??????? private IntPtr FlashWndProc(IntPtr hWnd,IntPtr lParam)
??????? {
??????????? if (msg == 516)
??????????????? return (IntPtr)0;
??????????? return CallWindowProc(OldWndProc,hWnd,msg,wParam,lParam);
??????? }

在load函数里添加:

?????????? this.Wpr = new FlaWndProc(this.FlashWndProc);
??????????? this.OldWndProc = SetWindowLong(axShockwaveFlash1.Handle,GWL_WNDPROC,Wpr);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读