银行处理A业务时,需要完成B业务,才能继续进行A业务的处理,而B业务的处理依赖A业务的业务单号,A业务相关的是一整套已经完善的系统处理,B业务相关的模块正在开发,
现在的需求是开启B业务的应用程序时,能够对A 业务的当前窗体自动锁屏,然后通过外挂程序获取A业务的业务单号,填充到B业务的窗体上。
请问 : 如何在B业务的应用程序中获取A业务的业务单号,以及其原理。。。
小女子之前一直在做java,初学Delphi,还请说仔细些~在此谢过·
------解决方案--------------------------------------------------------
以前写过一个,有3种方法可以实现,不能实现的是这个东西有可能是图片啊:
方法A句柄取得外部程序中的文本
比较麻烦,尤其是对方程序非常大,控件非常多的情况下。
1找到A程序的窗口句柄
2遍历A程序的所有控件
3找到显示业务单号的控件
4取得需要的文本
方法B模拟鼠标键盘操作取得外部程序的文本
有限制,就是这个业务单号,必须能够复制到剪贴板,个别外部程序不能用
1找到A程序的窗口句柄
2确定你需要取得文本的相对坐标
3模拟键盘鼠标操作,拷贝到剪贴板
4从剪贴板上取得需要的文本
方法C钩子,或者内存中取得相关文本,写起来简单,弄懂比较麻烦,我也不会,大富翁网友提供
1找相应的内存空间/写一个输出文本的钩子程序
2查找对应的值/判断外部程序输出业务单号的
3取得文本/得到相应的文本