当前位置:首页 > 编程开发

ATL.SubclassWindow分析

webgou17年前 (2009-11-10)编程开发381
[B]ATL.SubclassWindow分析[/B] [template
BOOL CWindowImplBaseT< TBase, TWinTraits >::SubclassWindow(HWND hWnd)
{ BOOL result;
ATLASSUME(m_hWnd == NULL);
ATLASSERT(::IsWindow(hWnd));
// Allocate the thunk structure here, where we can fail gracefully.
//初始化this 指针与winProc result = m_thunk.Init(GetWindowProc(), this);
if (result == FALSE)
{ return FALSE;
} WNDPROC pProc = m_thunk.GetWNDPROC();
//取得要subclassWindwo的WinProc WNDPROC pfnWndProc = (WNDPROC)::SetWindowLongPtr(hWnd, GWLP_WNDPROC, (LONG_PTR)pProc);
if(pfnWndProc == NULL)
return FALSE;
//把取得的Windproc 去sub上 m_pfnSuperWindowProc = pfnWndProc;
//并把本身的m_hWnd 换成要sub上的hWnd m_hWnd = hWnd;
return TRUE;
}
从上面分析可以看出做的步骤有:
[B]1.sub资源上的wndProc
2.sub资源上的hWnd[/B]

扫描二维码推送至手机访问。

版权声明:本文由知了博客发布,如需转载请注明出处。

本文链接:https://www.webgou.info/?id=82

标签: vc
分享给朋友:

“ATL.SubclassWindow分析” 的相关文章

vs2005运行tcpmp遇到"SignTool Error: No certificates were found that met all the given criteria."

"SignTool Error: No certificates were found that met all the given criteria."…

android架构的理解

(Android)java虚拟机和Dalvik虚拟机的区别Google于2007年底正式发布了Android SDK, 作为 Android系统的重要特性,Dalvik虚拟机也第一次进入了人们的视野。它对内存的高效使用,和在低速CPU上表现出的高性能,确实令人刮目相看。 依赖于底层Posix兼容的操…

nutch应用

    Nutch是一个基于Lucene,类似Google的完整网络搜索引擎解决方案,基于Hadoop的分布式处理模型保证了系统的性能,类似Eclipse的插件机制保证了系统的可客户化,而且很容易集成到自己的应用之中。    Nutch 0…

从聊天到交付:我是如何使用 Codex 完成真实工作的

Codex 的价值不只是生成代码或回答问题,而是进入真实工作现场,阅读项目、调用工具、修改文件、验证结果并交付成果。本文结合实际使用过程与社区工作流,介绍如何把 Codex 当作一位可以协作、可以复核、也需要明确边界的数字同事。…

在WinCE程序开发中使用软件输入面板

简介 软件输入面板(Software Input Panel,简称SIP)是每个装备了WinCE系统的移动平台的一个基本功能。它提供给用户在PDA上进行数据输入的一种手段。当谈及SIP的时候,我们一般会想到两点:一是SIP本身,二是如何在程序中使用SIP。…

MacBook 常用快捷键

Mac OS X系统图形表示方法⇧ = shift⌃ = control⌥ = option / alt Home=fn + ◄ End=fn + ► Page Up=fn + ▲Page Down=fn + ▼ 删除后一个字符(普通键盘的Delete)=fn…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。