|
<p> </p><p>今天QQ上一朋友问我,如何才能得到网页上星号的内容.<br/><br/>我左想右想,对啊,以前的确是见过有人做出过这种星号查看器的!<br/><br/>朋友发来一网页,上面有VC实现的代码,以及原理分析.<br/><br/>我先是试着更改为一个DLL由VB调用,结果由于VC水平实在是......不提也罢..<br/><br/>后来看原理分析,说是先得到IHTMLDocument对象<br/><br/>然后对对象内控件内容进行判断,如果有password属性的,就是密码框<br/><br/>然后直接调用.Value属性就可以得到值了.<br/><br/>原文这样说:<br/><br/>在不同的进程中取得IE的Webbrowser控件的IHTMLDocument2接口,请参阅MSDN上的一篇文章,标题是:<br/><br/>HOWTO: Get IHTMLDocument2 from a HWND(根据HWND取得IHTMLDocument2接口)<br/>(<a href="http://support.microsoft.com/default.aspx?scid=kb" target="_blank">http://support.microsoft.com/default.aspx?scid=kb</a>;EN-US;q249232).<br/><br/>它的实现机理是向Webbrowser控件(窗口类名是"Internet Explorer_Server")发一个WM_HTML_GETOBJECT<br/><br/>然后把返回值传给Microsoft Active Accessibility (MSAA) 函数ObjectFromLresult<br/><br/>这样你会取得一个已经编排(Marshaling)过的COM接口.<br/><br/>于是我搜索"VB6 ObjectFromLresult",一下子就搜到一个老外写的模块.<br/><br/>用这模块拿回来,就可以轻易得到IHTMLDocument对象<br/><br/>然后我就简单地写了一个判断过程,组合成了这个东东.<br/><br/>看来我还是太菜!!<br/><br/>继续努力!! <img src="http://www.m5home.com/blog/images/smilies/30.gif" align="absMiddle" border="0" alt=""/><br/><br/>相关网址:<br/><br/><a href="http://www.vckbase.net/document/viewdoc/?id=288" target="_blank">http://www.vckbase.net/document/viewdoc/?id=288</a></p><p>文件下载地址:</p><p>http://www.m5home.com/blog/blogview.asp?logID=197</p> |
|