程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> EmbeddedWebBrowser網站報“Invalid floating point operation”異常的解決

EmbeddedWebBrowser網站報“Invalid floating point operation”異常的解決

編輯:Delphi

我一直使用EmbeddedWebBrowser來做一個自己用的浏覽器,不過發現在進入某些網站是浏覽器卡死或崩潰,查看錯誤日之後發現基本都是Flash.ocx Active控件先產生異常,然後拋出Invalid floating point operation的錯誤,產生這種錯誤的網站基本上都是些視頻網站,最典型的就是騰訊視頻,對於這個異常的處理方法,一直沒找到,直到最近看了園子裡Eboy's blog的這篇文章

http://www.cnblogs.com/jxgxy/archive/2012/03/13/2394129.html

之後才找到解決問題的方法,按照上面的介紹,我在主窗體的Create事件中加入了代碼:

Set8087CW(Longword($133f)); 

編譯 運行 測試 問題依舊!

難道是這種辦法是忽悠人的???

我的浏覽器都是動態創建的,會不會是這個原因??我也在浏覽的創建事件中加入了上面的代碼,測試後發現問題依舊,無奈之下突然想起了谷歌,於是隨便搜了一下,結果發現了這個:

http://stackoverflow.com/questions/8200581/twebbrowser-crashes-with-embedded-youtube-clips

 Get8087CW: Word; // == ; // = pDisp: IDispatch; =// pDisp: IDispatch; ==;

得到這個答案後,我立即在WebBrowser的WebBrowser1BeforeNavigate2事件中加入了

Set8087CW($133F); 

並未按照原帖的方法處理,神奇的事情發生了,這個問題居然解決了。

看了看原帖,原來只是強制關閉了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved