プロセスのダンプを作成するには,Debug Help Libraryの力を借ります.
system32には古いバージョンが入っているかと思いますが,
最新のdbghelp.dllは,Debugging Tools for Windowsに含まれています.(2009/09/08現在再頒布可能です)
ヘッダファイルstdafx.hに以下のコードを追加します.
#include <dbghelp.h> #pragma comment( lib , "dbghelp.lib" )
MiniDumpWriteDump関数を使います.
第3引数のMINIDUMP_TYPEの例を示します.(参考までに)
フラグ(MINIDUMP_TYPE) | dbghelp.dll |
|---|---|
MiniDumpWithDataSegs | MiniDumpWithProcessThreadData | MiniDumpWithHandleData | MiniDumpWithPrivateReadWriteMemory | MiniDumpWithUnloadedModules | MiniDumpWithFullMemoryInfo | バージョン6.1以降 |
MiniDumpWithDataSegs | MiniDumpWithUnloadedModules | MiniDumpWithProcessThreadData | バージョン5.1未実装 |
また,プロセスの列挙やプロセス名の取得を行うには,Process Status API(PSAPI)を使用することができます.
PSAPIを使用するには,ヘッダファイルstdafx.hに以下のコードを追加します.
#include <lpsapi.h> #pragma comment( lib , "psapi.lib" )
0 件のコメント:
コメントを投稿