CreateProcess函数原型
CreateProcess 函数用于创建一个新历程(子历程)及其主线程,其函数原型如下:- BOOL CreateProcess(
- LPCWSTR lpApplicationName,//指向可执行模块名称的指针
- LPWSTR lpCommandLine,//指向命令行字符串的指针。
- LPSECURITY_ATTRIBUTES lpProcessAttributes,//指向 SECURITY_ATTRIBUTES 结构的指针,指定新进程的安全属性。
- LPSECURITY_ATTRIBUTES lpThreadAttributes,//指向 SECURITY_ATTRIBUTES 结构的指针,指定新线程的安全属性。
- BOOL bInheritHandles,//如果为 TRUE,新进程将继承调用进程的句柄。
- DWORD dwCreationFlags,//指定附加的、用来控制优先类和进程的创建的标志。
- LPVOID lpEnvironment,//指向新进程的环境块的指针。如果为 NULL,新进程将使用调用进程的环境。
- LPCWSTR lpCurrentDirectory,//指向新进程的当前目录的指针。如果为 NULL,新进程将使用调用进程的当前目录。
- LPSTARTUPINFOW lpStartupInfo,//指向 STARTUPINFOW 结构的指针,指定新进程的主窗口特性。
- LPPROCESS_INFORMATION lpProcessInformation//指向 PROCESS_INFORMATION 结构的指针,接收新进程的标识符和句柄。
- );
复制代码 为了演示用一个历程来启动一个新的历程,我们在这里首先准备一个NewApp的历程,表现即将被CreateProcess 函数启动的历程,NewApp的代码如下,代码打印出历程的命令行启动参数
[code]//这是NewApp程序#include #include int main(int argc, char** argv){ for (int i = 0; i < argc; i++) { std::wcout |