windwos中的进程
2016-10-24 23:26
330 查看
进程
进程 就是一个容器,该容器是程序
进程的主线程开始意味着程序执行.
进程的特点
每个进程都有ID号
每个进程都有自己的地址空间
获取进程信息
GetCurrentProcessId - 获取当前进程的ID
GetCurrentProcess - 获取当前进程的句柄,(获取的是一个伪句柄)
进程环境信息
1. 环境信息
void* GetEnviormentStrings(); 返回进程信息.
2. 释放
FreeEnvironmentStrings(); // 释放进程信息
环境变量
1.设置(增加)环境
SetEnvironmentVariable(
Name, //环境变量名
Value, // 环境变量值
)
2. 获取环境变量的值
DWORD GetEnvironmentVariable(
LPWSTR lpName, // 环境变量名
LPTSTR lpBuffer, // 接收环境变量的值
DWORD nSize // buff的大小
)
创建进程
CreateProcess() - 目前主推 类似于linux C 中的 vfork+exec
BOOL CreateProcess(
LPCTSTR lpApplicationName, // 应用程序路径
LPTSTR lpCommandLine, // 命令行
LPSECURITY_ATTRIBUTES lpProcessAttributes, // 进程安全属性
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 线程安全属性
BOOL bInheritHandles, // 继承标识
DWORD dwCreationFlags, // 创建方式
LPVOID lpEnvironment, // 环境信息
LPCTSTR lpCurrentDirectory, // 当前目录
LPSTARTUPINFO lpStartupInfo, // 起始信息
LPPROCESS_INFORMATION lpProcessInformation // 进程信息
);
结束进程
void ExitProcess(UINT uExitCode) //
BOOL TerminateProcess(
HANDLE hProcess, // handle to the process.
UINT uExitCode // exit code for the process.
)
进程间的等候
DWORD WaitForSingleObject(
HANDLE hHandle, // 句柄
DWORD dwMilliseconds // 等候时间
);
该函数为阻塞函数,等候句柄的信号,只在句柄有信号或超出等候时间,才会结束等候,
进程执行期间进程句柄无信号,结束时进程句柄无信号.
如果dwMillseconds是INFINTE则一直等待该hAndle有信号
进程 就是一个容器,该容器是程序
进程的主线程开始意味着程序执行.
进程的特点
每个进程都有ID号
每个进程都有自己的地址空间
获取进程信息
GetCurrentProcessId - 获取当前进程的ID
GetCurrentProcess - 获取当前进程的句柄,(获取的是一个伪句柄)
进程环境信息
1. 环境信息
void* GetEnviormentStrings(); 返回进程信息.
2. 释放
FreeEnvironmentStrings(); // 释放进程信息
环境变量
1.设置(增加)环境
SetEnvironmentVariable(
Name, //环境变量名
Value, // 环境变量值
)
2. 获取环境变量的值
DWORD GetEnvironmentVariable(
LPWSTR lpName, // 环境变量名
LPTSTR lpBuffer, // 接收环境变量的值
DWORD nSize // buff的大小
)
创建进程
CreateProcess() - 目前主推 类似于linux C 中的 vfork+exec
BOOL CreateProcess(
LPCTSTR lpApplicationName, // 应用程序路径
LPTSTR lpCommandLine, // 命令行
LPSECURITY_ATTRIBUTES lpProcessAttributes, // 进程安全属性
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 线程安全属性
BOOL bInheritHandles, // 继承标识
DWORD dwCreationFlags, // 创建方式
LPVOID lpEnvironment, // 环境信息
LPCTSTR lpCurrentDirectory, // 当前目录
LPSTARTUPINFO lpStartupInfo, // 起始信息
LPPROCESS_INFORMATION lpProcessInformation // 进程信息
);
结束进程
void ExitProcess(UINT uExitCode) //
BOOL TerminateProcess(
HANDLE hProcess, // handle to the process.
UINT uExitCode // exit code for the process.
)
进程间的等候
DWORD WaitForSingleObject(
HANDLE hHandle, // 句柄
DWORD dwMilliseconds // 等候时间
);
该函数为阻塞函数,等候句柄的信号,只在句柄有信号或超出等候时间,才会结束等候,
进程执行期间进程句柄无信号,结束时进程句柄无信号.
如果dwMillseconds是INFINTE则一直等待该hAndle有信号
相关文章推荐
- 【转载】Windwos CE 跨进程内存注入
- SAP-安装windwos XP Sap的show 教程什么都看不到,的解决办法
- 在Windwos8.1下配置PHP开发环境
- Windwos远程执行Linux命令
- WINDOWS编程学习2:C windwos编程中常用的头文件的说明
- Windwos集群文件实时同步
- C++数据类型与C#对应关系 c#调用WINDWOS API时,非常有用(转)
- android开发环境搭建 安装说明 mac和windwos Eclipse adt
- MySql-noinstall (绿色)解压版WINDWOS下 数据库启动和关闭
- 进行Windwos Media Services二次开发时开发机建立远程对象的配置问题
- Windwos平台上ffmpeg解码音频并且保存到wav文件中
- 【杂谈】windwos IIS搭建ftp服务器
- PIL在windwos系统下Image.show无法显示图片问题的解决方法
- windwos操作系统版本
- windwos server 2008下用visual studio 2005开发碰到的一些问题
- windwos server 2008 R2 突然连不上远程桌面问题
- WINDWOS编程学习3:windwos HolleMessage程序说明
- 小鱼儿自动保windwos记事本插件
- Windwos XP 下 Android 环境搭建 详解 整理中
- Windwos服务器远程桌面限制用户使用同一个会话的3种设置方法