关于HTML使用ComDlg ActiveX 无法弹出相应对话框的问题1
最近發現,開發的Web應用在客戶的某些IE(8,9,11)中彈出不了Windows的字體對話框。
通過 F12 跟蹤,錯誤代碼是“-2146827850”,錯誤信息是“?對象不支持ShowFont屬性和方法”
?
問題的原因分析:
????? 應該是IE無法正確載入相應的ActiveX控件引起的。幾種情況
1、客戶電腦上沒有注冊好? ComDlg32.ocx
???? 解決方法:
對于32位Windows: 把 ComDlg32.ocx 拷貝到 C:\windows\system32 目錄下;
????? 對于64位Windows: 把 ComDlg32.ocx 拷貝到 C:\windows\sysWOW64 目錄下;
使用管理員身份,運行? regsvr32 C:\windows\system32\ComDlg32.ocx
2、HTML中沒有按微軟的要求編寫ActiveX 的引用聲明
? 如果缺少以下代碼,也會出現之上的問題
? <object classid="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
??????? <param name="LPKPath" value="comdlg.lpk">
? </object>?
????? 解決方法:加入相應的聲明
?3、因為安全原因,IE 禁止了相關 ActiveX控件的使用
????解決方法:使用regedit, 對于comdlg32.ocx 相應的注冊項是?HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility{F9043C85-F6F2-101A-A3C9-08002B2F49FB},找到并刪除它。
參考鏈接:
http://stackoverflow.com/questions/1146872/comdlg32-ocx-error-object-doesnt-support-this-property-or-method
http://stackoverflow.com/questions/5705138/internet-explorer-9-ie9-hangs-after-closing-activex-form-e-g-common-dialog-c
https://support.microsoft.com/zh-cn/help/240797/how-to-stop-an-activex-control-from-running-in-internet-explorer
https://answers.microsoft.com/en-us/ie/forum/ie9-windows_7/ie9-internet-explorer-window-becomes-disabled-when/7bd351e9-c94f-e011-8dfc-68b599b31bf5
?
?
?
測試代碼:http://files.cnblogs.com/files/finema/ComDlgTest.rar
轉載于:https://www.cnblogs.com/finema/p/6741744.html
總結
以上是生活随笔為你收集整理的关于HTML使用ComDlg ActiveX 无法弹出相应对话框的问题1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python运维开发之第八天(socke
- 下一篇: 旋转的正方体