指定したプロセスIDに対するプロセスハンドルを取得します。
bInheritHandle
dwProcessId
戻り値
関数が成功すると、プロセスハンドルが返ります。失敗すると 0 が返ります。
解説
ハンドルが不要になったら、CloseHandle関数でメモリから解放する必要があります。
環境情報
インクルード ファイル: api_system.sbp 内で定義済み
定義
Declare Function OpenProcess Lib "kernel32" _
(dwDesiredAccess As DWord, _
bInheritHandle As Long, _
dwProcessId As DWord) As HANDLE
dwDesiredAccess
プロセスへのアクセスに関するオプションを、以下の組み合わせで指定します。
フラグ 説明 PROCESS_ALL_ACCESS すべてのアクセス権を有効にします。 PROCESS_CREATE_PROCESS 内部で利用されます。 PROCESS_CREATE_THREAD 取得したハンドルを CreateRemoteThread 関数で使用できるようにします。 PROCESS_DUP_HANDLE 取得したハンドルを DuplicateHandle 関数で使用できるようにします。 PROCESS_QUERY_INFORMATION 取得したハンドルをGetExitCodeProcess関数、及びGetPriorityClass関数で使用できるようにします。 PROCESS_SET_QUOTA 取得したハンドルを AssignProcessToJobObject 関数、及び SetProcessWorkingSetSize 関数で使用できるようにします。 PROCESS_SET_INFORMATION 取得したハンドルをSetPriorityClass関数で使用できるようにします。 PROCESS_TERMINATE 取得したハンドルをTerminateProcess関数で使用できるようにします。 PROCESS_VM_OPERATION 取得したハンドルを VirtualProtectEx 関数、及び WriteProcessMemory 関数で使用できるようにします。 PROCESS_VM_READ 取得したハンドルを ReadProcessMemory 関数で使用できるようにします。 PROCESS_VM_WRITE 取得したハンドルを WriteProcessMemory 関数で使用できるようにします。 SYNCHRONIZE 取得したハンドルを待機関数で使用できるようにします(WindowsNT系OSのみ)。
TRUE を指定すると、プロセス作成時に取得したハンドルを継承します。それ以外は FALSE を指定します。
プロセスIDを指定します。
DLLファイル: kernel32.dll
CloseHandle関数、CreateProcess関数