第5章-作业--创建作业

创建作业


代码示例

    // 判断当前进程是否是否处于一个作业内核对象中
    BOOL bInJob = FALSE;
    IsProcessInJob(GetCurrentProcess(), NULL, &bInJob);
    if (bInJob) {
        // 当前进程已经与一个作业内核对象关联
        // 下面执行错误处理代码...
    }

    // 创建一个作业内核对象
    HANDLE hjob = CreateJobObject(NULL,
        TEXT("Wintellect_RestrictedProcessJob"));

CreateJobObject

HANDLE WINAPI CreateJobObject(
  _In_opt_ LPSECURITY_ATTRIBUTES lpJobAttributes,
  _In_opt_ LPCTSTR               lpName
);
  • lpJobAttributes

    • 该参数用来指定作业内核对象句柄是否可以继承
    • 如果是NULL, 则会采用默认的安全属性并且作业内核对象句柄不可继承
  • lpName

    • 该参数用来命名作业内核对象
    • 如果是NULL, 则会创建一个匿名作业内核对象

IsProcessInJob

BOOL WINAPI IsProcessInJob(
  _In_     HANDLE ProcessHandle,
  _In_opt_ HANDLE JobHandle,
  _Out_    PBOOL  Result
);
  • ProcessHandle

    • 待判断的进程内核对象句柄
  • JobHandle

    • 待判断的作业内核对象句柄
  • Result

    • 保存判断结果的BOOL类型变量地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值