1
我想创建一个文件,将其作为附件通过电子邮件发送,然后使用JScript删除文件。使用Outlook发送电子邮件临时文件
问题在于,过早删除文件会阻止Outlook将该文件附加到电子邮件中。
我将创建一个MailItem并使用类似下面的代码显示它。电子邮件不会自动发送,但会显示,以便用户可以根据需要进行编辑。
var outlook = new ActiveXObject("Outlook.Application");
var msg = outlook.CreateItem(0);
msg.Recipients.Add(toAddress);
msg.Subject = subject;
msg.htmlbody = body;
msg.Attachments.Add(attachment);
msg.Display();
我的问题是,何时可以安全删除附件?我知道MailItem有事件,我可能会删除AttachmentAdd事件中的附件。但是,AFAIK,无法在JScript中订阅ActiveXObject事件。
我的想法:
- 我可以立即删除该文件,如果Attachments.Add是同步的(或者,如果显示等待,直到所有附件都被读取)
- 我能睡x秒,然后删除该文件。
- 也许有一种方法来订阅一个事件,我还没有找到它。
详情:
这个脚本是,对于所有意图和目的,在WScript的运行。
这不是特定于任何Outlook版本。它应该适用于任何版本。
我也将其他几个文件附加到电子邮件。
如果您有任何疑问,只需询问。
您可以在临时文件夹中创建它,并将其标记为在下次重新启动时被删除等? – 2012-04-20 18:48:33
@AndrewFinnell:我可能会,但是越早删除文件越好。 – 2012-04-20 18:49:44
由于安全问题,如果您需要快速摆脱它,Outlook可能不是一个好选择。 Outlook在发送之前将文件的副本存储在临时目录中,然后在发送之后存储在用户PST文件中。 – 2012-04-20 18:52:34