Quelqu'un peut-il expliquer pourquoi l'événement "OnNewMail" n'est pas déclenché lors de l'utilisation d'un thread STA dans le code ci-dessous? Le programme tente d'utiliser la bibliothèque Redemption pour intercepter les messages Outlook entrants.Pourquoi cet événement COM interop n'est-il pas déclenché lors de l'exécution d'un thread STA?
class Program
{
[STAThread()] // When this line is deleted the application works
static void Main(string[] args)
{
RDOSession session = GetSession();
session.OnNewMail += Session_OnNewMail;
Console.ReadLine();
}
static void Session_OnNewMail(string EntryID)
{
Console.WriteLine("New mail received");
}
private static RDOSession GetSession()
{
var session = new RDOSession();
var application = new ApplicationClass();
session.MAPIOBJECT = application.Session.MAPIOBJECT;
return session;
}
}