2011-03-01 2 views
2

У меня есть приложение VB6, которое используется большим количеством клиентов.Отправлять письма через VB6, если нет почтового клиента

Мне нужно разрешить клиентам отправлять мне письма. Раньше я делал это с помощью средств Microsoft MAPI. Однако не все из них имеют установленный почтовый клиент, поскольку вместо этого они используют веб-почту.

Есть ли какой-либо другой метод, который кто-либо может порекомендовать, что позволит им это сделать?

+1

Это выглядит как вещь: http://www.freevbcode.com/ShowCode.Asp?ID=109. Кто-нибудь использовал его? – Urbycoz

+1

Дубликат этого вопроса [вопрос о отправке электронной почты с VB6 через smtp] (http://stackoverflow.com/questions/3539242/sending-e-mail-via-smtp-using-vb6) – MarkJ

+0

Возможный дубликат [Отправка сообщения электронной почты через VB6] (http://stackoverflow.com/questions/5517217/sending-an-email-through-vb6) – Deanna

ответ

5

SMTP

Вы можете использовать CDO для Windows, чтобы сделать это, если мы делаем несколько предположений:

  • Ваши пользователи все на Win2K или более поздней версии.
  • Пользователи никогда не будут отставать от брандмауэра, блокирующего SMTP или проксирования всех портов SMTP на корпоративный сервер.
  • У вас есть SMTP-сервер, с которым у вас есть учетная запись, с которой вы можете отправлять почтовые письма.
  • Встраивается адрес и учетные данные сервера в вашу программу.

Иногда использование SMTP-сервера, прослушивающего альтернативный порт, будет решать вторую проблему, но часто такой альтернативный порт еще более блокируется.

SMTP вымирает

злоупотребления со временем сделали SMTP менее и менее жизнеспособным для автоматизированного/поддержанного контакта с пользователем. Есть слишком много переменных, связанных с попыткой открыть какой-то «чистый канал» для SMTP-связи, поскольку люди труднее бороться со спамерами и тому подобное.

Сегодня для меня было бы гораздо чаще использовать WebDAV или веб-службу. Оба используют HTTP/HTTPS, которые, скорее всего, пройдут через брандмауэры и обычно получат большинство прокси-серверов. WebDAV часто более «скользкий» на этом, чем веб-службы, которые все больше и больше доверяют. Вы также можете использовать что-то большее RESTful, чем SOAPy, поскольку трафик «пахнет» как «просмотр пользователей на прокси-серверы».

WebDAV является Clean Option

Есть даже бесплатные провайдеров WebDAV предлагает 2 Гб памяти с основным и гостевым пользователем. Учетной записи гостя могут быть предоставлены ограниченные права на различные папки, поэтому некоторые папки могут отправлять сообщения, другие папки, из которых они могут получить данные (только для чтения) и т. Д. Для платной учетной записи вы можете получить больше места для хранения, дополнительных пользователей и т. Д. .

Это хорошо работает. Вы даже можете использовать один и тот же хостинг для файлов версии программы, новый код версии, который будет загружен и установлен, и т. Д. Все, что вам нужно в конце, - это программа-агрегатор, которая забирает сообщения пользователя и удаляет их с помощью основного пользователя/pw.

Вам по-прежнему необходимо встроить учетные данные пользователя в свою программу, но может быть проще изменить пароли с течением времени.Просто попросите программу получить информационный файл с новым паролем и датой вступления в силу, и программа перевернет «новый» пароль на «текущий» после запуска в эту дату или после.

Поддержка WebDAV в Windows варьируется. Начиная с WinXP SP3 вперед вы можете просто программно сопоставить букву диска с общим ресурсом WebDAV, а затем использовать для него обычные операторы ввода-вывода файлов и отменить письмо, когда это будет сделано. Для более общего использования даже для Win9x вы можете создать простой клиент WebDAV поверх XMLHTTPRequest или использовать стороннюю библиотеку.

Web Services имеют более высокие затраты

Просто начать с вас есть код на стороне сервера, чтобы писать и поддерживать, и вы должны использовать определенный вид хостинга. Например, если вы построили его с помощью PHP, вам нужен хост PHP, ASP-узел ASP, ASP.Net-хост ASP.Net и т. Д.

Веб-службы также могут быть более проблематичными с точки зрения управления версиями. Если позднее вы обновите свою программу для предоставления различной информации в этих контактных сообщениях пользователя, вам нужно будет сделать еще одну веб-службу, а также изменить как приложение, так и агрегатор. Используя WebDAV, вы можете просто создать папку «нового формата» на сервере и загрузить новую программу в новый формат. Ваш агрегатор может просто вытащить из обеих папок и внести необходимые переформатирования в новый формат локального базы данных/репозитория сообщений.

Это всего лишь дополнительные дополнительные усилия, хотя веб-служба может быть способ пойти, даже если это просто что-то, написанное как акцептор формы GET/POST HTML.

+0

Какое обстоятельное объяснение. Очень признателен. – Urbycoz

Смежные вопросы