一个很奇怪的问题。WEB中的编辑框(TEDIT)的句柄怎么得到?(100分)

  • 主题发起人 satanmonkey
  • 开始时间
S

satanmonkey

Unregistered / Unconfirmed
GUEST, unregistred user!
比如google上哪个输入关键字的编辑框。我发现只要是在ie中的都没办法找他到的句柄,但他们可以得到焦点?<br>我想做一个类似刷屏机的东西。找不到哪个句柄我没办法发消息。<br>
 
IE主框架窗口下有个类名为: Shell DocObject View 的子窗口,<br>1那些Edit 的窗口应该都是这个窗口的子窗口.它们的窗口类名<br>应该是edit,而不是Tedit.<br>用EnumChildWindows函数找找看.<br><br><br>
 
Sorry,上面的说法有错误,那些在DocView里编辑框根本没有handle.所以不能用<br>发消息的方法操纵它们。<br>但可以通过 IHTMLDocument2 接口遍历其中的元素得到这个元素的接口并操纵之.<br>
 
xeen能具体点吗?最好有代码。
 
你可以去检索LID 280077
 
ok这个问题基本解决了,<br>再问一下,我想在添进字符以后输入一个回车进去,不知道这个又要怎么做?<br>
 
回车你给窗口发消息应该就可以吧<br><br>不过你做的东西应该不用这么复杂的<br><br>IE的表单都是提交到某个地址出里的<br>你可以直接POSt数据过去
 
查一查提交表单吧,这样的问题有很多.
 
restle : 哪个东西没句柄,不能对他发消息。我做的东西不是针对某个固定的网页的,所以不能直接用地址提交。<br>xeen: &nbsp; 不用url提交表单的方法有吗?
 
用上面的方法遍历找到IHTMLFormElement类型借口的元素,<br>调用其submit方法即可。但这种方法在页面上有多个表单的时候有麻烦.
 
我下了几个刷屏机看,他们好象没用IHTMLFormElement也可以在网页里填上内容啊。好象是发什么消息,模拟键盘敲击?谁知道什么原理?<br>现在要做的是,把字符输出到焦点所在位置。
 
先找到 窗口类名为 Shell DocObject View 的子窗口句炳,把消息发给它<br>也许可以。
 
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=1354567<br>关注一下吧没有人提起来呀!用MODEM打电话利用PC机的耳机和麦克风,自己编程如何实现?<br>(我知道有现成的软件可以用,但是我想自己实现这个上东西)<br>QQ:65466700<br>MAIL: along@b2sun.com<br>TEL :13802785865<br>http://b2sun.com<br>请各位大侠多多指教!<br><br>
 
我已经完全解决这个问题。而且无需用delphi代码<br>我给出详尽的VBScript代码。给我分吧<br>保存为c://program files//geturl.htm<br>&lt;script language="VBScript"&gt;<br><br>Sub GetPassword()<br>set &nbsp;forms=external.menuArguments.document.forms(0)<br>'设置对象<br>ReDim params(forms.length)<br>params(0)=forms.ACTION<br>alert(forms.ACTION)<br>for i=0 to forms.length-1<br>params(i+1)=forms(i)<br>alert(forms.item(i).value)<br>next<br>}<br>end sub<br>call GetPassword()<br>&lt;/script&gt;<br><br>保存为run.reg然后运行<br>Windows Registry Editor Version 5.00<br><br>[HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/&amp;Get form]<br>@="c://program files//geturl.htm"<br>"Contexts"=dword:0000008<br><br><br>本人翻了一天的msdn才查到的。你可以去找有表单的www.163.com实施。你可以查到表单的<br>各个值<br><br>完全可用。如果要在delphi中利用。可以把delphi注册成com程序就可以读取了!<br>
 
问题是我要做的是类似刷屏器的东西。只能读是不行的。你给的是vbscript,难道叫我的程序做成叫本,在ie里运行??
 
顶部