Я использую класс CDO.Message для создания и отправки электронной почты из приложения Visual FoxPro. Я проверил, что он работает, пока пользователь подключен к Интернету, а даже кажется, что он работает, когда я отправляю без подключения к сети просто отправляется, когда клиент снова подключается. Одна проблема, с которой я столкнулся с методом .Send() класса CDO.Message, заключается в том, что он не возвращает никакого значения успеха / неудачи (хотя объект генерирует исключение, если он не может отправить). Похоже, что сообщение электронной почты никогда не ожидает в папке «Исходящие» Outlook пользователя или что-то подобное, но все же кажется, что оно где-то ждет веб-соединения, когда оно отправляется.
У меня вопрос: Куда уходит электронное письмо CDO.Message, которое я вызвал .Send(), когда приложение отключено? И есть ли у него возможное время ожидания / сбой?
Я пытаюсь избежать "программирование по совпадению", любые подсказки о том, как работает CDO.Message, были бы полезны.





Если вы явно не указали иное, вы используете SMTP-сервер на локальном компьютере. Если это так, приложение отбросит сообщение в исходящую очередь локального SMTP-сервера, и вызов приложения Send () всегда будет успешным (если ваш SMTP-сервер запущен и ваше сообщение правильно отформатировано). Вы можете установить свойство истечения срока действия исходящих сообщений в службе SMTP, чтобы указать, сколько старых сообщений может быть до того, как они будут удалены из очереди исходящих сообщений.
LSoft имеет хороший гид для настройки службы SMTP в IIS 6 для использования с их пакетом LISTSERV.
Привет, ответ! Спасибо, Скотт. Принятый.