здесь я запускаю отдельную задачу, используя погашение внутри плагина outlook.
Является ли mapi MAPIOBJECT com-объектом и нужно ли его выпускать следующим образом?
что произойдет, если я выпущу объект MapI?
public async Task SimpleTask(string entryId)
{
RDOMail rdoMail = null;
RDOSession rdoSession = null;
try
{
var outlookApp = addinModule.OutlookApp;
var outlookNamespace = outlookApp.GetNamespace("MAPI");
var mapiObject = outlookNamespace.MAPIOBJECT;
rdoSession = RedemptionLoader.new_RDOSession();
if (rdoSession != null)
{
rdoSession.MAPIOBJECT = mapiObject;
bool loggedOn = rdoSession.LoggedOn;
if(!string.IsNullOrEmpty(entryId))
{
rdoMail = rdoSession.GetMessageFromID(entryId);
//...;
rdoMail.Save();
}
}
}
catch (System.Exception ex)
{
}
finally
{
rdoMail.ReleaseComObject()
mapiObject.ReleaseComObject();
rdoSession.ReleaseComObject();
outlookNamespace.ReleaseComObject();
}
}