|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
OpenProcess
The OpenProcess function returns a handle of an existing process object.
HANDLE OpenProcess(
DWORD dwDesiredAccess, // access flag BOOL bInheritHandle, // handle inheritance flag DWORD dwProcessId // process identifier );
Parameters
dwDesiredAccess
Specifies the access to the process object. For operating systems that support security checking, this access is checked against any security descriptor for the target process. Any combination of the following access flags can be specified in addition to the STANDARD_RIGHTS_REQUIRED access flags:
Access Description PROCESS_ALL_ACCESS Specifies all possible access flags for the process object. PROCESS_CREATE_PROCESS Used internally. PROCESS_CREATE_THREAD Enables using the process handle in the CreateRemoteThread function to create a thread in the process. PROCESS_DUP_HANDLE Enables using the process handle as either the source or target process in the DuplicateHandle function to duplicate a handle. PROCESS_QUERY_INFORMATION Enables using the process handle in the GetExitCodeProcess and GetPriorityClass functions to read information from the process object. PROCESS_SET_INFORMATION Enables using the process handle in the SetPriorityClass function to set the priority class of the process. PROCESS_TERMINATE Enables using the process handle in the TerminateProcess function to terminate the process. PROCESS_VM_OPERATION Enables using the process handle in the VirtualProtectEx and WriteProcessMemory functions to modify the virtual memory of the process. PROCESS_VM_READ Enables using the process handle in the ReadProcessMemory function to read from the virtual memory of the process. PROCESS_VM_WRITE Enables using the process handle in the WriteProcessMemory function to write to the virtual memory of the process. SYNCHRONIZE Windows NT only: Enables using the process handle in any of the wait functions to wait for the process to terminate.
bInheritHandle
Specifies whether the returned handle can be inherited by a new process created by the current process. If TRUE, the handle is inheritable.
dwProcessId
Specifies the process identifier of the process to open.
Return Values
If the function succeeds, the return value is an open handle of the specified process. If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Remarks
The handle returned by the OpenProcess function can be used in any function that requires a handle to a process, such as the wait functions, provided the appropriate access rights were requested. When you are finished with the handle, be sure to close it using the CloseHandle function.
See Also
CloseHandle, CreateProcess, CreateRemoteThread, DuplicateHandle, GetCurrentProcess, GetCurrentProcessId, GetExitCodeProcess, GetPriorityClass, ReadProcessMemory, SetPriorityClass, TerminateProcess, VirtualProtectEx, WriteProcessMemory
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
OpenProcess
Функция OpenProcess возвращает ручку существующего объекта процесса.
РУЧКА OpenProcess(
DWORD dwDesiredAccess, // ФЛАГ доступа BOOL bInheritHandle, // флаг наследства идентификатора процесса ручки DWORD dwProcessId // );
Параметры
dwDesiredAccess
Определяет доступ к объекту процесса. Для операционных систем, которые поддерживают проверку безопасности, этот доступ сверен с любым дескриптором безопасности на наличие целевого процесса. Любая комбинация следующего доступа сигнализирует может быть определено дополнительно к флагам доступа STANDARD_RIGHTS_REQUIRED:
Описание Доступа PROCESS_ALL_ACCESS Определяет все возможные флаги доступа для объекта процесса. PROCESS_CREATE_PROCESS Использовался непосредственно. PROCESS_CREATE_THREAD Приспосабливается используя ручку процесса в функции CreateRemoteThread, чтобы создавать резьбу в процессе. PROCESS_DUP_HANDLE Приспосабливается используя ручку процесса как или исходный или целевой процесс в функции DuplicateHandle, чтобы дублировать ручку. PROCESS_QUERY_INFORMATION Приспосабливается используя ручку процесса в GetExitCodeProcess и функции GetPriorityClass, чтобы читать информацию с объекта процесса. PROCESS_SET_INFORMATION Приспосабливается используя ручку процесса в функции SetPriorityClass, чтобы устанавливать приоритетный класс процесса. PROCESS_TERMINATE Приспосабливается используя ручку процесса в функции TerminateProcess, чтобы завершать процесс. PROCESS_VM_OPERATION Приспосабливается используя ручку процесса в VirtualProtectEx и функции WriteProcessMemory, чтобы модифицировать виртуальную память процесса. PROCESS_VM_READ Приспосабливается используя ручку процесса в функции ReadProcessMemory, чтобы читаться из виртуальной памяти процесса. PROCESS_VM_WRITE Приспосабливается используя ручку процесса в функции WriteProcessMemory, чтобы записываться в виртуальную память процесса. СИНХРОНИЗИРУЙТЕ Windows NT только: Допустимые используя ручку процесса в любой из функций ожидания, чтобы ждать процесс, чтобы завершаться.
bInheritHandle
Определяет может возвращанная ручка быть унаследована новым процессом созданным текущим процессом. Если ИСТИНА, ручка - inheritable.
dwProcessId
Определяет идентификатор процесса процесса, чтобы открываться.
Обратные Величины
Если функция добивается успеха, обратная величина является открытой ручкой определенного процесса. Если функция терпит неудачу, обратная величина НЕДЕЙСТВИТЕЛЬНА. Для того, чтобы расширять информацию ошибки, назовите GetLastError.
Замечания
Ручка возвращанная функцией OpenProcess может быть использована в любой функции, которая требует ручку в процесс, как например, функции ожидания, если подходящие права доступа требовались. Когда Вы завершены ручкой, не забудьте закрывать это используя функцию CloseHandle.
Смотри Также
CloseHandle, CreateProcess, CreateRemoteThread, DuplicateHandle, GetCurrentProcess, GetCurrentProcessId, GetExitCodeProcess, GetPriorityClass, ReadProcessMemory, SetPriorityClass, TerminateProcess, VirtualProtectEx, WriteProcessMemory
|
|
|
|
| |