Я знаю, что подобные вопросы задавались здесь, но я чувствую, что не правильно их понимаю.
У меня есть следующий код, например:
Microsoft.Office.Interop.Outlook.Explorer expl = myOutlooApplication.ActiveExplorer();
if (expl.Selection.Count > 0)
{
object selObject = expl.Selection[1];
if (selObject is Microsoft.Office.Interop.Outlook.MailItem)
{
mailItem = (selObject as Microsoft.Office.Interop.Outlook.MailItem);
this.myUserControl.MailItem = mailItem;
}
}
Как вы можетевидите, MailItem передается в свойство myUserControl.MyUserControl потребуется получить доступ к этому свойству позже, чтобы извлечь некоторую информацию из MailItem.
Должен ли я Marshal.ReleaseComObject()
после передачи MailItem в myUserControl, чтобы уменьшить счетчик ссылок RCW, или это слишком рано?
РЕДАКТИРОВАТЬ: Моя проблема в том, что файл MSG будет открыт из файловой системы.После закрытия инспектора пользователь снова пытается открыть файл, но он заблокирован, и я уверен, что причиной этого является не высвобождение объектов COM.