涂老师培训-计算机、操作系统简单知识

1.HINSTANCE和HMODULE讲解
  • HINSTANCE用于exe,HMODULE用于dll,本质上是一样的,代表的是PE模块映射到进程虚拟地址空间中的地址,这点可以通过vmmap.exe验证;
    • 我们可以固定住模块基地址,dll和exe都可以导出函数,
    • 导出函数的地址=PE在进程中映射的基地址+该函数在该PE文件里面的偏移地址。
  • dumpbin的演示,判断dll的位数(32位还是64位),导入和导出函数
    • 以此来说明Depends工具可以自己编写出来。
2.窗口类的设计、注册、显示窗口,更新窗口,消息循环

每个ui线程都有一个消息队列,GetMessage从队列中取出消息,分发到窗口类的回调函数中进行处理,当关闭窗口时,会调用DestroyWindow函数,此函数销毁窗口后,会触发PostQuitMessage,导致GetMessage收到WM_QUIT消息,为此消息循环结束,主线程终止,进程终止

3.非界面线程中创建窗口
  • 非界面线程中也能创建窗口,并且创建窗口的响应函数在该线程里面执行,这点和qt中一样。
  • qt中哪个线程创建qt object,该qt object的槽函数就在哪个线程里面执行
  • 尽量不要使用非界面线程创建窗口函数
4.MFC中的主窗口
  • win32消息中,创建多个窗口时,关闭任意一个窗口都会导致程序退出
  • 而在MFC中,对win32进行了封装,创造出主窗口的概念,只要主窗口在,程序不会退出,MFC中主窗口的名称是m_pMainWnd
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值