在Windows 10计算机上的Outlook Desktop上,addFileAttachmentAsync()无法正常运行

时间:2019-05-08 16:27:36

标签: outlook outlook-addin outlook-web-addins

我正在尝试通过Outlook加载项将嵌入式图像添加到邮件正文中。在OWA中它可以正常工作,但是桌面应用无法内联附加,而是将图像作为常规附件获得,并且电子邮件正文上的图像图标已损坏。

我联系了Microsoft Devchat,他们似乎无法对其进行复制,我尝试了他们发送给我的代码,其行为相同。

这是代码:

function AttCallback(asyncResult) {
    if (asyncResult.status == Office.AsyncResultStatus.Failed) {
        console.log(asyncResult.error);
    } else {
        var szCID = asyncResult.asyncContext.UniqueName;
        var szAddBodyData = "<p>Here's a cute bird!</p><br><div><img src='cid:" + szCID + "'></div><br>";
        Office.context.mailbox.item.body.setSelectedDataAsync(
            szAddBodyData,
            { coercionType: Office.CoercionType.Html });
        console.log("Attachment added");
    }
}
function insertAttachment() {
    var szName = "cute_bird.png";
    var options = { isInline: true, ContentId: szName, 'asyncContext': { UniqueName: szName } };
    //var options = { asyncContext: null };
    Office.context.mailbox.item.addFileAttachmentAsync(
        "http://i.imgur.com/WJXklif.png",
        szName,
        options,
        AttCallback);
}

这是我的机器上正在发生的事情。 注意:从代码中可以看到,当回调函数被命中时,附件已被添加。但是我确实将inline属性设置为true。 enter image description here

有人曾经经历过吗?任何建议,将不胜感激。

1 个答案:

答案 0 :(得分:1)

请参阅文档:

https://docs.microsoft.com/en-us/office/dev/add-ins/reference/objectmodel/requirement-set-1.5/outlook-requirement-set-1.5

Outlook要求集1.5附带了内嵌图像添加支持。您应该在manifest.xml中指定此功能,以确保您的加载项仅在可以使用的客户端中显示,而在不能使用的情况下不显示。