IsProcessInJob 函数 (jobapi.h)

确定进程是否在指定的作业中运行。

语法

BOOL IsProcessInJob(
  [in]           HANDLE ProcessHandle,
  [in, optional] HANDLE JobHandle,
  [out]          PBOOL  Result
);

参数

[in] ProcessHandle

要测试的进程句柄。 句柄必须具有PROCESS_QUERY_INFORMATION或PROCESS_QUERY_LIMITED_INFORMATION访问权限。 有关详细信息,请参阅 进程安全性和访问权限

Windows Server 2003 和 Windows XP: 句柄必须具有PROCESS_QUERY_INFORMATION访问权限。

[in, optional] JobHandle

作业的句柄。 如果此参数为 NULL,则函数将测试进程是否在任何作业下运行。

如果此参数不为 NULL,则句柄必须具有JOB_OBJECT_QUERY访问权限。 有关详细信息,请参阅 作业对象安全性和访问权限

[out] Result

指向值(如果进程在作业中运行)接收 TRUE 的指针,否则为 FALSE。

返回值

如果该函数成功,则返回值为非零值。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。

注解

应用程序无法获取运行它的作业对象的句柄,除非它具有作业对象的名称。 但是,应用程序可以使用 NULL 调用 QueryInformationJobObject 函数来获取有关作业对象的信息。

若要编译使用此函数的应用程序,请将_WIN32_WINNT定义为 0x0501 或更高版本。 有关详细信息,请参阅 使用 Windows 标头

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 jobapi.h
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

AssignProcessToJobObject

作业对象

进程和线程函数

QueryInformationJobObject