一,动态链接库
代表Windows的三个主要子系统:Kernel,处理操作系统核心事务——内存管理、文件I/O和多任务管理;User,使用者借口、实作所有窗口运作机制;GDI,图像设备接口,允许程序在屏幕和打印机上显示文字和图形。
引用链接库。
二,编写第一个Windows程序:
/*----------------------------------------------
HelloMsg.c--Displays"Hello,Windows98!"in a message box
(c) Gao Zhen'an, 2010
----------------------------------------------*/
#include<windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,
PSTR szCmdline,int iCmdShow)
{
MessageBox(NULL,TEXT("Hello,Windows98!"),TEXT("HelloMsg"),0);
return 0;
}
/*-----------------------------------------------------
"M" inside "WinMain"shuld be "M"but not "m"
------------------------------------------------------*/
注:
1)在新建Projects页面标签中选择Win32 Application;
2)表头文件:HelloMsg.c以一个前置处理器指示命令开始,并在开头看到#include<windows.h>.windows.h是主要的含入文件,它包含其他的表头文件,基本的包括:windef.h,基本型态定义;winnt.h,支持Unicode的型态定义;winbase.h,Kernel函数;winuser.h,使用者接口函数;wingdi.h,图形设备接口函数。它们定义了Windows的所有数据型态、函数呼叫、数据结构和常数标识符。使用Visual C++ Developer Studio的Edit菜单中的Find in Files搜索这些表头非常方便。
3)程序进入点:WinMain,第一个参数是“执行实体句柄”,32位版本的系统第二参数总是为空;第三个参数是执行程序的命令列,某些程序在启动时利用它将文件加载内存;第四个参数指出程序最初显示的方式:是正常化、最大化还是最小化。
4)MessageBox函数,用于显示短信息,被认为一个对话框。第一个参数是窗口句柄;消息框主体显示的内容;第三个参数是出现在消息框标题列的内容;在HelloMsg.c中,这些文字的字符串每一个被封装在一个TEXT宏。第四个参数可以是在winuser.h中定义的一组以前缀MB_开始的常数组合。设为“0”,仅显示“OK”按钮。
5)编译、连结、执行:编译产生一个.obj文件;连结结合.obj和.lib文件以建立.exe文件。