JS检测IE控件是否加载

来源:互联网 发布:守望先锋鼠标宏编程 编辑:程序博客网 时间:2024/05/21 06:49

前言

给同事写了测试用的IE控件,他要求如果控件没注册或控件dll不在硬盘指定位置时,要有提示.
不知道该咋玩,有搞过的同事给出了解决方法,用JS捕获异常来实现.

测试网页

<HTML>    <HEAD>        <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>        <TITLE>对象 my_test_ocx 的 ATL 8.0 测试页</TITLE>        <script type="text/javascript">        function fn_test()        {            var myOcx;            var msg;            var bOk = 0;            var tmp;            msg_set(">> fn_test\r\n");            try {                myOcx = document.getElementById('my_test_ocx');                tmp = myOcx.version() + "\r\n";                msg_append(tmp);                tmp = myOcx.get_cfg_file_path_name() + "\r\n";                msg_append(tmp);                msg = myOcx.interface_do_some_task();                if (65535 == msg) {                    msg_append("失败\n");                } else {                    msg_append("成功\n");                }            } catch (e) {                msg = "";                msg_append("my_test_ocx控件未注册或不在注册时指定的全路径上!\n");                msg_append("请重新注册控件或走不使用my_test_ocx控件的业务流程\n");            }            msg_append(msg);            msg_append("\n");        }        function msg_empty()        {            textarea_msg_area.value = "";        }        function msg_set(x)        {            textarea_msg_area.value = x;        }        function msg_append(x)        {            textarea_msg_area.value += x;        }        </script>      </HEAD>    <BODY>        <textarea name="textarea_msg_area" rows="20" cols="100">        在按下"testcase"按钮后,开始测试        需要在IE中打开, 然后允许控件运行.        不要用360浏览器打开, 没有允许控件运行的提示.        在Win10X64中的IE中做过测试了, 控件好使.        如果控件未注册或控件方法不存在,会捕获异常,有提示        </textarea>        <br>        <input type="button" onclick="fn_test()" value="testcase" />        <br>        <OBJECT ID="my_test_ocx" CLASSID="CLSID:AA08943D-57FD-4E53-8C09-4D8DADDA00BB"></OBJECT>    </BODY></HTML>

效果

这里写图片描述

原创粉丝点击