Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1333856
  • 博文数量: 953
  • 博客积分: 52320
  • 博客等级: 大将
  • 技术积分: 13090
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 13:42
文章分类

全部博文(953)

文章存档

2011年(1)

2008年(952)

我的朋友

分类: C/C++

2008-08-05 14:00:18

下载本文示例代码
下载源代码:Debugsrc0206.exe (583KB)
原文出处:Windows XP:Escape from DLL Hell with Custom Debugging and Instrumentation Tools and Utilities


本文假设你熟悉 Win32,DLL
  • 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(一)
  • 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(二)

如何获取进程的命令行
 

下载本文示例代码
方法 描述
GetName 以NULL作为参数,调用 GetModuleBaseName ,最后去掉扩展名 “.EXE”
GetFileName 以NULL作为参数,调用 GetModuleFileNameEx
GetMainWindowHandle 参见GetMainWindowHandle
GetMainWindowTitle
GetParentProcessID 用ProcessBasicInformation作为参数调用NtQueryInformationProcess
GetKERNELHandleCount 用ProcessHandleCount作为参数调用NtQueryInformationProcess
GetUSERHandleCount 用GR_USEROBJECTS作为参数调用GetGuiResources
GetGDIHandleCount 用GR_GDIOBJECTS作为参数调用GetGuiResources
GetWorkingSet 调用GetProcessMemoryInfo
GetCmdLine 参见GetProcessCmdLine
GetOwner 参见GetProcessOwner的细节
GetSessionID ProcessIdToSessionId (参见对快速用户转换的讨论部分——Windows XP的一个新特性)
GetModuleList CModuleList是一个对EnumProcessModules 和GetModuleFileNameEx的打包类
GetChildrenCount 以及子进程清单 要获取某个进程的子进程列表,目前还没这样的API(即便有也未公开)可供使用。但是,因为某个进程的父进程是已知的,所以将某个进程加到其父进程的子进程列表中不难(参见SetChildrenList的实现)
阅读(81) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~