1、控制台console程序
运行在MS-DOS环境中的程序。控制台应用程序通常没有可视化的界面,只是通过字符串来显示或者监控程序。控制台程序常常被应用在测试、监控等用途,用户往往只关心数据,不在乎界面。
通过命令行实现输入输出交互,可直接使用printf,getchar等库函数。
可直接使用win api接口。
入口是int main(int argc, char* argv[])。
main()中主要工作包括注册窗口类RegisterClass或RegisterClassEx,循环消息处理(取消息GetMessage,翻译消息TranslateMessage,派发消息DispatchMessage,消息处理WndProc(注册窗口类时会指定该函数来处理消息))。
不需要创建窗口CreateWindow和显示窗口ShowWindow、UpdateWindow。
2、窗口应用程序
有独立的窗口实现交互。
可直接使用win api接口。
入口是WinMain:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
WinMain()中主要工作包括注册窗口类RegisterClass或RegisterClassEx,创建窗口CreateWindow和显示窗口ShowWindow、UpdateWindow,循环消息处理(取消息GetMessage,翻译消息TranslateMessage,派发消息DispatchMessage,消息处理WndProc(注册窗口类时会指定该函数来处理消息))。
注意:窗口应用程序也可以不用创建和显示窗口,这样就是一个无窗口的应用程序在运行。可通过资源管理器查询运行的进程。