vc自定义消息的方法

vc自定义消息的方法,第1张

VC自定义消息的方法VC文章 2010-07-11 16:02:54 阅读2785 评论0 字号:大中小

第一步:定义消息。

#define WM_MY_MESSAGE (WM_USER+100)

第二步:实现消息处理函数。该函数使用WPRAM和LPARAM参数并返回LPESULT

LRESULT C Dlg::OnMyMsg(WPARAM wParam, LPARAM lParam)

{

return 0

}

第三步:在类头文件的AFX_MSG块中说明消息处理函数。

virtual BOOL OnInitDialog()

afx_msg void OnSysCommand(UINT nID, LPARAM lParam)

afx_msg void OnPaint()

afx_msg HCURSOR OnQueryDragIcon()

afx_msg LRESULT OnMyMsg(WPARAM, LPARAM) //复制这里

DECLARE_MESSAGE_MAP()

第四步:在用户类的消息块中,使用ON_MESSAGE宏指令将消息映射到消息处理函数中。

BEGIN_MESSAGE_MAP(C自动填表Dlg, CDialog)

ON_WM_SYSCOMMAND()

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_MESSAGE(WM_MY_MESSAGE, OnMyMsg)//复制这里

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

1.建一个windows窗体程序(用vc那个hello world就行了),并在创建的时候,去掉WM_VISIBLE标志,作为监控程序,并注册WM_DEVICECHANGEP消息的监控,然后当收到WM_DEVICECHANGEP消息的时候,发送给控制台程序。这个办法最简单。

2.用子类化,写一个dll,注入到“桌面”这个进程去,然后对“桌面”进行子类化,然后在你的dll里,注册对WM_DEVICECHANGEP消息的监控,并在你的写给“桌面”的WndProc里拦载WM_DEVICECHANGEP消息。

3.用全局的消息钩子


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11401482.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存