我想创建一个文件,将其作为附件通过电子邮件发送,然后使用 JScript 删除该文件。
问题在于过早删除文件会阻止 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 是同步的(或者如果 Display 等到所有附件都被读取),我可以立即删除该文件
- 我可以睡 x 秒,然后删除文件。
- 也许有一种订阅事件的方法,我还没有找到。
细节:
出于所有意图和目的,此脚本在 wscript 中运行。
这并不特定于任何 Outlook 版本。它应该适用于任何版本。
我还将在电子邮件中附加几个其他文件。
如果你有问题,就问吧。