【发布时间】:2010-11-08 02:25:03
【问题描述】:
进程 ID 是唯一标识进程的数字。进程句柄也是唯一标识进程内核对象的数字。
为什么我们都需要它们,因为它们中的任何一个都可以识别一个进程。
我认为答案可能在于进程与进程内核对象之间的映射关系。是否可以将多个进程内核对象映射到单个进程?每个进程内核对象都有自己的进程句柄。这样每个进程内核对象都可以代表不同的访问模式或类似的东西。
当我使用MiniDumpWriteDump() 函数时,我想到了这个问题,它是这样声明的:
BOOL WINAPI MiniDumpWriteDump(
__in HANDLE hProcess,
__in DWORD ProcessId,
__in HANDLE hFile,
__in MINIDUMP_TYPE DumpType,
__in PMINIDUMP_EXCEPTION_INFORMATION ExceptionParam,
__in PMINIDUMP_USER_STREAM_INFORMATION UserStreamParam,
__in PMINIDUMP_CALLBACK_INFORMATION CallbackParam
);
所以它的参数包括进程ID和进程句柄。我只是不知道为什么必须同时拥有它们。
非常感谢您的见解。
【问题讨论】: