Estoy buscando recomendaciones para componentes ActiveX para procesar correos electrónicos

StackOverflow https://stackoverflow.com/questions/233259

Pregunta

Estoy buscando componentes ActiveX que puedan fácilmente:

  • obtener y enviar correos electrónicos a través de SMTP y POP3
  • despojar y guardar archivos adjuntos.
  • Convertir RTF (correos electrónicos de Outlook) a HTML
  • Sanitize HTML.

¿Qué componentes recomendarías? ¿Qué componentes usas?

¿Fue útil?

Solución

Sendong y recibir correo electrónico es simple con CDOSYS. Y RTF no es realmente un formato tan complejo de manejar. Pero creo que el componente ActiveX SMTP / POP # de Chilkat es algo que desea migrar.

Otros consejos

seanyboy, puedo ayudarte aquí, pero antes de que veas soluciones comerciales, hay un par de cosas que debes comprender.

Primero, hay cientos o miles de controles para hacer lo que quieras.

Pero, debes considerar CÓMO los vas a usar. Solía ??trabajar para una compañía antivirus, y cuando decidimos conectar nuestro producto a Exchange, se hizo evidente que la solución que elegimos NO iba a funcionar. El problema era que las aplicaciones comerciales seguían las RFC (generalmente) a una T. (¿O es TEE? No lo sé ...) Pero, los virus NUNCA siguen las normas RFC. Entonces, terminé escribiendo mi propio analizador Mime para nuestro escáner, y mi tasa de detección fue MUCHO mejor que cualquier otra cosa que hayamos probado. ¿Por qué? Porque cada vez que veía un correo electrónico que rompía los RFC, modificaba el código para tratarlo. El único ejemplo que me viene a la mente es el "Tipo de contenido: maintype / subtype; param = " ;. Note el espacio después de param e igual. Esto rompe las reglas de RFC, pero la mayoría de los lectores de correo tratan con eso, permitiendo que el virus haga lo suyo.

Pero, esto también es una moneda de doble cara ... En MI código, no pude descodificar un archivo adjunto con el siguiente formato:

....
 Tipo de contenido: application / octet-stream
 Content-Transfer-Encoding: base64

http://virus.virussite.com
 JVBERi0xLjMgCiXi48 / TIAo3IDAgb2JqCjw8Ci9Db250ZW50cyBbIDggMCBSIF0gCi9QYXJlbnQg  NSAwIFIKL1Jlc291cmNlcyA2IDAgUgovVHlwZSAvUGfnZQo + PgplbmRvYmoKNiAwIG9iago8PAov

...

Pero, las aplicaciones comerciales no tuvieron ningún problema en analizarlo ... Lo más probable es que hayan seguido los RFC de nuevo y no aceptaron datos Base64 si no tenían exactamente 77 caracteres (creo que 77 es el estándar RFC .. I Tendré que referenciarlo.).

Pero tuve problemas más grandes con B64 roto y B64 que se ejecutaron todos en una sola línea, etc., y tuvo que ser descodificado, así que tomé todo en el bloque de datos como datos Base64 que de hecho eran una base válida64 carbonizarse. Todo lo demás fue simplemente omitido ...

De todos modos, la clave es, decidir lo que NECESITA fuera de este control y luego decidir si desea considerar escribir el suyo propio, comprar uno comercial o incluso pagarle a alguien (como yo) para que escriba uno para usted.

(No estoy exactamente seguro de que mi última oración sea aceptable según las reglas de desbordamiento de pila, por lo que no le estoy solicitando, solo le digo que conoce sus opciones. Menciono esta opción porque tendría acceso al código fuente, y podría mantenerlo usted mismo, o buscar a alguien más para que lo mantenga, si decide romper las relaciones con su desarrollador. Esta no es una opción para el 99.99% de las soluciones comerciales ...) Si hacen un cambio, eso no funciona. usted o su aplicación, está bien, jodido .. :)

Espero que esto ayude, o al menos te dé algo para leer. je ..

Avísame si puedo ayudarte más.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top