有Handle属性的,比如:Memo1.Handle

解决方案 »

  1.   

    对窗口进行枚举,得到你想要的窗口(Memo or RichEdit也是一种窗口)
      

  2.   

    呵呵 :-)方法比较简单哦!
    我想你会用Timer(或类似的)做吧!随时监视系统当前的焦点。如果系统当前的焦点是TMemo或TRichEdit的话,
    你就下手------------从偷它的内容????是不是这样的?//我这只是猜想,你自己没说清楚!!
      

  3.   

    [email protected],忘了说了,谢谢
      

  4.   

    enumwindow得到父窗口,enumchildwindow得到子窗口,然后通过getwindowclass得到类名判断是否为edit类,再发送wm_gettext就得到了内容,注意不能用getwindowtext,这个函数只能得到当前线程的组件的Caption.如果要得到密码框的内容可以先判断窗体的style(用getwindowlong),如果为Password_style就可以下手了,但在win2000下就不行了。我最近研究了一套能在2000下使用的密码盗取系统,不过要用到类似金山词霸的功能了,在次不便说明
      

  5.   

    http://www.delphibbs.com/delphibbs/dispq.asp?lid=819474
    看这个,不清楚再联系.
      

  6.   

    如果你知道你要操作的具体程序的话(如oicq.exe)可以这样:
    handle:=findwindow('目标程序classname','目标程序标题');
    handle:=findwindowex(handle,0,'目标程序下级子窗口classname','目标程序子窗口标题');
    ..........
    handle:=findwindowex(handle,0,'目标程序下级子窗口classname','目标程序子窗口标题');
    intLength:=sendmessage(handle,wm_gettext,0,0)+1;;//取得密码长度
    sendmessage(myhwnd,wm_gettext,lens,longint(@pass));//取得密码
    //其中 pass:array [0..254] of char;
    // intLength:integer;