很有挑战的问题! 内存问题

autoblue 2005-03-29 09:27:58
WIN NT下有个第三方开发的程序,没有原代码,不可能改动。
其中由于健壮性不够,有可能发生内存不能读之类的内存错误。
现在打算设计一个守护进程,监视第三方系统运行情况。

问题是,我如何可以获取内存不能读之类的错误呢??此时原进程并没有退出,而只是弹出是否调试的对话框。我希望可以获取到系统消息,当然其他有效途径也请赐教!!
谢谢!!!
...全文
155 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ah 2005-04-04
  • 打赏
  • 举报
回复
有一个很简单的方法,修改注册表,将自动调试的标志改为0就不会再有调试框出现了
fanqing 2005-04-03
  • 打赏
  • 举报
回复
学习
xlt123 2005-04-01
  • 打赏
  • 举报
回复
关于DebugAPI的使用,请参考
http://community.csdn.net/Expert/topic/3839/3839473.xml?temp=.1848261
autoblue 2005-03-31
  • 打赏
  • 举报
回复
可是,我的调试进程并没有退出阿
为什么没有响应呢
oyljerry 2005-03-31
  • 打赏
  • 举报
回复
调试进程退出了会导致进程也退出
goodheartppl 2005-03-31
  • 打赏
  • 举报
回复
你可以不停的FINDWINDOW如果出现问题就重新开启
autoblue 2005-03-30
  • 打赏
  • 举报
回复
我使用
rt=CreateProcess(NULL, pszCmd, NULL, NULL, TRUE, DEBUG_PROCESS, NULL, NULL, &si, &pro);
创建一个被调试进程,为什么返回成功,进程管理器中也显示产生了新进程,新进程却不工作,好像处于挂起状态???

另外如果
rt=CreateProcess(NULL, pszCmd, NULL, NULL, TRUE, 0 , NULL, NULL, &si, &pro);
则可创建正常的进程。
我尝试使用rt=DebugActiveProcess(pro.dwProcessId);取得对该产生进程的调试权
但执行该函数后,此进程立刻有没有响应了.

好奇怪啊!!
oyljerry 2005-03-30
  • 打赏
  • 举报
回复
捕获错误弹出对话框
autoblue 2005-03-29
  • 打赏
  • 举报
回复
我真的很菜,还没看明白你那篇文章
关键是被监控的对象代码未知,且不能改动
EnochShen 2005-03-29
  • 打赏
  • 举报
回复
WIN32 - Inside Debug API
http://www.woodmann.com/fravia/iceman1.htm
跟踪API
http://yant12.77169.com/

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧