SetWindowHookEx 做消息响应
- HHOOK g_Hook = NULL;
- LRESULT CALLBACK CallWndProc(
- _In_ int nCode,
- _In_ WPARAM wParam,
- _In_ LPARAM lParam
- )
- {
- CWPSTRUCT * pMsg = (CWPSTRUCT*) lParam;
- if(pMsg->message == 0x500)
- {
- TCHAR szDebugMsg[] = {};
- _stprintf_s(szDebugMsg,_T("我的消息 消息内容:%s\n"),
- (TCHAR*)pMsg->wParam);
- OutputDebugString(szDebugMsg);
- }
- return CallNextHookEx(g_Hook,nCode,wParam,lParam);
- }
- void CTestHookWindowProcedureDlg::OnBnClickedButton1()
- {
- // TODO: 在此添加控件通知处理程序代码
- g_Hook = ::SetWindowsHookEx(WH_CALLWNDPROC,CallWndProc,::GetModuleHandle(NULL),::GetCurrentThreadId());
- if(g_Hook == NULL)
- {
- TCHAR szError[] = {};
- _stprintf_s(szError,_T("Error:%d"),::GetLastError());
- AfxMessageBox(szError);
- }
- }
- UINT __cdecl MyControllingFunction( LPVOID pParam )
- {
- HWND hWnd = ((CTestHookWindowProcedureDlg*)pParam)->m_hWnd;
- while()
- {
- TCHAR szBuf[] = _T("张东升");
- OutputDebugString(_T("发送前\n"));
- ::SendMessage(hWnd,0x500,(WPARAM)szBuf,);
- OutputDebugString(_T("发送后\n"));
- Sleep();
- }
- }
- void CTestHookWindowProcedureDlg::OnBnClickedButton2()
- {
- // TODO: 在此添加控件通知处理程序代码
- AfxBeginThread(MyControllingFunction,this);
- }
SetWindowHookEx 做消息响应的更多相关文章
- MFC消息响应机制 q
MFC消息响应机制分析 1 引言微软公司提供的MFC基本类库(Microsoft Foundation Classes),是进行可视化编程时使用最为流行的一个类 库.MFC封装了大部分Windows ...
- 为duilib的MenuDemo增加消息响应,优化代码和显示效果
转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/38253297 第一部分 我在前一段时间研究了怎么制作duilib的菜单, ...
- MFC消息响应机制分析
---- 摘要: ---- MFC是Windows下程序设计的最流行的一个类库,但是该类库比较庞杂,尤其是它的消息映射机制,更是涉及到很多低层的东西,我们在这里,对它的整个消息映射机制进行了系统的分析 ...
- MFC---简介、编码、结构和消息响应
MFC简介 MFC是微软基础类库的简称,是微软公司实现的一个c++类库,主要封装了大部分的windows API函数 在MFC中,可以直接调用 windows API,同时需要引用对应的头文件或库文件 ...
- 2013 duilib入门简明教程 -- 事件处理和消息响应 (17)
界面的显示方面就都讲完啦,下面来介绍下控件的响应. 前面的教程只讲了按钮和Tab的响应,即在Notify函数里处理.其实duilib还提供了另外一种响应的方法,即消息映射DUI_BEG ...
- MFC中消息响应机制
由于视类窗口始终覆盖在框架类窗口之上,因此所有操作,包括鼠标单击.鼠标移动等操作都只能由视类窗口捕获.一个MFC消息响应函数在程序中有三处相关信息:函数原型.函数实现和以及用来关联消息和消息响应函数的 ...
- MFC动态按钮的创建及其消息响应(自定义消息)
动态按钮(多个)的创建: 1.在类中声明并定义按钮控件的ID #define IDC_D_BTN 10000 2.在类的OnInitDialog()函数中动态创建按钮(建立按钮对象时最好建立对象的指针 ...
- MFC动态按钮的创建及其消息响应 和 自定义消息
原文链接: http://www.cnblogs.com/gaohongchen01/p/4046525.html 动态按钮(多个)的创建: 1.在类中声明并定义按钮控件的ID #define IDC ...
- (bmp格式)用CDialog的OnCtlColor()消息响应处理背景画刷。
(bmp格式)用CDialog的OnCtlColor()消息响应处理背景画刷. 加载位图资源IDB_BITMAP1,在Dlg类头文件中加入: CBrush m_brush; 在OnInitDialog ...
随机推荐
- .net web弹出对话框
Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('请输入 ...
- Main函数参数argc,argv说明
C/C++语言中的main函数,经常带有参数argc,argv,如下: int main(int argc, char** argv) int main(int argc, char* argv[]) ...
- Javascript动态加载Html元素到页面Dom文档结构时执行顺序的不同
我们有时会通过ajax动态获取一段Html代码,并且将这段代码通过javascript放到页面的Dom结构中去. 而很多时候通过ajax动态获取的Html代码中也包含javascript代码,有一点需 ...
- 50136142WXY的百度地图
50136142WXY的百度地图 [试题描述] 社团里的WXY童鞋今天要出去旅游啦(他现在在北京为1号城市),决定去朝鲜平壤(N号城市).但是很穷的WXY没有钱坐飞机,只好坐汽车去朝鲜了.但是车上的百 ...
- android简单的夜间模式
现在android项目values下打 attrs.xml <?xml version="1.0" encoding="utf-8"?> <r ...
- oracle 自动关闭 数据库连接
数据库启动后过一会自动断开连接(大概10分钟) 方法一.直接修改资源配置文件 分三个步骤在sqlplus环境下完成. 第一步,查询资源文件,找到CONNECT_TIME所在的pr ...
- readonly/disable input 问题
Perhapes for surity, in chrome and IE10, readonly/disabled input will be reset when the form submit. ...
- Hadoop集群管理之配置文件
一.配置文件列表如下: [hadoop@node1 conf]$ pwd /app/hadoop/conf [hadoop@node1 conf]$ echo $HADOOP_HOME /app/ha ...
- [团队项目2.0]软件改进分析MathAPP
软件改进分析 在此基础上,进行软件的改进. 首先,我们把这个软件理解成一个投入市场的.帮助小朋友进行算术运算练习的APP. 从质量保证的角度,有哪些需要改进的BUG? 从用户的角度(把自己当成小学生或 ...
- handler以及AnyscTask处理机制
1.Handler 主文件:MainActivity.java package com.example.asynctaskdownload; import java.io.IOException; i ...