请教各位专家
我自己写了一个程序,如何去访问另一个正在运行的程序的内容,比放说,我现在开启我的程序,另外开启千千静听这个软件,然后我鼠标点中千千静听里左下角列表中的某一项后,我的程序能够得到这一项的标题,艺术家以及其他的一些数据.希望高手能够倾心解答.

解决方案 »

  1.   

    FindWindow先找到你要的窗口,然后再EnumChildWindows找到你要的子窗口,然后再获得相应的数据信息。
      

  2.   

    现在出现了一个问题,使用FindWindow时,要传入一个参数,即窗口的名称,我传了一个“千千静听”这个名字,可是返回的值为空。这是怎么回事,是不时我传入的窗口名称有误。如果是这个原因的话,要是我想获取任意一个正在运行的软件的数据,那部是都得知道其窗口的名字?请各位高手再倾心解答一下。谢谢
      

  3.   

    FindWindow的参数你还是查一下MSDN吧
      

  4.   

    超强的SPY++啊~
    编程必定少不了!
      

  5.   

    楼上的方法可能很难奏效,实际上是访问另一个进程的数据,由于Windows进程之间空间独立,有各自的虚拟空间,所以访问另一个进程的数据比较困难,尤其是目标进程没有提供进程间通讯接口的情况下(如本例中的千千静听),建议使用Hook函数,hook鼠标消息和Textout函数
      

  6.   

    谢谢各位的解答
    yifanfeng0913已经理解我的意思了,如果按照你所说的Hook函数,能不能举个很简单的例子呢
    就拿访问千千静听来说
    谢谢
      

  7.   

    http://cache.baidu.com/c?m=9d78d513d98710b8589cce23504fc321590a8f397a9192027ea78e55d6211e564711e9b971795b13d3b22d3a5eb21301b5a72b72350120b59ec88257dfb98f232d8f26307b0b8636489546f1&p=8e759a43d3811ffc57ea8e38424c&user=baidu跟LZ的需求一样
      

  8.   

    hook的例子,网上搜一下,很多的,要学会自己动手啊,朋友,别人只能给你一个思路一个方法,其他都得自己想办法,这样对你的能力提高会快很多。
      

  9.   

    呵呵这个问题用spy++很好解决的