2011-02-07 18 views
12

Tuvimos algunos problemas en nuestro servidor de correo electrónico y los permisos se perdieron en las carpetas de correo electrónico de nuestros usuarios.¿Cómo interactúo con Exchange Server usando C#?

Lamentablemente, todos nuestros usuarios están en Outlook Web Access y no tienen acceso para cambiar los permisos en sus carpetas de correo electrónico.

Lo que me han encargado es exponer la posibilidad de cambiar los permisos en las carpetas de intercambio de correo electrónico. Mi plan es interactuar de alguna manera con Exchange y poner la información relevante en una página web de ASP.Net.

Veo que hay una dll de servicios web de Exchange, pero no estoy seguro si eso está habilitado en nuestra instalación. ¿Hay alguna otra forma de comunicarse con Exchange? Preferiblemente usando C#? ¿Es fácil activar los servicios web si está apagado? ¿Cómo puedo verificar si está activado?

Saludos,

Edit: He intentado conectar a través de EWS sin embargo yo estoy haciendo Error 102 (net::ERR_CONNECTION_REFUSED): Unknown error. Esto puede ser porque no tengo permisos o el servicio no está activado. Voy a investigar eso. Gracias por las sugerencias.

Ok, parece que tuve un URI incorrecto. Ahora recibo un "servidor de Exchange no es compatible con la versión solicitada". (Estoy tratando de enviar un correo electrónico de prueba)

+0

Normalmente, EWS está aquí: https: //mailserver/EWS/exchange.asmx – Sean

+0

En respuesta a su edición sobre la versión incorrecta, si mira la muestra a la que se vinculó en mi respuesta, tiene un bit 'ExchangeVersionType.Exchange2010' que puede necesitar cambiar dependiendo de la versión de Exchange que esté utilizando. Esta discusión de Technet podría ser útil: http://social.technet.microsoft.com/Forums/en-US/exchangesvrdevelopment/thread/b58d3aac-bd7e-4171-8d0a-46d60a3b2e17 –

+0

@ ho1 Impresionante, parece que estamos en Exchange2007_SP1 gracias por tu ayuda ho1! –

Respuesta

9

La mejor manera de comprobar si le toca una marcha y todo funciona bien, probablemente sería crear una aplicación de ejemplo simple como se describe aquí: Creating an Exchange Web Services Client Application

Hasta donde yo sé, esta es la mejor forma de acceder a Exchange desde C#. Creo que el camino anterior era CDO, pero Microsoft no soporta esto para .Net, creo.

+0

En realidad, el camino antiguo era MAPI, pero eso es historia antigua y antigua. (CDO era un contenedor para MAPI.) Https://support.microsoft.com/en-us/help/200018/differences-between-cdo--simple-mapi--and-extended-mapi – RenniePet

Cuestiones relacionadas