#include "stdio.h"
#include <windows.h>
int main(int argc, char* argv[])
{
if (argc<3)
{
printf("Usage:%s CmdLine CurrentDirectory\n",argv[0]);
return 1;
}
//创建进程
char* pCommandLine=argv[1];
char* pCurrentDirectory=argv[2];
STARTUPINFO si={sizeof(si)};
PROCESS_INFORMATION pi;
si.dwFlags &= ~STARTF_USESHOWWINDOW;//si.wShowWindow=true;
BOOL bRet=::CreateProcess(
NULL,
pCommandLine,
NULL,
NULL,
FALSE,
NULL, // creation flags CREATE_NEW_CONSOLE,
NULL,
pCurrentDirectory, // current directory name
&si,
&pi);
if(bRet)
{
::CloseHandle(pi.hThread);
::CloseHandle(pi.hProcess);
printf("新进程ID:%d\n",pi.dwProcessId);
printf("新进程主线程ID:%d\n",pi.dwThreadId);
return 0;
}
return 1;
}