Javascript ActiveX-自动化服务器无法创建对象

Javascript ActiveX-自动化服务器无法创建对象,javascript,activex,Javascript,Activex,我有一个网页,我需要向其发送电子邮件。我需要从浏览器发送一封大电子邮件。由于内容大于查询字符串允许的范围,我需要使用Active X。我想通过Outlook发送此电子邮件。为了做到这一点,我编写了以下代码: try { var to = ""; var cc = ""; var subject = "Action Required"; var body = GenerateEmailBody(); var outlook = new ActiveXObject('Outlo

我有一个网页,我需要向其发送电子邮件。我需要从浏览器发送一封大电子邮件。由于内容大于查询字符串允许的范围,我需要使用Active X。我想通过Outlook发送此电子邮件。为了做到这一点,我编写了以下代码:

try {
  var to = "";
  var cc = "";
  var subject = "Action Required";
  var body = GenerateEmailBody();

  var outlook = new ActiveXObject('Outlook.Application');
  var outlookNamespace = outlook.GetNameSpace('MAPI');

  var message = outlookNamespace.CreateItem(0);
  message.Display();
  message.To = to;
  message.Subject = subject;
  message.Body = body;
  message.GetInspector.WindowState = 2;
} catch (err) {
  alert("Unable to send email. " + err);
}
当我执行此代码时,会出现以下错误:

ReferenceError: ActiveXObject is not defined 
我做错了什么


谢谢

您不能从浏览器中创建“Outlook.Application”。这可能有两个原因:

它未标记为安全初始化或安全脚本 它设置了杀戮位 您可以使用POST将电子邮件发送到服务器吗?

该对象仅在Internet Explorer上可用,并且可能会受到限制,具体取决于您的页面位于本地、intranet或Internet的哪个区域


是否要从将托管在internet上的网页发送电子邮件?那么,除了mailto链接之外,您唯一的选择就是从服务器发送电子邮件。如何做到这一点完全取决于服务器端技术。

错误自动服务器无法创建对象意味着浏览器的安全设置太低,ActiveX控件无法运行。您必须将页面移动到“受信任的站点”列表中,并降低ActiveX设置,以便它可以运行

就我个人而言,我会像瘟疫一样避免ActiveX,因为它将你锁定在只使用IE的世界中。因此,我们仍然有人坚持使用IE6


如果您只是想预加载邮件,您可以使用“转到工具”->“Internet选项”

b选择安全选项卡

c根据您的站点是否受信任,单击受信任的站点或本地Intranet

d单击自定义级别

e确保初始化和脚本活动x控件未标记为安全,以便启用脚本-这位于滚动条1/4的Activex控件和插件部分

点击OK,OK

完成后,清除浏览器cookies和缓存。关闭所有浏览器会话。重新打开IE以启动您的站点

尝试禁用步骤e中的设置,以查看问题是否再次出现-这将为问题提供更多的洞察力


来源:

启用,工具菜单->互联网选项->安全->自定义级别->初始化并在IE上编写ActiveX脚本

我很困惑:问题的标题是自动化服务器无法创建对象;但在问题本身中,你说错误是ActiveXObject没有定义。。。那么它是哪一个呢?mailto的问题是它被限制在url的大小上。“我的内容”的长度大于URL允许的长度。从原始源复制: