パラメータ
dwDesiredAccess
プロセスオブジェクトで認められるアクセス方法を指定する。
セキュリティ機能をサポートしているシステムでは、このアクセス権を、アクセス対象のプロセスに関係するセキュリティ記述子と比較する。
STANDARD_RIGHTS_REQUIRED アクセスフラグ、あるいは次のフラグの 1 つまたは複数を指定できる。
値
|
説明
|
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
|
Windows NT/2000:このプロセスが終了するのを待つために、wait functions(待機関数)がこ
のプロセスのハンドルを使うことを認める。
|
bInheritHandle
現在のプロセスが新しいプロセスを作成する際に、新しいプロセスが、取得されたハンドルを継承できるかどうかを指定する。
TRUE を指定すると、新しいプロセスはそのハンドルを継承する。
dwProcessId
開くべきプロセスの識別子を指定する。
戻り値
関数が成功すると、指定したプロセスの、既に開いているハンドルが返る。
関数が失敗すると、NULL が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。
解説
OpenProcess 関数で適切なアクセス権を指定すると、wait
functions(待機関数)のようにプロセス識別子を必要とする任意の関数は、
OpenProcess 関数を使って取得したハンドルを利用できる。
ハンドルが不要になったときは、CloseHandle 関数を使う。 |