![](/img/trans.png)
[英]How can I get attachment content from an Outlook mail in a Node.js Outlook add-in?
[英]Add attachment to ActiveX Outlook (2016) mail
上下文
在SharePoint Online環境中的文檔庫中的每個文檔集的主頁上都有一個按鈕。 單擊該按鈕時,將打開一個Outlook窗口,其中包含標題和正文集,並且應將文檔集中的所有文件添加為附件。
編碼
這是我到目前為止的代碼:
var olApp = new ActiveXObject("Outlook.Application");
var olNs = olApp.GetNameSpace("MAPI");
var olItem = olApp.CreateItem(0);
var signature = olItem.HTMLBody;
signature.Importance = 2;
olItem.To = "";
olItem.Cc = "";
olItem.Bcc = "";
olItem.Subject = "Pre filled title";
olItem.HTMLBody =
"<span style='font-size:11pt;'>" +
"<p>Pre filled body</p>" +
"</span>";
olItem.HTMLBody += signature;
olItem.Display();
olItem.GetInspector.WindowState = 2;
var docUrl = "https://path_to_site/Dossiers/13245_kort titel/New Microsoft Word Document.docx";
olItem.Attachments.Add(docUrl);
問題
當我運行此代碼時,將打開一個Outlook窗口,其中所有內容均已正確設置。 但是在添加附件的行上,我收到以下非常模糊的錯誤消息:
SCRIPT8:操作失敗。
我以為可能是網址中的空格,所以我替換了它們:
docUrl = docUrl.replace(/ /g, "%20");
也沒有用(相同的錯誤),並且提供所有這樣的參數也沒有用:
olItem.Attachments.Add(docUrl, 1, 1, "NewDocument");
將路徑傳遞到本地文件(例如C:/folder/file.txt
)或圖像的公共URL 確實可行。 所以我的猜測是它與權限或安全性有關。 有人知道如何解決這個問題嗎?
PS:我知道使用ActiveX控件不是理想的工作方式(瀏覽器限制,安全考慮...),但實際情況並非如此,我無法改變。
您無法在OOM中將URL傳遞給MailItem.Attachments.Add
(它確實適用於RDOMail.Attachments.Add
贖回 )。 Outlook對象模型僅允許指向本地文件的完全限定路徑或指向另一個項目(例如MailItem)的指針。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.