Я хочу создать файл, отправить его по электронной почте в виде вложения, а затем удалить файл с помощью 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, нет возможности подписаться на события ActiveXObject в JScript.
Мои мысли:
- я мог удалить файл немедленно, если Attachments.Add является синхронным (или если Display ожидает, пока все вложения не были прочитаны)
- Я мог спать в течение х секунд, а затем удалите файл.
- Возможно, есть способ подписаться на мероприятие, и я его не нашел.
Детали:
Этот сценарий, для всех намерений и целей, работающих в WScript.
Это не относится к какой-либо версии Outlook. Он должен работать с любой версией.
Я также прикреплю несколько других файлов к письму.
Если у вас есть вопросы, просто спросите.
Можете ли вы создать его в папке temp и пометить его для последующей перезагрузки и т. Д.? –
@AndrewFinnell: Я, вероятно, мог бы, но чем раньше файл будет удален, тем лучше. –
Если вам нужно быстро избавиться от него из-за проблем с безопасностью Outlook, вероятно, это не очень хороший выбор. Outlook сохраняет копию файла во временном каталоге перед отправкой, а затем в файл PST пользователей после отправки. –