如何获取一个外部程序的ListView中的某条记录?
行家里手们,我先谢谢各位啦。该ListView无法用鼠标或者键盘选定记录。
(该条件可以忽略,能获得全部记录也可以,另想办法过滤记录)

解决方案 »

  1.   

    捕获它的句柄并不难。
    但是如何获取ListView的内容就不知道怎么下手了。
    各位高人帮帮忙吧。
    小弟分不多,304,能解决全给你。
    谢谢!
      

  2.   

    我做过类似的项目,我把我的经验写出来供你参考。
    本来一个外部程序是这样的:双击其中的一条记录,它会出来一个信息修改窗口,输入信息之后,按下“确定”按钮进行保存。我要实现的就是用我的程序去控制它,全部自动化。就是给定一个ID,查找Listview中所有记录的Caption属性,如果相同则将它选中,然后自动双击,弹出对话框。那时我查询了一下ListView的API函数,用ListView_GetItemText没法获得内容。后来我发现这是因为我的程序和目标程序不是同一个进程的原因。于是我用一个SetWindowsHookEx进入那个目标的空间,这时再用ListView_GetItemText就成功了。所以我认为你首先必须掌握使用勾子进入目标程序空间的技术,由进入目标进程的DLL负责去获取ListView记录,然后通过各种手段将取得的信息送回主程序。如果这个能实现了,那程序也就成功了。
    在写程序时要仔细一点。
      

  3.   

    http://blog.csdn.net/zswangii/archive/2004/03/25/14322.aspx
      

  4.   

    Form.listview.items.item[n].caption或者Form.listview.items.item[n].subitem.string[n]
      

  5.   

    To: ChenJIM1981(ChenJIM1981) 
    朋友的思路很有用,多谢啦
    To: jinjazz(近身剪(N-P攻略)) 
    多谢朋友指点
    To: danny800301(笑看风云)
    我是想获取其他程序中的listview的内容,呵呵
      

  6.   

    多谢ChenJIM1981(ChenJIM1981)和jinjazz(近身剪(N-P攻略)) 两位的指点
    有了思路和具体实现方法,这下好办了,十分感激两位
    danny800301(笑看风云)朋友好像弄错我的意思了,不过还是要谢谢你