如何拦截程序的执行?

maipian 2002-06-07 09:43:34
公司有一个服务程序(无源码),它接受用户请求,然后执行一个exe响应请求。
假设此exe为response.exe
现在要在上面增加一些功能,由于无源码,只能每当response.exe被启动时,我随之
启动一个程序来完成功能。
问题是我如何得知response.exe被启动。我试过用轮询的方法,隔一段时间(500ms)
枚举进程,这方法可以,但是太费服务器资源。

谁有更好的办法吗?(我想那些杀毒软件不可能是用枚举进程的方法吧,它在程序
执行前已经拦下来了)
...全文
106 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
maipian 2002-06-07
  • 打赏
  • 举报
回复
to lightest

你的办法我试了不太行,因为response.exe应该是有执行参数的
Lightest 2002-06-07
  • 打赏
  • 举报
回复
把response.exe改名为oldresponse.exe,一个程序取名response.exe,在这个程序中调用oldresponse.exe
maipian 2002-06-07
  • 打赏
  • 举报
回复
hook createprocess是个好主意:)
具体应该怎么做呢?能否给点资料?

另外,怎么给分的?没找到什么地方给分
慕容飞 2002-06-07
  • 打赏
  • 举报
回复
API Hook
CreateProcess()
richincsdn2 2002-06-07
  • 打赏
  • 举报
回复
强裂关猪
maipian 2002-06-07
  • 打赏
  • 举报
回复
response.exe没窗口,真是不幸
kingzai 2002-06-07
  • 打赏
  • 举报
回复
做一个钩子,监控response.exe的WM_CREATE消息,见
http://www.csdn.net/expert/topic/757/757510.xml?temp=7.160586E-02
kingzai 2002-06-07
  • 打赏
  • 举报
回复
Detecting Windows NT/2K process execution
http://www.codeproject.com/threads/procmon.asp
maipian 2002-06-07
  • 打赏
  • 举报
回复
谢谢masterz()

你说的方法有例子代码吗? 我好研究研究
masterz 2002-06-07
  • 打赏
  • 举报
回复
two methods,
1. Implete IShellExecuteHook,
IShellExecuteHook::Execute

2.
To log when processes and threads start and stop, we use the barely documented functions PsSetCreateProcessNotifyRoutine and PsSetCreateThreadNotifyRoutine. With them, we can have the system call a given logging function when a process (or thread) is created or destroyed.

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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