1.古典Windows程序设计:用C语言撰写并原原本本的使用Windows API来开发程序
2.MSDN中平台 SDK是整个MSDN知识库中较为晦涩的部分,但那是Windows程序设计的基本核心
3.Windows的三个主要子系统:Kernel、User和GDI
4.虽然我认为学习古典的Windows程序设计对任何Windows程序写作者都是重要的,我没有必要建议使用C和API编写每个Windows应用程序,但学习Windows API将使您更深入地了解Windows工作的方式,熟悉API会使您对Windows内部有更深入的了解
5.Windows程序入口点函数:WinMain
int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // pointer to command line
int nCmdShow // show state of window
);
6.弹出消息框函数:MessageBox
int MessageBox(
HWND hWnd, // handle of owner window
LPCTSTR lpText, // address of text in message box
LPCTSTR lpCaption, // address of title of message box
UINT uType // style of message box
);
可自定义消息框的显示的文本,标题,图标和按钮
如:
MessageBox(NULL,TEXT("Welcome to China!"),TEXT("Hello,World!"),MB_OKCANCEL|MB_ICONINFORMATION);
6.正常情况下,在编译阶段,编译器从C原始码文件产生一个.OBJ(目标)文件。在连结阶段,连结程序结合.OBJ文件和.LIB(库)文件以建立.EXE(可执行)文件。通过在Project->Settings->Link页面标签可以查看这些库文件的列表。特别地,您会注意到KERNEL32.LIB、USER32.LIB和GDI32.LIB。这些是三个主要Windows子系统的「引用链接库」。它们包含了动态链接库的名称以及放进.EXE文件的引用信息。Windows使用该信息处理程序对KERNEL32.DLL、USER32.DLL、GDI32.DLL动态链接库中函数的呼叫。
7.在Visual C++ Developer Studio中,您可用不同的设定编译和连结程序。内定情况下,它们是「Debug」和「Release」。
8..mak文件
(1)生成.MAK(make)文件:Project->Export Makefile...
(2)运行.mak文件
将Microsoft Visual Studio/VC98/Bin目录下的NMAKE.EXE拷贝到工程目录(如HelloMsg),在命令行下进入HelloMsg目录,运行nmake
Usage: NMAKE @commandfile
NMAKE [options] [/f makefile] [/x stderrfile] [macrodefs] [targets]
如:
nmake /f "HelloMsg.mak" CFG="HelloMsg - Win32 Debug"
则显示:
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
再运行程序:debug/HelloMsg