在Web worker中创建ActiveXObject(“Outlook.Application”)时出错

时间:2013-07-15 12:56:14

标签: javascript web activex worker activexobject

我有一个简单的HTML文件和几个JS文件,它们使用web worker执行异步操作。我需要为Outlook创建ActiveX对象,以获取Outlook对象模型功能以检索大量Outlook任务。我在Web worker ActiveXObject文件中创建JS(“Outlook.Application”)。但是,当我通过IE10浏览我的HTML文件时,我在Automation server can't create object创建步骤中获得ActiveXObject

据我所知,此错误与Internet安全设置有关。因此,我启用了ActiveX并在Enable for Initializing and Script ActiveX controls not marked as safe中的ActiveX控件和插件下设置了IE。但它没有帮助。 JS文件中的互动正常,因为我在不使用ActiveX的情况下检查了作品。

您能否告知如何解决此问题以及是否可以将ActiveX与网络工作者一起使用?

提前谢谢。

这是HTML和脚本

的index.html

<html>
    <head>
        <script src="my_script.js" type="text/javascript"></script>
    </head>
    <body>
        <input type="button" onclick="javascript:showTasksCount();" value="Show Tasks count" />
    </body>
</html>

my_script.js

function display(count) {
        alert("Number of tasks: " + count);
}

function showTasksCount() {
    var myWorker = new Worker("web_worker.js");

    myWorker.onmessage = function (oEvent) {
        display(oEvent.data);
    };

    myWorker.postMessage("");
}

web_worker.js

onmessage = function (oEvent) {  
    var outlook = new ActiveXObject("Outlook.Application");

    var count = outlook.GetNamespace("MAPI").Folders(1).Folders("Tasks").Items.Count;
    postMessage(count);
};  

0 个答案:

没有答案