I'm writing an outlook add-in and need to create a new email with displayNewMessageForm and add an attachment. The problem is the URL to the attachment is protected so I need to download the file and attach it and I've tried using addFileAttachmentFromBase64Async as shown in this example:
The problem I'm having is the very first line of the code sample:
const mailItem = Office.context.mailbox.item;
This gets the currently selected mailItem in the mailbox - not the new compose form that was displayed with displayNewMessageForm. Can someone provide a sample that uses displayNewMessageForm then using addFileAttachmentFromBase64Async attaches a file such as a word document to that new compose form?
I'm writing an outlook add-in and need to create a new email with displayNewMessageForm and add an attachment. The problem is the URL to the attachment is protected so I need to download the file and attach it and I've tried using addFileAttachmentFromBase64Async as shown in this example:
https://learn.microsoft/en-us/office/dev/add-ins/outlook/add-and-remove-attachments-to-an-item-in-a-compose-form#attach-a-file-or-outlook-item
The problem I'm having is the very first line of the code sample:
const mailItem = Office.context.mailbox.item;
This gets the currently selected mailItem in the mailbox - not the new compose form that was displayed with displayNewMessageForm. Can someone provide a sample that uses displayNewMessageForm then using addFileAttachmentFromBase64Async attaches a file such as a word document to that new compose form?
Share Improve this question asked Feb 1 at 22:10 S HuffS Huff 1162 silver badges11 bronze badges 5 |1 Answer
Reset to default 1 +50You cannot insert attachments using addFileAttachmentFromBase64Async
in Read Mode when using displayNewMessageForm
.
To achieve this, you need to add attachments in Compose Mode.
After calling displayNewMessageForm
, you are now in Compose Mode. You can add a new button in Compose Mode using MessageComposeCommandSurface for a Taskpane or an action button in your manifest.
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgComposeGroup">
<Label resid="GroupLabel"/>
<Control xsi:type="Button" id="TaskpaneButton">
<Label resid="TaskpaneButton.Label"/>
<Supertip>
<Title resid="TaskpaneButton.Label"/>
<Description resid="TaskpaneButton.Tooltip"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Taskpane.Url"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
Now here on Taskpane you can use the method of addFileAttachmentFromBase64Async
for adding new attachments
displayNewMessageForm
learn.microsoft/en-us/javascript/api/outlook/… – M Junaid Commented Feb 3 at 8:38displayNewMessageForm
it's display a new message that's mean you are in compose mode now in compose mode you can add a button on your ribbon for adding attachments – M Junaid Commented Feb 8 at 6:14