码迷,mamicode.com
首页 > 编程语言 > 详细

C++创建一个新的进程

时间:2017-08-09 13:12:05      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:pop   max   关闭   thread   string   targe   exe   tco   structure   

原文:http://blog.csdn.net/hk627989388/article/details/53309865

 

STARTUPINFO用于指定新进程的主窗口特性的一个结构。

PROCESS_INFORMATION在创建进程时相关的数据结构之一,该结构返回有关新进程及其主线程的信息。

 

[cpp] view plain copy
 
  1. void CCreateProgressDlg::StartProgress()  
  2. {  
  3.     CString csCommandLine;  
  4.     char chWindowsDir[MAX_PATH];  
  5.     char chCommandLine[MAX_PATH];  
  6.     DWORD dwExitCode;  
  7.     PROCESS_INFORMATION pi;  
  8.   
  9.     STARTUPINFO     si;//用于指定新进程的主窗口特性的一个结构  
  10.     memset(&si, 0, sizeof(si));  
  11.     si.cb = sizeof(STARTUPINFO);  
  12.     si.dwFlags = STARTF_USESHOWWINDOW;  
  13.     si.wShowWindow = SW_SHOW;//SW_HIDE隐藏窗口  
  14.   
  15.     //得到windows目录  
  16.     GetWindowsDirectory(chWindowsDir, MAX_PATH);  
  17.   
  18.     //启动“记事本”程序的命令行  
  19.     csCommandLine = CString(chWindowsDir) + "\\NotePad.exe";  
  20.     ::strcpy(chCommandLine, csCommandLine);  
  21.   
  22.     //启动“记事本”作为子进程  
  23.     BOOL ret = CreateProcess(NULL, chCommandLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);  
  24.     if (ret)  
  25.     {  
  26.         //关闭子进程的主线程句柄  
  27.         CloseHandle(pi.hThread);  
  28.   
  29.         //等待子进程的退出  
  30.         WaitForSingleObject(pi.hProcess, INFINITE);  
  31.   
  32.         //获取子进程的退出码  
  33.         GetExitCodeProcess(pi.hProcess, &dwExitCode);  
  34.   
  35.         //关闭子进程句柄  
  36.         CloseHandle(pi.hProcess);  
  37.   
  38.     }  
  39.   
  40.   
  41. }  

 

C++创建一个新的进程

标签:pop   max   关闭   thread   string   targe   exe   tco   structure   

原文地址:http://www.cnblogs.com/lizhigang/p/7324166.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!