HANDLE CreateThread
(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 指向SECURITY_ATTRIBUTES型态的结构的指针,NULL使用默认安全性
SIZE_T dwStackSize,// 设置初始栈的大小,以字节为单位,如果为0,那么默认将使用与调用该函数的线程相同的栈空间大小
LPTHREAD_START_ROUTINE lpStartAddress, //指向线程函数的指针
LPVOID lpParameter, //向线程函数传递的参数,是一个指向结构的指针,不需传递参数时,为NULL
DWORD dwCreationFlags, // 线程标志,可取值如下 CREATE_SUSPENDED/0/STACK_SIZE_PARAM_IS_A_RESERVATION
LPDWORD lpThreadId //保存新线程的id
);
BOOL CreateProcess
(
LPCTSTRlpApplicationName,//指向一个NULL结尾的、用来指定可执行模块的字符串这个字符串可以是可执行模块的 绝对路径,也可以是 相对路径,在后一种情况下,函数使用当前 驱动器和目录建立可执行模块的路径。
LPTSTRlpCommandLine,// 指向一个以NULL结尾的字符串,该字符串指定要执行的命令行。
LPSECURITY_ATTRIBUTESlpProcessAttributes,// 指向一个SECURITY_ATTRIBUTES结构体,这个 结构体 决定是否返回的句柄可以被子进程继承。如果lpProcessAttributes参数为空(NULL),那么句柄不能被继承。
LPSECURITY_ATTRIBUTESlpThreadAttributes,
BOOLbInheritHandles,
DWORDdwCreationFlags,
LPVOIDlpEnvironment,
LPCTSTRlpCurrentDirectory,
LPSTARTUPINFOlpStartupInfo,
LPPROCESS_INFORMATIONlpProcessInformation
);
LPSECURITY_ATTRIBUTES lpThreadAttributes, // 指向SECURITY_ATTRIBUTES型态的结构的指针,NULL使用默认安全性
SIZE_T dwStackSize,// 设置初始栈的大小,以字节为单位,如果为0,那么默认将使用与调用该函数的线程相同的栈空间大小
LPTHREAD_START_ROUTINE lpStartAddress, //指向线程函数的指针
LPVOID lpParameter, //向线程函数传递的参数,是一个指向结构的指针,不需传递参数时,为NULL
DWORD dwCreationFlags, // 线程标志,可取值如下 CREATE_SUSPENDED/0/STACK_SIZE_PARAM_IS_A_RESERVATION
LPDWORD lpThreadId //保存新线程的id
);
BOOL CreateProcess
(
LPCTSTRlpApplicationName,//指向一个NULL结尾的、用来指定可执行模块的字符串这个字符串可以是可执行模块的 绝对路径,也可以是 相对路径,在后一种情况下,函数使用当前 驱动器和目录建立可执行模块的路径。
LPTSTRlpCommandLine,// 指向一个以NULL结尾的字符串,该字符串指定要执行的命令行。
LPSECURITY_ATTRIBUTESlpProcessAttributes,// 指向一个SECURITY_ATTRIBUTES结构体,这个 结构体 决定是否返回的句柄可以被子进程继承。如果lpProcessAttributes参数为空(NULL),那么句柄不能被继承。
LPSECURITY_ATTRIBUTESlpThreadAttributes,
BOOLbInheritHandles,
DWORDdwCreationFlags,
LPVOIDlpEnvironment,
LPCTSTRlpCurrentDirectory,
LPSTARTUPINFOlpStartupInfo,
LPPROCESS_INFORMATIONlpProcessInformation
);