收藏 分享(赏)

2023年WINDOWS应用程序历险记.docx

上传人:g****t 文档编号:1101384 上传时间:2023-04-18 格式:DOCX 页数:3 大小:19.99KB
下载 相关 举报
2023年WINDOWS应用程序历险记.docx_第1页
第1页 / 共3页
2023年WINDOWS应用程序历险记.docx_第2页
第2页 / 共3页
2023年WINDOWS应用程序历险记.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、天道酬勤应用程序历险记理解Windows应用程序的结构和工作原理,不只对Windows程序员来说至关重要,对一般的用户,也有助于他们更好地使用软件,并有助于解决一些应用软件故障。 资源管理器explorer.exe在Windows系统中担任Shell外壳一职,他每天监视着主人用户的一举一动,对主人发出的各种指令做出解释,然后通知操作系统来完成操作。这天,资源管理器正想打个盹,突然发现主人用鼠标双击了一个名为FirstVC.exe的程序本文最后提供了这一程序的创立过程,并在博墅:/fly2spring.blog.cfan上提供这一程序及完整源代码的查询下载,他知道自己又有得忙了。1Windows

2、通过Shell调用程序资源管理器首先调用CreateProcess函数激活FirstVC.exe,为它生成一个进程,并为这一进程划出一块专门的活动场地一个4GB地址空间。接着通过加载器把FirstVC.exe所需要的程序代码、数据、动态链接函数库DLL等程序运行必备“物资都装载到这个专用空间中。注意,进程只是一个活动空间,系统还需要为这个进程创立一个主线程,才能被CPU调用。2调用入口函数WinMain万事俱备,接着系统通过启动代码开始调用FirstVC.exe的WinMain_tWinMain函数。各位注意了,这个WinMain可是所有普通Windows程序的门户入口函数,它类似于C/C+程

3、序中的Main函数。3注册窗口类WinMain做的第一件事是找到Windows:Windows先生,我是FirstVC.exe,要在您这登记一下。Windows给了他一张表格,FirstVC.exe开始认真填写起来:ATOM MyRegisterClass(HINSTANCE hInstance) /通过填写WNDCLASSEX结构,给定程序窗口的大小、菜单、图标,关联调用的过程函数等等。. 4创立窗口实例Windows登记完这些信息,马上就调用CreateWindow函数为FirstVC.exe创立了一个临时档案,接着又通过ShowWindow函数显示出FirstVC.exe主窗口。BOOL

4、 InitInstance(HINSTANCE hInstance, int nCmdShow) hWnd = CreateWindow(.);ShowWindow(hWnd, nCmdShow);UpdateWindow(hWnd);5创立窗口消息循环FirstVC.exe看到自己的主窗口终于显示在桌面上,冲动得不知做什么好了。见多不怪的Windows慢条斯理地说:小伙子,我已经给你配了一个程序专用邮箱,别忘了收信哦。FirstVC.exe赶紧又雇了两个函数日夜巡视邮箱,这就是所谓的“消息循环:while (GetMessage(&msg, NULL, 0, 0) TranslateMess

5、age(&msg);DispatchMessage(&msg);FirstVC.exe是个新手,所以工作起来兢兢业业,认真对待每一条收到的消息,有的是主人用户通过键盘发送的,有的是按鼠标发送的,还有的是系统内部如定时器发送来的。它把这些消息分门别类传给后台WindowProc进行处理。6窗口过程函数的实现WindowProc每收到一条消息,就会与自己预先定义的消息类型进行比拟。比方,主人用鼠标调整主窗口大小的时候,发出的是WM_SIZE消息,就把这一消息发到“case WM_SIZE:分支中处理;如果主人在窗口内写写画画,那么发出的是WM_PAINT消息,发到“case WM_PAINT:分支

6、中处理。一般来说,我们程序员要做的事情,就是在这个窗口过程中处理来自用户、系统发出的各种消息而已。7退出应用程序FirstVC.exe正忙得不亦乐乎,主人突然单击窗口上的关闭按钮,一个WM-QUIT消息随后而至。FirstVC.exe极不情愿地做了一些后续处理,依依不舍地关掉窗口休息去了。Just Do It!创立你的第一个Windows程序启动Visual Studio 2022,单击“FileNewProject文件新建工程,在翻开的新建工程窗口左侧,展开“Visual C+,点选其下的“Win32,再在右侧选择“Win32 ProjectWin32工程,接着在下面的Name名称、Loca

7、tion位置中为工程取一个名称以及保存位置,比方取名为FirstVC,保存到“E:CFanFirstVC下。单击OK,将翻开程序创立向导,单击Next下一步,接下来对应用程序进行简单设置,这里选择Application type应用程序类型为Windows applicationWindows应用程序,单击Finish完成,一个程序框架就完成了,它已经包含了上面我们说到的所有内容,你只需要在WindowProc()中添加你自己的处理代码即可。最后点击“BuildBuild FirstVC创立创立FirstVC,FirstVC会随着你自定义的程序名称而改变,再按F5键运行,就可以看到你创立的第一个Windows程序了。VC+ 2003的操作与上面相似,但如果用的是VC+ 6.0,那么步骤稍有不同,而且要手工输入所有代码。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 资格与职业考试 > 其它

copyright@ 2008-2023 wnwk.com网站版权所有

经营许可证编号:浙ICP备2024059924号-2