Windows提供了一个作业(job)内核对象,它允许你将进程组合在一起;
起到类似沙箱的作用;
可以对作业中的进程施加平时不能施加的限制;
这程序是《Windows核心编程》中的,我只初略看了一下,
#include "stdafx.h"
#include "windows.h"
#include "strSafe.h"void StartRestrictedProcess(void);int _tmain(int argc, _TCHAR* argv[])
{StartRestrictedProcess();return 0;
}//将进程放入作业中的实现
void StartRestrictedProcess(void)
{BOOL bInJob = FALSE;::IsProcessInJob(::GetCurrentProcess(), NULL, &bInJob);if (bInJob){MessageBox(NULL, TEXT("Process Already in a Job"), NULL, MB_OK | MB_ICONINFORMATION);return;}HANDLE hJob = ::CreateJobObject(NULL, TEXT("LANGYING"));if (hJob){JOBOBJECT_BASIC_LIMIT_INFORMATION jobli = { 0 };//作业占用CPU时间不得查过1秒jobli.PerJobUserTimeLimit.QuadPart = 1000;//设置作业中进程的优先级类jobli.PriorityClass = IDLE_PRIORITY_CLASS;//设置结构中哪些成员被应用jobli.LimitFlags &#