各位大侠,我现在遇到的问题是:我需要从另外一个应用程序的界面上实时读取我所需要的内容,该程序应该是基于单文档的分割窗体,它的内容在其中的一个分割窗体内部。请问如何实现?有现成的例子和代码更好,谢谢了!先给20分吧,不够再加!呵呵,俺可是穷人哦

解决方案 »

  1.   

    先用FindWindow()函数取得该窗体的句柄再说,其它的要看你取得什么内容了
      

  2.   

    GetWindowText好像返回的是窗口的标题哦。现在怎么样才能返回窗体内部客户区域中的文本内容,客户区域内部没有其他的控件。谢谢了
      

  3.   

    GetWindowText好像返回的是窗口的标题哦?
    没有啊~
    也可以获取控件的内容~~~
    你用的是什么控件阿??
      

  4.   

    对窗口程序可以发消息是因为该程序的句柄是全局的,windows知道是那个,窗口程序里面的内部控件的句柄就是你能读出来也没用,对外部程序来说就是个无效的数字。和GetWindowText更没有关系,根本不是一个进程空间的。
    用HOOK干这个也没多大意思。最方便有效率的就是用socket发送。
      

  5.   

    哦,对了,如果想获取的那个不是你开发的,那就只能用Hook来读取了。
      

  6.   

    窗口程序里面的内部控件的句柄就是你能读出来也没用,对外部程序来说就是个无效的数字。和GetWindowText更没有关系,根本不是一个进程空间的。
    ============================================================
    还有这回事????
    严重质疑
      

  7.   

    用sendmessage(hwnd,wm_gettext,0,缓存);
    然后直接操作缓存就可了。
      

  8.   

    解释一下,内部控件也可以收到外部发送的消息吗,顺便让我也张张知识,我的了解内部控件的句柄和进程内存一样,外部得到的地址是无效的。
    ================================================
    你有没有用过SPY?
    SPY可以看到程序上所有控件的类名,句柄,标题
    如果它收不到消息,怎么可能得到标题?
      

  9.   

    不信你试一下
    打开一个记事本
    得到上面那个EDIT的句柄
    然后给它发个WM_CLOSE
    你就会发现记事本不能编辑了