JS ActiveXObject Outlook.Application按字节数组添加atachment

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS ActiveXObject Outlook.Application按字节数组添加atachment相关的知识,希望对你有一定的参考价值。

我试图通过ActiveX用js打开outlook并插入附件

但我的附件是字节数组,而不是本地文件或链接。

这是我的代码:

(function() {
    if ('ActiveXObject' in window) {
        try {
            var app = new ActiveXObject('Outlook.Application');
            var mailItem = app.CreateItem(0);
            mailItem.Subject = 'test';
            mailItem.htmlBody = '';
            mailItem.To = '';
            mailItem.Cc = '';
            mailItem.Bcc = '';
            ms = new MemoryStream();
            attach = new Attachment(ms, 'test.txt', Encoding.UTF8, System.Net.Mime.MediaTypeNames.Text.Plain);
            mailItem.Attachments.Add(attach);
            mailItem.display();
        } catch (ex) {
            alert('Outlook configuration error : ' + ex.message);
        }
    }
})()

但是js编译器说MemoryStream是未定义的并且Attachment是未定义的...我怎么能像c#一样按字节数组附加文件?

tnx很多

答案

Attachments.Add只接受表示完全限定文件名的字符串或指向另一个Outlook项目的指针(例如MailItem)。

如果你想从内存中添加附件,扩展MAPI(C ++或Delphi)或Redemption(任何语言)是唯一的方法来做到这一点

以上是关于JS ActiveXObject Outlook.Application按字节数组添加atachment的主要内容,如果未能解决你的问题,请参考以下文章

JS采用ActiveXObject实现用户在提交表单时屏蔽敏感词的功能

js与IE浏览器的ActiveXObject对象以及FileSystemobject的应用扩展

js判断ActiveX控件是不是安装

js中new ActiveXObject("Scripting.FileSystemObject")等操作本地文件用法,

Js的两种post方式

如何使用JavaScript读取Excel文件(不使用ActiveXObject)