飞道的博客

技术小咖之windows应用程序的入口函数

375人阅读  评论(0)
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow) 

前面我们已经强调过了,windows图形界面的应用程序的入口函数名必须为WinMain ,而且调用约定必须为_stdcall。因为入口函数是由操作系统来调用的。既然如此,该函数的四个参数也是由操作系统来赋值的。

下面我们来解释一下这四个参数的含义:

  1. HINSTANCE hInstance

应用程序实例句柄,当用户运行应用程序时,就会创建一个应用程序实例句柄。该句柄的本质是进程句柄。一个应用程序运行时,操作系统就会创建一个进程,一个主线程(线程函数为WinMain )。进程创建的同时会返回一个进程句柄,操作系统以及其他的应用程序可以通过进程句柄来管理进程,如:终止进程的执行,或通过管道向进程传递数据等。

     2.HINSTANCE hPrevInstance

前一个实例句柄,一个应用程序可以运行很多次,每次都会创建一个实例句柄。

     3. PSTR szCmdLine

命令行参数,当我们通过命令方式启动一个应用程序时,可以在命令中输入相应的参数。

比如DOS命令中的CD命令:C:\>CD  WINDOWS,其中 WINDOWS就是该命令的参数。

我们在E盘根目录下创建一个简单的win32应用程序,项目名为comdline:


  
  1. #include "windows.h"
  2. int APIENTRY WinMain(HINSTANC

转载:https://blog.csdn.net/dyq1995/article/details/103546326
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场