如何取得另一程序的控件名称?

eyusir 2009-12-07 02:36:08
如何取得另一程序的dbgrid的名称和数据内容.
...全文
194 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
dd_zhouqian 2010-01-15
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 liangpei2008 的回复:]
DEMO
[/Quote]
thanks,我也学习下
liangpei2008 2010-01-15
  • 打赏
  • 举报
回复
liangpei2008 2010-01-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 eyusir 的回复:]
这个问题是很难还是不可能...
[/Quote]
写一个DLL,依靠HOOK注入到目的进程中,在DLL内重写一下FindControl方法(EXE中与DLL中的HInstance是不一样的ControlAtomString := Format('ControlOfs%.8X%.8X', [GETMODULEHANDLE(nil), GetCurrentThreadID])),然后遍历目标进程的控件,找到DBGRID,就能找到其DATASET,从而直接读取数据集中的数据,并把数据记录到文本文件或用跨进程通信的方式发到显示程序上
Dolphin_001 2010-01-15
  • 打赏
  • 举报
回复
主动拿相当于写外挂了。。但是发个消息过去,请对方发给你,这就容易多了了。
kfcoffe 2010-01-15
  • 打赏
  • 举报
回复
以前好像有讨论过类似的问题,
FOREST169 2010-01-15
  • 打赏
  • 举报
回复
很难,我也想知道。
slmax1 2009-12-17
  • 打赏
  • 举报
回复
如果对方程序dbgrid的数据是显示出来的话,为何不考虑下截图?


胡乱想的,
zgplyl 2009-12-17
  • 打赏
  • 举报
回复
另外一个程序是一个类吗? self.name
tcdzyq 2009-12-09
  • 打赏
  • 举报
回复
自己的程序好办,别人的程序呵呵,不可能.编译完之后所有 name 之类的都变成地址了,都不存在了还怎么读.
eyusir 2009-12-09
  • 打赏
  • 举报
回复
这个问题是很难还是不可能...
贝隆 2009-12-07
  • 打赏
  • 举报
回复
帮顶
lengfengxiaodao 2009-12-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 mwy654321 的回复:]
如果能取到我给400分都愿意。
[/Quote]
分能买房不
无条件为你 2009-12-07
  • 打赏
  • 举报
回复
如果能取到我给400分都愿意。
无条件为你 2009-12-07
  • 打赏
  • 举报
回复
外部dbgrid数据很难取到,别说40分,如果能取到我给400分都原因。

建议你放弃。
hjkto 2009-12-07
  • 打赏
  • 举报
回复
up
  • 打赏
  • 举报
回复
句柄倒是可以取到,名称……不可能吧,变量名本来就不是真正的名字……既然没有,何谈取到?
gyk120 2009-12-07
  • 打赏
  • 举报
回复
帮顶,应该可以注入之后ReadProcessMemory

1,183

社区成员

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

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