Winapi 任务管理器使用什么API转储进程
谁能告诉我windows内置任务管理器使用什么API来转储我选择的进程 如果我是对的,那不是迷你垃圾桶。如果不是这个,那又怎样?Winapi 任务管理器使用什么API转储进程,winapi,dump,taskmanager,Winapi,Dump,Taskmanager,谁能告诉我windows内置任务管理器使用什么API来转储我选择的进程 如果我是对的,那不是迷你垃圾桶。如果不是这个,那又怎样? 非常感谢 只有一种方法,MiniDumpWriteDump()就是方法 运行dumpbin.exe/imports c:\windows\system32\taskmgr.exe查看它使用的函数,您可以很容易地看到这一点。您将看到它从DbgHelp.dll导入minidumpWriteMap。这也是DbgHelp.dll最近随Windows提供的原因。只有一种方法,M
非常感谢 只有一种方法,MiniDumpWriteDump()就是方法
运行
dumpbin.exe/imports c:\windows\system32\taskmgr.exe
查看它使用的函数,您可以很容易地看到这一点。您将看到它从DbgHelp.dll导入minidumpWriteMap。这也是DbgHelp.dll最近随Windows提供的原因。只有一种方法,MiniDumpWriteDump()就是这种方法
运行
dumpbin.exe/imports c:\windows\system32\taskmgr.exe
查看它使用的函数,您可以很容易地看到这一点。您将看到它从DbgHelp.dll导入minidumpWriteMap。这也是DbgHelp.dll最近随Windows提供的原因。简短回答,它使用了MiniDumpWriteDump
详细信息(跳过了一些不必要的详细信息):
在Windows 7版本中,每当您要转储进程时,任务管理器可执行文件中都会调用一些包装器函数,以及进程ID和可执行文件名,例如foo.exe
它使用OpenProcess
获取进程句柄,并使用HeapAlloc
将其存储在堆中分配的某些结构中
它使用gettempathw
获取某些局部变量中的临时目录,并使用PathAppendW
附加可执行文件名,例如foo.exe
,并使用PathRemoveExtension
删除扩展名,使其变为foo
而不使用.exe
,然后使用PathAddExtensionW
添加新扩展名,并调用PathYetAnotherMakeUniqueName
检查路径是否未使用或生成类似foo(2).DMP的新路径。最后,它使用CreateFile
获得文件句柄
它使用DuplicateHandle
复制句柄,并将其存储在该结构中,然后创建一个新线程,并将该结构作为参数传递给线程函数
线程使用参数MiniDumpWriteDump
调用DumpType
设置为0x1826
:
MiniDumpWithFullMemory | MiniDumpWithHandleData | MiniDumpWithUnloadedModules | MiniDumpWithFullMemoryInfo | MiniDumpWithThreadInfo
简短回答,它使用minidumpWriteDomainp
详细信息(跳过了一些不必要的详细信息):
在Windows 7版本中,每当您要转储进程时,任务管理器可执行文件中都会调用一些包装器函数,以及进程ID和可执行文件名,例如foo.exe
它使用OpenProcess
获取进程句柄,并使用HeapAlloc
将其存储在堆中分配的某些结构中
它使用gettempathw
获取某些局部变量中的临时目录,并使用PathAppendW
附加可执行文件名,例如foo.exe
,并使用PathRemoveExtension
删除扩展名,使其变为foo
而不使用.exe
,然后使用PathAddExtensionW
添加新扩展名,并调用PathYetAnotherMakeUniqueName
检查路径是否未使用或生成类似foo(2).DMP的新路径。最后,它使用CreateFile
获得文件句柄
它使用DuplicateHandle
复制句柄,并将其存储在该结构中,然后创建一个新线程,并将该结构作为参数传递给线程函数
线程使用参数MiniDumpWriteDump
调用DumpType
设置为0x1826
:
MiniDumpWithFullMemory | MiniDumpWithHandleData | MiniDumpWithUnloadedModules | MiniDumpWithFullMemoryInfo | MiniDumpWithThreadInfo