Windows进程的启动和退出
来源:互联网 发布:js gzip 解压缩字符串 编辑:程序博客网 时间:2024/04/27 03:35
C/C++运行期启动函数的功能归纳如下:
1.检索指向新进程的完整命令行的指针;
2.检索指向新进程的环境变量的指针;
3.对C/C++运行期的全局变量进行初始化,如果包含了stdlib.h文件,代码就能改变这些变量。
4.对C运行期内存单元分配函数(malloc and calloc)和其他低层输入/输出例程使用的内存栈进行初始化。
5.为所有全局和静态C++类对象调用构造函数。
当所有这些初始化操作完成后,C/C++启动函数就调用应用程序的进入点函数,按照进入点函数调用:
调用wWinMain函数,如下形式:
GetStartupInfo(&StarupInfo);
int nMainRetVal = wWinMain(GetModuleHandle(NULL),NULL,pszCommandLineUnicode,(StarupInfo.dwFlags & STARTF_USESHOWWINDOW)?StarupInfo.wShowWindow:SW_SHOWDEFAULT);
调用WinMain函数,如下形式:
GetStartupInfo(&StarupInfo);
int nMainRetVal = WinMain(GetModuleHandle(NULL),NULL,pszCommandLineAnsi,(StarupInfo.dwFlags & STARTF_USESHOWWINDOW)?StarupInfo.wShowWindow:SW_SHOWDEFAULT);
调用wmain函数,如下形式:
int nMainRetVal = wmain(__argc,__wargv,__wenviron);
调用main函数,如下形式:
int nMainRetVal = main(__argc,__argv,__environ);
当进入点函数返回时,启动函数便调用C运行期的exit函数,将返回值(nMainRetVal)传递给它。Exit函数负责下面的操作:
1.调用_onexit函数的调用而注册的任何函数;
2.为所有全局的和静态的C++类对象调用析构函数;
3.调用操作系统的ExitProcess函数,将nMainRetVal传递给它。这使得该操作系统能够撤销进程并设置它的Exit代码。
0 0
- Windows进程的启动和退出
- 记一次VB Windows程序的启动和退出处理
- Windows-进程-退出进程
- 程序的启动和退出
- ie的启动和退出
- linux进程--进程环境(程序的启动与退出)
- 使用windows钩子捕获进程的启动和关闭消息
- windows启动进程的步骤
- shellcode启动cmd加退出进程和写保护
- UNIX高级环境编程(8)进程环境(Process Environment)- 进程的启动和退出、内存布局、环境变量列表
- 我理解的进程和退出
- linux 进程的创建 和退出回收
- 程序的启动和退出过程详解
- HDFS均衡操作的启动和退出
- HDFS均衡操作的启动和退出
- Activity的启动模式和退出
- 让父进程在退出时所有的子进程连同用system启动的进程一同退出
- 创建进程和退出进程
- 【Processing入门】第九章:视频音频
- JAVA------String
- 设置item背景图片
- 思科笔试题
- hdu - 1054 - Strategic Game(树形dp)
- Windows进程的启动和退出
- ios 中 file owner 和 first response的理解
- struts中的JSP页面根据action跳转
- 前往沙盒目录的命令,打断点在xcode命令行输入
- Java入门-abstract类及方法
- JFreeChart中文乱码解决方案
- 时间、日期的一些用法
- 实验二:顺序表实现N个学生成绩操作
- Java下拉框JComboBox举例