调用远进程中的一个函数,是让远进程自己去调用,还是本地进程去调用?
另外,在什么条件下去调用?
事实上,这个比较类似 外_挂。如果条件比较确定,比如就是鼠标按下后才去调用,那么就可以HOOK鼠标消息宴掘野。如果条件散信不确定,而是你随意去调用,那么,就要看要调用的函数是不是一个可以预见的函数。比如,将要调用的是一个明确的DLL中的导出函数,那就直接去调用他即可。如果是远进程中自己的函数,那就比较费劲了。如果知道函数“原型”还好说,否则就要反汇编来分析函数原型。假设你知道是一个怎样的函数,比如类似于a( int a, int b)这样的。那么调用他的时候,要先从右往左压栈参数,再用一个call到a的地址即可。
还有最重要的一点,就是要用哪个线程去调用目晌喊标函数。是远进程中正在工作的线程?(远进程中可能存在好几个线程)。还是远进程中新建立一个线程然后去调用?
还是想在本地进程中调用??(在本地进程中是无法直接调用远进程中的函数的,除非那个函数在一个DLL中)
直接调用不行,但2个纯陪搭程序可以设定调用规则做拿来实现这个要求,其实就是A程序怎么通知B程序,要调用B程序的函数,同时把调用结果返回给A通常情况下可乱则以使用消息,就是A程序发个消息给B程序,然后B收到后执行函数,并将结果通知A,
也可以通过Socket通讯完成上述功能
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)