Windows编程基础
编程方式:
- API编程,Application Programming Interface。
- MFC编程,Microsoft Foundation Classes。
Windows应用程序类型:
- 控制台程序,console application,入口函数是main,dos下运行。
- 窗口程序,application,可以交互,入口函数是WinMain。
- 库程序,存放代码和数据
- 动态库程序,Dynamic Link Library,dll后缀文件,入口函数是dllMain,需要依附其他程序运行。还带有一个引入库,后缀也是lib,注意和静态库区分。
- 静态库程序,Static Library,lib后缀,不可运行,无入口函数。
以上五种最终文件均是二进制文件。
Windows编译
编译:CL.EXE ,生成obj文件。参数:-?显示帮助 /c 只编译 /TC 按C编译 /TP 按C++编译
资源:RC.EXE,生成rc脚本文件。
链接:LINK.EXE,将所有模块链接成EXE可执行文件。Makefile脚本文件,NMAKE执行,mak后缀。
HELLO:CLEAN //这里HELLO加冒号称为依赖行,CLEAN称为依赖项,下面的称为命令行 CL.EXE helloword.c RC.EXE helloword.rc LINK.EXE helloword.obj helloworld.res user32.libCLEAN: del *.obj del *.res del *.exe//nmake /f xxx.mak CLEAN 只执行对应依赖行
执行顺序:会先找到第一个依赖行,如果有依赖项先执行依赖项,然后执行自己的命令行。即先执行CLEAN再执行HELLO。
Windows常用库和头文件
- kernel.dll,核心API,进程、线程、内存管理相关函数,头文件 - user32.dll,窗口、消息等API, - gdi.dll,绘图相关API, - 所有头文件集合。 - Windows下的数据类型,一般是由基本类型宏定义而来。 - Unicode字符集支持。
Windows下常见的数据类型
- DWORD,unsigned long,32位无符号整型数;WORD,unsigned short。 - LPSTR char* ; LPCTSTR const char* 。