none
CreateProcess()可以控制进程的运行时间吗? RRS feed

  • 问题

  • CreateProcess()打开一个进程,可以控制这个进程在1分钟内运行结束吗? 就是说如果没有运行完毕也强制结束?
    2012年5月10日 9:19

答案

  • PROCESS_INFORMATION pi = {0};
    if(CreateProcess(...,&pi))
    {
      CloseHandle(pi.hThread);
      if(WAIT_TIMEOUT == WaitForSingleObject(pi.hProcess, 60 * 1000))
      {
        TerminateProcess(pi.hProcess);
      }
      CloseHandle(pi.hProcess);
    }

    或者使用作业对象,将进程放入作业对象中,利用SetInformationJobObject()设置一些基本限制。


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    • 已标记为答案 Honny_yeyh 2012年5月11日 1:09
    2012年5月10日 14:56
    版主