Поделиться через


Функция GetCurrentProcess (processthreadsapi.h)

Извлекает псевдо дескриптор для текущего процесса.

Синтаксис

HANDLE GetCurrentProcess();

Возвращаемое значение

Возвращаемое значение является псевдо дескриптором для текущего процесса.

Комментарии

Псевдо дескриптор — это специальная константа (HANDLE)-1, которая интерпретируется как текущий дескриптор процесса. Для совместимости с будущими операционными системами лучше всего вызывать GetCurrentProcess , а не жестко кодировать это значение константы. Вызывающий процесс может использовать псевдо дескриптор для указания собственного процесса всякий раз, когда требуется дескриптор процесса. Псевдо дескрипторы не наследуются дочерними процессами.

Этот дескриптор имеет право PROCESS_ALL_ACCESS доступа к объекту процесса. Дополнительные сведения см. в разделе Управление правами на доступ и безопасность процесса.

Windows Server 2003 и Windows XP: Этот дескриптор имеет максимальный доступ, разрешенный дескриптором безопасности процесса к основному маркеру процесса.

Процесс может создать для себя "реальный" дескриптор, допустимый в контексте других процессов или унаследованный другими процессами, указав псевдо дескриптор в качестве исходного дескриптора в вызове функции DuplicateHandle . Процесс также может использовать функцию OpenProcess , чтобы открыть для себя реальный дескриптор.

Псевдо дескриптор не нужно закрывать, когда он больше не нужен. Вызов функции CloseHandle с помощью псевдо дескриптора не оказывает никакого влияния. Если псевдо дескриптор дублируется DuplicateHandle, дублирующийся дескриптор должен быть закрыт.

Примеры

Пример см. в разделе Создание дочернего процесса с перенаправленными входными и выходными данными.

Требования

Требование Значение
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header processthreadsapi.h (включая Windows.h в Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

CloseHandle

DuplicateHandle

GetCurrentProcessId

GetCurrentThread

OpenProcess

Функции процессов и потоков

Процессы

API-интерфейсы Vertdll, доступные в анклавах VBS