如何访问twebbrowser中的object?(100)

  • 主题发起人 主题发起人 dazzling
  • 开始时间 开始时间
D

dazzling

Unregistered / Unconfirmed
GUEST, unregistred user!
网页中有个对象,我想访问或改变其PARAM值,怎么做?<OBJECT id=SopPlayer codeBase=http://download.sopcast.cn/download/SOPCORE.CAB#version=1,1,2,0 type=application/x-oleobject height="100%" width="100%" align=absMiddle classid=clsid:8FEFF364-6A5F-4966-A917-A3AC28411659><PARAM NAME="_Version" VALUE="196610"><PARAM NAME="_ExtentX" VALUE="15425"><PARAM NAME="_ExtentY" VALUE="10742"><PARAM NAME="_StockProps" VALUE="0"><PARAM NAME="UserID" VALUE="0"><PARAM NAME="Username" VALUE=""><PARAM NAME="Password" VALUE=""><PARAM NAME="Language" VALUE='/"cn_CH/"'><PARAM NAME="SopAddress" VALUE="sop://211.152.36.38:3912/11936"><PARAM NAME="ChannelName" VALUE="上海国际频道"><PARAM NAME="CookieString" VALUE=""><PARAM NAME="AuthUrl" VALUE=""><PARAM NAME="ServAddress" VALUE=""></OBJECT></BODY>
 
IHTMLDocument接口找出id=SopPlayer 的元素,然後再進一步找出對應的Param,具體怎麼做可以再歷史貼中或者baidu上搜索.
 
能搜索到的话我就不贴过来问了.
 
是网页下载的时候吗?可以通过BHO!
 
不是BHO.是TwebBrowser中的OBJECT(视频ACTIVEX),我想访问并控制它
 
给个笨方法你.有分不?Procedure TForm1.Button2Click(Sender: TObject);Var S: String;begin
//获取对象的值,然后从BeforeNavigate2拦截 S := 'window.location=''myobject:'' + SopPlayer.SopAddress;';//修改对象的值//s := 'SopPlayer.ChannelName=''上海国际'';';
(WebBrowser1.Document As IHTMLDocument2).parentWindow.execScript(S, 'Javascript');end;
Procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
Const pDisp: IDispatch;
Var URL, Flags, TargetFrameName, PostData, Headers: OleVariant;
Var Cancel: WordBool);begin
If Copy(URL, 1, 9) = 'myobject:' then
begin
Memo1.Text := Copy(URL, 10, MAXINT);
Cancel := true;
end;
end;
 
楼上的,我不是想得到URL,是想得到这个OBJECT并能控制它(如改变PARAM等)...[:(]
 
你又没试过怎么知道我的不行呢,我可是经过测试, 访问或改变其PARAM值都可以嘀我这是通传值到URL获取,
 
兄弟啊,这方法不行哟,执行脚本后出来由于出现错误80020101而导致此项操作无法完成错误
 
delphi世界qq群:23981160,希望delphi的朋友进来
 
这个是可以的不过比较麻烦 我写过这种组建
 
怎么实现的?
 
整个过程如下:wb1.Document ->IHtmlDocument2接口->getElementByid()->HtmlElement对象得到Elment对象了你就可以做任何你想做的事情了,GetAttribute或者SetAttribute
 
activex对象也是网页里的一个元素,通过IHtmlelement可以取得其引用,剩下的就好办了.
 
后退
顶部