,我在写一个网吧操作监视程序,把用户使用的任意窗体包括浏览器的内容即时输入到Form1.Memo1里处理,如何实现?

解决方案 »

  1.   

    浏览器的内容有各种型类,而memo1只存字符类型。 
    如果只存某一个字符串还是好办。
      

  2.   

    没有这样的组件,你可以通过消息获得当前光标处的内容。
    1。再用findwindow找到该子窗体。
    2,用getwindow 和Getwindowtext,getclassname得到类的名称。
    3.用wm_gettext获得当前的字符串
      

  3.   

    就是对一切包括用户可以看见按钮和菜单的captions,Edits出现的所有关键字分析,包括玩游戏了,不必抓图监视,够自动化嘛,思路应该不错
      

  4.   

    APIHOOK,拦截所有和TextOut等和字符有关的API!有点像全屏取词!呵呵!不过这样做肯定会影像性能,速度慢了谁还来上网?一般对浏览监视软件可不是这样做的,是制作一个ActiveX控件,注册让IE自行加载!通过相应COM接口对相关事件进行拦截,预先获得网址,网页内容进行判断,再进行处理操作!
      

  5.   

    这些复制代码如何?
    procedure CopyButtonClick(Sender: TObject);begin   If ActiveControl is TMemo then TMemo(ActiveControl).CopyToClipboard;   If ActiveControl is TDBMemo then TDBMemo(ActiveControl).CopyToClipboard;   If ActiveControl is TEdit then TEdit(ActiveControl).CopyToClipboard;   If ActiveControl is TDBedit then TDBedit(ActiveControl).CopyToClipboard;end;
    procedure PasteButtonClick(Sender: TObject);begin   If ActiveControl is TMemo then TMemo(ActiveControl).PasteFromClipboard;   If ActiveControl is TDBMemo then TDBMemo(ActiveControl).PasteFromClipboard;   If ActiveControl is TEdit then TEdit(ActiveControl).PasteFromClipboard;   If ActiveControl is TDBedit then TDBedit(ActiveControl).PasteFromClipboard;end;
      

  6.   

    不过这样做肯定会影像性能,速度慢了谁还来上网?现在是ADSL宽带,G级CPU时代不必顾虑
      

  7.   

    刚才那些代码我在该程序的Tmemo加入一个时间控件在Begin和end之间加入那些代码无法运行,为什么,要声明系统生成窗体变量吗,如何写代码?第2段只需要保留TMemo第一行
    If ActiveControl is TMemo then TMemo(ActiveControl).PasteFromClipboard;
    就可以吗?因为程序只有TMemo接收数据不是吗?