Опытные мелочи-8, или «Почтовая тройка на VBS»

    image Продолжение «опытных мелочей». Предыдущие части: раз, два, три, четыре, пять, шесть, семь.

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


    Без долгих прелюдий, вот собственно сам скрипт, и несколько пояснений к нему:
    • Скрипт использует старинный, но, от того не менее полезный объект CDO.Message
    • Скрипт позволяет отправить e-mail на заданный адрес, указать обратный адрес, тему письма, отправить скрытую копию, добавить вложение в виде файла. Все эти параметры передаются скрипту в виде аргументов.
    • Описание аргументов и пример использования можно посмотреть если просто запустить скрипт, без каких-либо параметров. Он выдаст мини-хелп.
    • Настройки почтового сервера, при написании кода, было решено не выносить никуда вовне. Я посчитал, что это редкоизменяемые настройки, и в пределах одной среды они будут практически статичными. Это все настраивается прямо внутри скрипта в конце кода (там есть необходимые пояснения)
    • С помощью этого скрипта можно решить ряд задач, например в нашем случае это было:
      • отправка пакетов документов из 1С контрагентам (выбор документов — запуск обработки, которая а) распечатывает в PDF, б) отправляет готовые PDF по почте
      • отправка почты после еженочной обработки нашей внутренней DBF базы в старинном софте для СКУД (там регулярно нужно строить отчеты по проходу через турникеты, но их можно делать только из консоли и только распечатывать. Мы специальной командой формируем отчет, печатаем в PDF и отправляем по почте начальнику СБ)
      • отправка уведомлений о работе бэкапа там, где не стоит специального софта, все бэкапы примитивны и делаются самописными скриптами
      • и т.п.
    • Подробнее про CDO.Message и более продвинутые варианты настроек можно почитать в первоисточнике (ссылки справа), или поискать примеры самостоятельно на просторах интернета


    UPD: коллеги рассказывают, что есть уже готовые, более функциональные утилиты для таких задач, и что в статье описан очередной велосипед. Вот пример.

    Продолжение следует.
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 10

      –2
      укажите в топике, что библиотеку CDO предварительно надо загрузить и установить.
        +3
        Это немного не то.
        Вы дали ссылку на библиотеку, которая providing access to Outlook-compatible objects through a COM-based API, а у меня в коде этого нет.
        Скрипт нормально работает на XP, Server 2003, Win7, 2008R2 как с установленным Office так и без него.
        Никаких дополнительных загрузок не требуется.
        0
        Давно искал что-то подобное. Теперь внедрим по полной в систему)
          0
          А чем вам не нравятся готовые утилиты для отправки почты?
            0
            Всем нравятся, если они бесплатные и делают то что мне нужно.
            Я просто не нашел тогда того, что хотелось.
            Вы знаете готовые, бесплатные утилиты которые отправляют почту из консоли в Windows?
            Так поделитесь :)
              +1
              Я использую blat — www.blat.net/
                0
                добавил в статью.
                  0
                  Я сам не сразу нашел эту утилиту. Потратил на поиски дня два.
            0
            Если не военная тайна — познакомьте поподробнее с
            отправка уведомлений о работе бэкапа там, где не стоит специального софта, все бэкапы примитивны и делаются самописными скриптами


            а то очень интересно…
              0
              если вы про скрипт для бэкапа — то познакомлю чуть позже. будет отдельный пост на эту тему.
              или нет?

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.