wondows下面的稍微高级一点的开发问题
任务:debug模式Spy一个程序。
CreateProcess(NULL, (LPTSTR)(LPCTSTR)m_pszCmd, NULL, NULL, FALSE,
DEBUG_ONLY_THIS_PROCESS,
NULL, NULL, &st, &pro) )
函数以debug方式创建一个新得进程,然后WaitForDebugEvent函数获取debug信息
得到一系列的pEvent;
对于新载入dll产生的debug信息:
case LOAD_DLL_DEBUG_EVENT:
用pEvent->u.CreateProcessInfo.hFile 取得该dll文件的handle,其中pEvent是
载入事件产生的debug信息结构体。
问题是:这个方法在2000下工作良好,但是在XP底下的话,得到的handle却是空的
请问:这种情况下,XP是不是不能用这样的方法获取hFile
谢谢
问题点数:100、回复次数:12Top
1 楼homeyang()回复于 2004-08-02 22:43:06 得分 0
upTop
2 楼sohou(2007的春天)回复于 2004-08-03 00:09:09 得分 20
没搞过,MARKTop
3 楼holyeagle(一杯清茶)回复于 2004-08-03 08:11:17 得分 20
xp下加载dll是否成功?Top
4 楼homeyang()回复于 2004-08-03 11:00:40 得分 0
to holyeagle
是成功了的,用api spy可以清楚地看到该dll已经在该进程里面啦Top
5 楼homeyang()回复于 2004-08-03 11:43:49 得分 0
我又试了一下好像系统的dll可以取到,但有一些不是系统的dll就取不到啦,这是为什么呢?有什么办法可以解决啊?Top
6 楼homeyang()回复于 2004-08-03 16:42:02 得分 0
upTop
7 楼microyzy(人不在牛,分高就行;分不在高,人牛也行)回复于 2004-08-09 16:32:28 得分 10
没作过,学习Top
8 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2004-08-09 16:48:22 得分 10
关注一下!Top
9 楼flyelf(空谷清音)回复于 2004-08-09 20:11:21 得分 10
表示关注... ...Top
10 楼fbmsf(FBM)回复于 2004-08-09 20:33:15 得分 10
msdn 没有特别说明xp 有什么问题。
你可否通过lpImageName; 来得到hFile
还有你看看其他的成员
HANDLE hFile;
LPVOID lpBaseOfDll;
DWORD dwDebugInfoFileOffset;
DWORD nDebugInfoSize;
LPVOID lpImageName;
WORD fUnicode;
Top
11 楼laiyiling(陌生人[MVP])回复于 2004-08-09 20:33:55 得分 10
gzTop
12 楼Hawk_lp(流浪者)回复于 2004-08-09 21:40:35 得分 10
upTop




