2009-05-12 7 views
2

Je travaille en arrière-plan pour un serveur d'archivage Exchange Server. Je prévois de le faire en utilisant C#. Quelqu'un peut-il donner une idée de comment commencer. Puis-je obtenir un exemple d'application qui illustre comment MAPI peut être utilisé pour lire les mails du serveur Exchange. Étant donné que MAPI est une DLL Cpp, puis-je obtenir un wrapper C# pour le même.Récupération de messages depuis le serveur Exchange à l'aide de MAPI

Répondre

2

En utilisant MAPI du code managé n'est pas pris en charge et devrait être évitée. Si vous démarrez à partir de zéro, je regarderais EWS (services Web d'échange) et concevoir votre produit pour soutenir l'échange 2007 et l'échange 2010.

1

Vous ne voulez vraiment pas employer le wrapper C# de MAPI. Ça va bien se passer lors des tests, mais comme .NET et la DLL MAPI gèrent occasionnellement leur propre mémoire (lisez 300 utilisateurs, plusieurs fois par heure) ils vont écraser les pools de mémoire des autres. En fin de compte, nous avons fini par écrire une application VB6 qui contenait un argument avec ce que nous voulions envoyer, puis nous avons écrit un fichier dans C# et appelé l'application vb6. Cela fonctionne car ils sont des processus séparés et ne remplacent donc pas les pools de mémoire des autres. Mon conseil pour vous est de ne pas descendre la route mapi (sauf si vous aimez la douleur), et si possible utiliser EWS (nous ne pouvons pas le faire en raison de la société ne veut pas mettre à niveau).

2

Si vous avez vraiment besoin d'aller sur la route MAPI étendue (comme nous devions le faire dans mon travail précédent), je vous conseille d'abord de le faire en C++ simple et de faire votre propre emballage pour ce dont vous avez besoin. Vous ne voulez pas d'interface directement avec MAPI dans le code managé

Je suggère également de lire http://blogs.msdn.com/stephen_griffin/ Il est fondamentalement le gourou MAPI à MS.

Bonne chance si vous y allez

1

Il est vrai que l'aide d'un wrapper C# serait presque impossible, mais l'écriture d'une enveloppe en C++. NET est très faisable. Nous avons écrit notre propre wrapper MAPI dans C++. NET et utilisé à partir de C#. Il travaille beaucoup

Thomas, ComArchive

2

Je me rends compte qu'il a été quelques mois depuis que vous avez publié ce billet, mais pour la postérité - essayez ceci: Redemption

Questions connexes