Grüße Overflowers,Tracking eMails in Outlook 2007
Ich versuche, eine VSTO/C# Corporate E-Mail-Tracker für speziell signierte E-Mails zu entwickeln. Ich verlasse mich auf:
- Inspectors.NewInspector
- Inspector.Close
- Inspector.Activate
- Inspector.Deactivate
Irgendwie stoppen die Inspector Ereignisse nach einiger Zeit zu feuern. Ich registriere 2, 3 und 4 im Körper von 1 nach der Überprüfung auf das Zeichen. Ich habe versucht, bereits registrierte Inspektoren zu verfolgen, aber keine Hoffnung. Irgendwelche Hinweise?
UPDATE: Hier ist ein Beispielcode. Die Evens onSelect und OnOpen feuert einige Male und bleibt dann stehen plötzlich:
using System;
using System.Collections;
using Microsoft.Office.Interop.Outlook;
// using Microsoft.Office.Core;
namespace eMailTrackingSystem
{
public enum TrackingEvent
{
Opened, Closed, Forwarded, Deleted
}
public partial class eMTSAddIn
{
private ArrayList trackedEmails = new ArrayList();
private void InternalStartup()
{
this.Application.ActiveExplorer().SelectionChange += new ExplorerEvents_10_SelectionChangeEventHandler(OnSelect);
}
private void OnSelect()
{
Selection selection = this.Application.ActiveExplorer().Selection;
foreach (object item in selection)
{
if (item is MailItem)
{
MailItem email = (MailItem)item;
if (email.Subject == "eMTS" && !trackedEmails.Contains(email.EntryID))
{
email.Open += new ItemEvents_10_OpenEventHandler(OnOpen);
trackedEmails.Add(email.EntryID);
}
}
}
}
private void OnOpen(ref bool cancel)
{
}
private void OnClose()
{
}
}
}
Grüße