Ⅰ 怎么样学习熟练win32 api需要掌握哪些知识点、要点
以下是个人见解(一家之言哈):
学习win32编程掌握API不是目的,而是过程。不要单纯为了学习API而学习,而是学习应用程序的开发过程中逐渐学习这些函数。不谈MFC的话,比如要做win32开发有图形界面的程序,就要学会创建窗口,弹出窗口,弹出对话框以及对窗口消息获取,传递,处理等等。这些过程就会学到很多API函数。接着如果要学习网络间程序通信,就去学习网络编程里的一系列API函数。如果要学习多线程开发,就去学习创建线程的API,线程同步API等等。总之:学API不是目的,而是过程,学完了API是要为我们的应用程序开发服务的。
Ⅱ Win32 API是什么啊怎么用
API是Application Programming Interface的缩写,即应用程序接口,它是由Win32操作系统提供给程序员的一系列函数接口的集合,这些函数可以对计算机系统进行各种各样的操作,比如创建窗口、描绘图形、使用周边设备等等,它们犹如“积木块”一样,可以搭建出各种界面丰富,功能灵活的应用程序。所以可以认为API函数是构筑整个WINDOWS框架的基石,在它的下面是WINDOWS的操作系统核心,而它的上面则是所有的华丽的WINDOWS应用程序。Win32系统负责实现API函数,为我们的程序控制计算机搭建一座便捷的桥梁。
我们常用的VC中的MFC库(微软基础类库)就是Visual Sudio集成开发环境为我们提供的以面向对象方式对Win32 API的封装,无论我们是否使用了MFC库,只要是开发Win32程序归根结底都要调用Win32 API。
Windows API包括几千个可调用的函数,它们大致可以分为以下几个大类:基本服务、组件服务、用户界面服务、图形多媒体服务、消息和协作、网络、Web服务。这么多函数全部记住当然不可能,也没必要,如上所述,集成开发环境开发环境提供的类库和控件封装了大部分的API函数,且易学易用,极大地减少了Windows程序员的工作量,当然即使这样,为了使程序代码简洁及效率高,我们的程序往往偶尔还需要直接调用Win32 API,所以我们还是需要适当的记住一些完成某些常用功能的API函数名,用法参数可以不记,因为可以现用现查。
至于MSDN,它是开发文档,使用它可以方便地查询Win32 API的功能、使用方法。
Ⅲ windows API编程的入门书
呵呵,有意思,你可以去看WINDOWS程序设计,,侯捷的还有一本
Windows API for 2000/XP实例精解也不错的...找不到可以来找我...有空传你...
Ⅳ win32 API入门的话,至少需要多长地时间拜托了各位 谢谢
从《windows程序设计》这本书开始 API难学,主要是想不到,所以看多了,自己动动手,时间长了也就成了高人啦.
记得采纳啊
Ⅳ 最简单的Windows API编程 求解
知其然要知其所以然。不管你是直接C++ source file, 还是 win32 Application,只要你了解其本质,那么你可以通过简单的配置,使你的程序成功运行起来。下面我告诉你如何在命令提示符(cmd.exe 或 command prompt)下编译你的程序。
1.如何进入初始化编译器环境的命令提示符:
1)如果还是使用VC++6.0。那么在开始->运行中输入cmd, 然后回车。在cmd.exe中使用cd命令进入你的VC++6.0安装目录的VC目录下,应该可以找到vcvars32.bat, 然后在cmd.exe运行vcvars32.bat批处理脚步就可以了。
2)如果是VS 2005 2008 2010 2012,那么在开始中找到对应目录,在这个目录下有个开发工具目录,里面有个vs x32 command prompt, 直接点击就可以了。
2.如何在以上命令提示符中编译你的程序,假设你上面的程序文件为test.c:
cl /? #查看编译器使用帮助
cl /OUT:test.exe kernel32.lib user32.lib gdi32.lib /SUBSYSTEM:WINDOWS /ENTRY:WinMainStartup /MANIFEST:NO /MD test.c
这样可以成功编译出来的text.exe
Tip: 问题的关键是/SUBSYSTEM和/ENTRY
/SUBSYSTEM: [CONSOLES, WINDOWS, ...] 这是主要的两个参数。
/ENTRY: [WinMainStartup, mainCRTStartup] 就这两个参数。(WinMainStartup可能是WinMainCRTStartup,我记不清了)
问题关联:
1.当你直接C++ source file时,/SUBSYSTEM:CONSOLES /ENTRY:mainCRTStartup (这时入口函数时main,<report LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main >, 它说crt0.obj使用了一个叫main的函数,你却没有写...)
2.当你使用win32 application时,/SUBSYSTEM:WINDOWS /ENTRY:WinMainCRTStartup (这时你的程序符合要求,因为它找到了WinMain函数)
拓展:
#include<windows.h>
#pragma comment(lib,"User32.lib")
int main(int argc, char *argv[])
{
MessageBox(NULL,TEXT("开始学习"),TEXT("消息对话框"),MB_OK);
return 0;
}
把WinMain改成标准C/C++的main之后如何运行程序,因为你使用MessageBox函数,使用了win32 API, 故/SUBSYSTEM:WINDOWS。又因为你使用main函数为程序入口函数,故/ENTRY:mainCTRStartup。编译命令如下:
cl /OUT:test.exe kernel32.lib user32.lib gdi32.lib /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup /MANIFEST:NO /MD test.c
Note: 以上参数都可以在VC++开发环境工程设置里面进行更改设置,由于我是在Unix下工作,很久没有接触VC,以上参数可能存在偏差,请使用cl /? link /? res /? nmake /?等自行仔细查看。另外,我建议开始编程使用命令加脚本的方式编程,学会使用自己编写Makefile, 因为VC++的图形开发环境本质就是建立在各种脚本之上,所以对排查程序错误能够有本质上的认识。
Ⅵ windows编程 API编程 和MFC
1.无论是api还是mfc都是windows编程,只不过使用的方法有不同
api是win32编程,使用的语言是c
mfc主要使用c++语言,他把api封装加工后以对像的方式调用,你学了c++学mfc可以帮你进一步学习c++的使用。目前mfc很多人都批评他,说他过时了,不过对于进一步学习c++有很大帮助,记住要学mfc的使用,更要学他的框架设计,不要迷失在什么函数的调用上。现在和mfc同等级的比较受欢迎的平台还有Qt,wxwidgets,这两个都是跨平台的,Qt比较火。不想学mfc可以学Qt什么的,mfc学起来比较难。
其实win32 api编程足够使用了,但是mfc在一般情况下做小型软件比较简单方便
2第一本书是大家普遍推荐的win32入门书,很受好评,他只是讲api的使用方法,和mfc没关系
第二本书也很受欢迎,是侯捷的作品,你学mfc的话最好看这本。无论学哪个,第一本必须看,他是mfc的基础,毕竟mfc是封装的第一本书里的函数。学不学mfc可以考虑,但是不学mfc那就必须学Qt,wxwidgets。他们对于提升c++水平很有帮助。
Ⅶ windows程序设计和windows核心编程 哪本更适合win32 api入门
当然是《windows程序设计》入门了,之后再看《windows核心编程》。但是《windows程序设计》多数与mfc有关系。
Ⅷ 学习Win32 API编程的话有哪些书可以推荐
对于你的要求只有一本书可看!
《Windows 程序设计(第5版)》
这是一本最权威的Windows API编程书籍,本书被称为Windows程序设计的“圣经”
这本是尽人皆知的Win32 API编程经典,也称为“Petzold Book”,学习Win32 API编程的人几乎都从这本书入手。这本书的优点是落墨细致,对基本概念和基本技巧的解释非常详尽,不厌其烦。同时,这本书篇幅虽然不小,但是包容的东西并不多,基本上把重点放在GUI编程上和常规编程任务上,所以能够把很多问题讲得非常透彻。通常第一次阅读这本书,都会觉得作者行文有一些罗嗦。但是日后在开发中,却会发现,这些当时觉得罗嗦的论述,都是实际工作中值得反复查阅咀嚼的宝贵资料。这就是所谓的Petzold风格,既可做tutorial,又可做eference。