高手快帮忙呀~!一个普通问题,但至今吾人回答的上,快来解答!Thanks

lyboy99 2002-04-14 01:40:01
想写个多页浏览器,可是遇到一个问题,常访问一些网站时候会出现
Could not obtain OLE control window handle 错误,而且访问www.sina.com.cn时候最容易出现这个问题

用webbrowser控件访问www.sina.com.cn的时候先访问该网页的主页面然后在响应NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);事件访问一个广告,过一小段时间以后又响应NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);事件,访问ttp://uil.sina.com.cn/c/timelog/log_start.cgi?channel=news页面,问题就出现在这里该页面是一个具有自动关闭功能的弹出页面这时我的WEBBROWSER控件就消失了,接着出现Could not obtain OLE control window handle 错误!

如何能防止这样的自动关闭功能的弹出页面联接使程序出错呢!请告示解答!
...全文
35 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyboy99 2002-04-16
  • 打赏
  • 举报
回复
我发现出现Could not obtain OLE control window handle 一般是由于一条
javascript语句造成的,<script language=javascript>window.close(This)</script>
一般这条语句Wisdow.close()不加This(自生的指针)可以用以下语句来解决。
procedure
TForm1.ApplicationEvents1Message(var Msg: tagMSG;var Handled: Boolean);
begin

if (Msg.message=WM_COLSE) and (Msg.hwnd = wb.Handle) then
begin

closewebclick(Self);
end;

可是,如加上了This(这条自身指针),一运行关闭语句时候webbrowser控件就被Free了,如何解决呢》?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧