作者UNARYvvv (有趣生活)
看板C_and_CPP
标题Re: [问题] 如何透过dll控制其他程式
时间Thu May 14 12:46:18 2009
※ 引述《freehand1122 (jychen)》之铭言:
: 假设我撰写两个程式A,B跟一个dll档
: B程式有一个function是做简单的运算,最後回传值印出
: 如果今天我想用A程式透过dll去呼叫B程式的function,请问该如何做
: 这些似乎跟hook 远端程序控制有关
: 虽然观念上大概懂,但实作还是遇到很多困难(程式底子不好..)
: 恳请板上高手能够指点,或者可以提供范例参考
: 感谢
我也是觉得 "透过 DLL 呼叫 B 程式 的 function"
中间多一层似乎不必要
既然 A,B 都是由自己撰写
或许这里需要的只是透过一些 IPC 机制互传讯息?
如果 A 要的只是 B 印出的内容,那用 pipe 也就 OK 了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.168.1.121
※ 编辑: UNARYvvv 来自: 218.168.1.121 (05/14 12:51)
1F:推 freehand1122:当然只是在做练习..那如果B不是自己的程式该怎麽做? 05/14 14:07
2F:→ freehand1122:是否只要知道B的函式的记忆体空间就有办法呼叫? 05/14 14:07
3F:→ UNARYvvv:是的 那就要知道 B 程式中实际函式的起始位址了 05/14 14:27
4F:→ UNARYvvv:不过一般程式内部的 function 不会导出 (exported) 05/14 14:29
5F:→ UNARYvvv:可能就要用些比较麻烦的手段来找 05/14 14:30
6F:→ UNARYvvv:建议可以从 "API hooking" 开始找起 资料很多 05/14 14:31
7F:→ UNARYvvv:先从定位&拦截公开的 API 下手看看 05/14 14:34