"易语言.尘土"界面库2.0版源代码分析(2):创建窗口(CreateWindow)

作者:liigo

原文链接:http://blog.csdn.net/liigo/archive/2009/06/28/4304295.aspx

转载请注明出处:http://blog.csdn.net/liigo

liigo: "易语言.尘土"界面库2.0版源代码分析系列

 

  我们都知道,在Windows操作系统下,几乎所有的窗口和窗口组件都是由API函数CreateWindow/CreateWindowEx创建出来的。所以我(liigo)拿到“易语言.尘土”界面库2.0版源代码之后,二话不说,迫不及待的在易语言中全文搜索“CreateWindow”(编辑->整体搜寻,快捷键: Alt+E+E)。共得到两个搜索结果:一个是对CreateWindowExA函数的DLL声明,一个是对它的调用(在易语言类方法“_窗口基类._创建()”中)。下面我的视线当然聚焦于“_窗口基类._创建()”:

BaseWindow_Create 

 

  这个函数,“_窗口基类._创建()”,就是“易语言.尘土”界面库源头,如长江之水,源于唐古拉山脉之沱沱河,涓涓溪流终汇成大河。以此为突破口,寻根问结,或许可以一览类库之骨架。

  通过全文搜索“_窗口基类._创建”,发现调用它的地方有三处:“_窗口.创建”,“_组件基类._创建组件”,“_多文档窗口.创建”。“_组件基类”是所有组件的基类,也就是说,所有组件都是通过“_组件基类._创建组件”创建出来的,最终还是归结于“_窗口基类._创建”。所以,说“_窗口基类._创建”是整个类库整体机制的基石,应该是不会错的。

  先大致浏览一下上面的代码吧,哦,以“CreateWindowExA”为核心,前面是“__监控窗口创建”,后面是卸载全局钩子(Hook)。直观推测的话,这个钩子应该是在“__监控窗口创建”中创建的吧?从函数命名来看,其功能相当明确,就是“监控窗口创建”(中文编程的优势在这里体现出来了,不需要多余的注释),那它内部具体做了些什么工作呢?这些工作是否跟窗口消息(Windows Message)有关呢?

  我一上来就找“CreateWindow”,但找到了创建窗口并不是最终目标,我(liigo)其实是想通过“CreateWindow”找到窗口的消息处理函数(WNDPROC,WndProc),进而得窥整个类库的消息处理机制。那么,窗口的消息处理函数(WndProc)在哪儿呢?且看下文分解。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
易语言网络验证系统v2.0是一个用易语言编写的网络验证系统的更新本。网络验证系统顾名思义就是用于验证网络上的用户身份和权限的系统。 v2.0相较于之前本的主要更新点如下: 1.安全性提升:采用更加安全的算法和加密技术,保证用户的身份和数据的安全性。防止非法用户的入侵和数据泄露。 2.功能增强:新增了一些功能,如用户注册、密码找回等。用户可以通过注册来获取账号和密码,忘记密码时可以通过找回密码功能重新设置密码。 3.界面优化:优化了系统的界面和用户交互体验,使操作更加简便直观。用户可以通过界面进行各种操作,如登录、注册、找回密码等。 4.性能改进:系统的性能得到了改进,运行更加流畅稳定。减少了系统崩溃和运行卡顿的情况,提高了用户的使用体验。 5.错误处理:针对可能出现的错误进行了详细的错误处理,用户能够得到相应的错误提示,方便用户快速解决问题。 6.状态监控:新增了状态监控功能,管理员可以通过监控系统的状态来实时了解系统的运行情况,并做出相应的调整。 综上所述,易语言网络验证系统v2.0相较于之前本在安全性、功能、界面、性能、错误处理和状态监控等方面都进行了改进和优化,使系统更加安全可靠、功能更加强大、操作更加简便、用户体验更好。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值