VSTO how to log down the startup time of Add-in - outlook

see the screenshot
I am developing an outlook Add-in. but the add-in is disabled by outlook randomly.
My question is how to log down the startup time of my Add-in and other Add-ins so I can investigate the reason.

Outlook does this for you.
Go to Event Viewer -> Windows Logs -> Application and filter by:
Event ID: 45
Source: Outlook
The log will contain a list of add-ins with some metadata and boot time.
If you need programmatic access (e.g. you need boot time somewhere in your app), refer to this link How to Query for an event log details with a given event id?
Of course you will have to parse the event output to grab the data you need.

Related

Outlook add-in event based activations not working on web browser

I'm working on an outlook add-in I can't get event-based activations to work on the web client (but do actually work on the Mac Outlook app). I've been trying to run the examples hosted on github, both outlook-set-signature and outlook-encrypt-attachments provided by the Microsoft team.
And add-in is correctly loaded. I can manage to open the sidepanel and follow the instructions, but nothing changes. Trying the same thing using the Outlook client on Mac OS works as expected.
Here are my reproduction steps:
Visit https://outlook.live.com/calendar/
New event > Get Add-ins > My Add-ins > "Add Custom Addins" > From URL > Paste "https://officedev.github.io/Office-Add-in-samples/Samples/outlook-encrypt-attachments/manifest.xml"
Go back to the calendar app > Click on the three dots button > click "Event Activation Example" addin > The sidepanel shows as expected
Discard the event and create a new one
Add a new participant to the event and expect a notification / or add any lightweight attachment and expect an automatically generated encrypted version of the attachment
Nothing happens 🤷 . According to the docs, a notification message should be shown
This "unresponsiveness" also happens with my own add-in and also in another example provided by the outlook team https://github.com/OfficeDev/Office-Add-in-samples/tree/main/Samples/outlook-set-signature.
BUT, these add-ins do actually work when I use them on my Mac OS Outlook app (OS Version: Ventura). So I'm wondering if there's any limitation for event-based activations for non-365 users using outlook on a web browser.
I'm wondering if there's any limitation for event-based activations for non-365 users using outlook on a web browser
Classic Outlook UI when connected to Exchange on-premises doesn't support the requirement set 1.10 where the event-based activation was introduced.
Modern Outlook UI when connected to Exchange Online: Microsoft 365 subscription, Outlook.com supports the Outlook add-in API requirement set 1.10.
You can find the Outlook client support for specific requirement sets in MSDN.
Also you may find the Debug your event-based Outlook add-in page helpful.
Event based add-ins are currently supported for commercial accounts as they are only available as part of admin deployment. Supporting event-based activation for user acquired add-ins is on the road map and we will consider this as part of that requirement. We don't have an ETA for this yet.

The open extension of the outlook event (meeting) gets overwritten when saving it - Outlook Desktop App

I have an outlook add-in that allows the user to save some data to an open extension in the outlook event.
When I follow the following steps,
Create a meeting in the Outlook add-in, add subject/invitees etc
Open the outlook add-in and follow the necessary steps that triggers a PATCH request that saves the open extension. After this when I fetch the event through the Graph API, I can see that the extension is saved.
Now press "Send". After this when I fetch the event again through the Graph API, I can see that the extension data is gone.
Please note that this only happens in the Outlook Desktop app and when creating a meeting (with invitees)
Any idea if there is a way to fix this/if this is a known issue with a workaround?

How to detect the current account type in a Outlook Web Add-In

We have an Office Web add-in that is targeting the Appointment Items in Outlook (the calendar). It failed validation because, it was not possible to use it with gmail:
Functionality
1120.3.3 Office Compatibililty
The add-in did not pass compatibility tests for Gmail.
I was thinking about if i can we detect what the current account type is from the:
Office.context.mailbox.userProfile
However i am uncertain about what properties are available and if any can tell me if it is an Exahnge Account the user is running on
Please help?
br
Michael

New Outlook API (2015) mail add-in send event

Does the new Microsoft Outlook API, which enables development of Outlook addins for cross platform, have the ability to trigger an event off the user clicking the send button?
I currently have an Outlook VSTO addin that uses the Application.ItemSend event to check an email for specific content and present the user with a popup asking them if they still want to send or not. This is only compatible with Outlook 2007-16 on Windows though, and I was hoping the new API might enable me to build something similar for Outlook on Mac/mobile/web, but I haven't found any examples or documentation on this particular event trigger yet.
Link to Outlook API
Some support for handling a "send" event was recently added for Outlook Add-ins.
There are several limitations, so be sure to read all the documentation. In particular, this is currently only supported in the Web version of Outlook, and the send event feature cannot be used in any add-ins that will be published in the Office Store.
No, there is no such event. It will most likely be added in the future from what I hear...

Opening a Dynamics CRM 2013 form in Outlook instead of CRM

thank you for taking the time to read this. I have a client who wants a button to be placed on the Appointment form that, when clicked, opens a copy of the Appointment form inside of Outlook as opposed to CRM. I've been looking at Microsoft.Crm.Outlook.SDK and Microsoft.Office.Interop.Outlook but neither of of them seems to have any methods that jump out as being able to accomplish this. Has anyone run into this that could possibly point me towards an example or a decent tutorial? I've been checking google and the msdn as well but I'm not having any luck. Thank you.
The CRM client can be accessed through a browser or through outlook. If a user is accessing CRM through the outlook client and he opens a link to an appointment - then that appointment will open within outlook. If the user is accessing CRM through a web browser I do not think it is possible to launch an appointment though the web browser directly.
What you could do is generate an outlook appointment (.ics) file - through code - when the user opens this file it will open in Outlook by default. There is a format for creating iCalendar or outlook appointment (.ics) files - just google it - plenty of examples of creating them though code.

Resources