1、编辑框中显示的字符串对应于Text属性,而按钮的标题对应于Caption属性。
2、Text属性是受保护的,因此无法从别的程序种访问。如果该编辑框在自己的当前窗口(如Form1)内,那么根据Delphi中OOP的封装特点,访问Text属性是允许的!因此就会出现你提到的第二种情况...

解决方案 »

  1.   

    感谢斑竹jll的回答。但是,有疑问,问题也没有解决:1、如果说Text属性是受保护的,那如何解释VB中的SendKeys函数呢。这个函数可以传送任何字符串,包括汉字字符串到另外的窗口中的任何部件(包括编辑框)。2、有什么办法才能实现这种功能?(API的keybd_event或者SendMessage(hWnd,WM_KEYDOWN,nVirtKey,1)函数可以发送键盘上的所有字符和控制键,但不能发送汉字等双字节字符,因为它们没有virtual-key code虚拟键码)3、VB的SendKey真是一个好用的东西,但在Delphi中如何实现呢?Delphi的光盘中的\Info\Extras\SendKeys目录,有一个实现的例子来模拟它,其它都行,但就是不能发送汉字,所以说它不是一个真正的VB式的SendKeys!4、难道M$就是M$,Windows永远是它不倒的旗帜,而且永远“老子天下第一”???5、万不得已,只好用VB作一个OCX,当中就只有一个方法,就是调用VB函数SendKeys,但惭愧的是Delphi我是才学习不久,也就一两个月吧,我不知道Delphi怎样去用这个OCX,试了多次,都搞不懂,请高手指点一二,将不胜感激...
      

  2.   

    你如果是一个进程修改另一个进程的text内容的话,不能简单的调用这几个函数。
    最重要的是先打破进程墙,使你的程序进入的别人的进程。
    有三种方法:
       1:使用钩子函数。
       2:如果是NT的话,修改注册表,将你写的.dll文件静态加入的每一个进程中。
       3:用CreateRemoteThread()远程创立线程到另一个进程中。
    进入了别人的进程想做什么,都可以了。
      

  3.   

    to:charles_zdm请问您说的是不是JournalPlayback和JournalRecord型的Hook?能给我一个例子吗?
    另外,用CreateRemoteThread()远程创立线程能不能也给我一个例子?谢谢!