怎样获取其他程序DrawGrid中的内容?

crbb 2009-12-22 09:51:13
怎样获取其他程序DrawGrid中的内容?
...全文
143 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
duduxia 2010-01-05
  • 打赏
  • 举报
回复
收藏了。
qinjs 2010-01-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zswang 的回复:]
跨进程访问VCL的一个用例(Delphi6、TurboDelphi测试通过)
[/Quote]

水哥,这个用例有个问题,是关于 FindControl 的:

假设被注入的程序 Delphi6Demo.exe 界面生成复杂,要获取的窗体不是 Delphi6Demo.exe 创建,而是 Delphi6Demo.exe 加载了另外的dll文件生成的(很多程序是这样,比如IE等),那么这个时候 FindControl 就取不到对象了。

这种情况可以用Spy++查看到,比如水哥的用例里,可以查看 Delphi6Demo.exe 窗体里的Form1和Edit1,属性检查器中的实例句柄都是一样的,我试过增加几层控件,比如中间增加几层TPanel,用FindControl 都可以取到想取的对象(比如DBgrid)。但如果像IE的,通过加载dll而生成的窗体,其实例句柄和首层窗体 IEFrame 的实例句柄是不一样的,这种情况下 FindControl 就取不到对象了。

这个问题我也还没有办法解决,还请水哥出手。
馒头xworange 2009-12-24
  • 打赏
  • 举报
回复
水哥...太牛B了!
crbb 2009-12-24
  • 打赏
  • 举报
回复
hook 可以 我想获得这个画布中的所有字符串
xzhifei 2009-12-23
  • 打赏
  • 举报
回复
DrawGrid只负责提供画布进行操作,它不会保存任何需要显示的文字内容,你想要获取它的内容,不如直接向图像识别考虑
hjkto 2009-12-23
  • 打赏
  • 举报
回复
学习了,水哥

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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