CreateToolhelp32Snapshot
Takes
a snapshot of the processes and the heaps, modules, and threads used by the
processes.
HANDLE WINAPI CreateToolhelp32Snapshot(DWORD
dwFlags,
DWORD th32ProcessID);
Parameters
dwFlags
Flags
specifying portions of the system to include in the snapshot. These values are
defined:
TH32CS_INHERIT |
Indicates
that the snapshot handle is to be inheritable. |
TH32CS_SNAPALL |
Equivalent
to specifying the TH32CS_SNAPHEAPLIST, TH32CS_SNAPMODULE, TH32CS_SNAPPROCESS,
and TH32CS_SNAPTHREAD values. |
TH32CS_SNAPHEAPLIST |
Includes
the heap list of the specified process
in the snapshot. |
TH32CS_SNAPMODULE |
Includes
the module list of the specified process
in the snapshot. |
TH32CS_SNAPPROCESS |
Includes
the Win32 process list in the snapshot. |
TH32CS_SNAPTHREAD |
Includes
the Win32 thread list in the snapshot. |
th32ProcessID
Process identifier. This parameter can be zero to indicate the current
process. This parameter is used when the TH32CS_SNAPHEAPLIST or
TH32CS_SNAPMODULE value is specified. Otherwise, it is ignored.
Return Value
Returns an
open handle to the specified snapshot if successful or - 1 otherwise.
Remarks
The
snapshot taken by this function is examined by the other tool help functions to
provide their results. Access to the snapshot is read only. The snapshot handle
acts like an object handle and is subject to the same rules regarding which
processes and threads it is valid in.
To
retrieve an extended error status code generated by this function, use the GetLastError
To
destroy the snapshot, use the CloseHandle