1:
DLL注入的问题。就是我一个程序。打开就注入进一个程序!但是。每次打开都注入一次。而我和程序又有可能连着打开很多次。因为是用的循环一直监视一些窗体。
会造成占用cpu PF非常高甚至X机。要怎么检测只注入一次,就是如果已经注入过了就不再注入了!2: DLL注入后。1分钟检测一次某个窗体不存在的话就关闭自身DLL。要怎么结束自身的注入退出呢。 希望给具体代码!!!小弟在此先谢过拉。
DLL注入的问题。就是我一个程序。打开就注入进一个程序!但是。每次打开都注入一次。而我和程序又有可能连着打开很多次。因为是用的循环一直监视一些窗体。
会造成占用cpu PF非常高甚至X机。要怎么检测只注入一次,就是如果已经注入过了就不再注入了!2: DLL注入后。1分钟检测一次某个窗体不存在的话就关闭自身DLL。要怎么结束自身的注入退出呢。 希望给具体代码!!!小弟在此先谢过拉。
解决方案 »
- 有人能把我的帖子给结了吗?
- 如何全编译?编译后EXE可在任何一台Windows工作站上运行而不需要打包?
- 在access数据库中怎么加入图片?在delphi中怎样用dbimage调用数据库中的图片?
- 请问怎样在程序运行是动态添加ActionManager里面的Action啊~
- 请教:用ADO连接数据库,如果整个系统只用一个TADOConnection,其他部分都通过它与数据库交互,请问如何处理???
- 怎样让combobox1不能被选择
- 关于fastreport2.4的一个小问题,在线等,,
- 超级难题非超级软件高高手勿进
- 关于RB的问题,很有意思的报表
- 真难受!怎么会出现record changed by another user?
- 关于Delphi内存分配的问题!
- delphi writeln 能设置字体和字号吗
DLL注入的问题。就是我一个程序。打开就注入进一个程序!但是。每次打开都注入一次。而我和程序又有可能连着打开很多次。因为是用的循环一直监视一些窗体。
会造成占用cpu PF非常高甚至X机。要怎么检测只注入一次,就是如果已经注入过了就不再注入了! 创建互斥体比如CreateMutex、CreateSimphone.... 判断互斥体是否已经存在,如果允许宿主程序开多个实例那么可以在互斥体的名称包含进程ID来区分2: DLL注入后。1分钟检测一次某个窗体不存在的话就关闭自身DLL。要怎么结束自身的注入退出呢。 希望给具体代码!!!小弟在此先谢过拉。
最简单的方法还是用汇编写
push 0
push esp
push 0
push 0
call getmodulehandle
push eax
push Freelibrary
push 4
push 0
push createthread
ret在delphi里还是要对getmodulehandle Freelibrary createthread 地址处理一下(分别用GetProcAddress取真实地址,delphi call Api利用jmp call方式,并非真实api地址)。。