定制调试诊断工具和实用程序(8)
2006-07-20 11:42:17 来源:WEB开发网核心提示:本文假设你熟悉 Win32,DLL定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(一) 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(二) 定制调试诊断工具和实用程序&mda
本文假设你熟悉 Win32,DLL
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(一)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(二)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(三)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(四)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(五)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(六)
- 定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(七)
CreateRemoteThread,命令行及其它
你已经看到如何用 Win32 调试 API 来揭示进程是怎样加载 DLLs 以及加载到哪里的。现在让我们来揭开CreateRemoteThread 的秘密,这个函数允许你使用另外一个进程在其上下文中启动函数作为线程运行:
HANDLE CreateRemoteThread(
HANDLE hProcess, // 进程句柄
LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD-安全描述符
DWORD dwStackSize, // 初始栈大小
LPTHREAD_START_ROUTINE lpStartAddress, // 线程函数
LPVOID lpParameter, // 线程参数
DWORD dwCreationFlags, // 创建选项
LPDWORD lpThreadId // 线程标示符
);
lpStartAddress 应该是拟在另一个进程环境中执行的线程过程地址。这个函数的窍门在于 lpStartAddress 参数必须是另一个进程地址空间中的地址,这也是它为什么难以使用的原因。如果你不想重新创建代码程序集,那么就将它拷贝到另一个进程地址空间即可, 你可以使用一个较容易的解决方法。
- ››调试SQL server 2008功能设置
- ››调试JavaScript错误
- ››定制个性化的对话框窗口类
- ››定制 SWT/RCP 界面:如何编写一个漂亮的 SWT/RCP ...
- ››调试和测试 Swing 代码
- ››定制基于 Visual studio 2005 平台 Windows CE(AR...
- ››定制版黑雨 blackra1n 越狱3.1.2 全系 iPhone
- ››调试集成 Java 和 C/C++ 的代码
- ››定制 Eclipse RCP 应用程序,第 1 部分: 可与 SWT...
- ››调试JavaScript脚本程序(Firefox篇)
- ››调试JavaScript/VB Script脚本程序(ASP.NET篇)
- ››调试JavaScript/VB Script脚本程序(Wscript篇)
赞助商链接