Имя: Пароль:
1C
1C 7.7
v7: Работа с почтой на gmail.com, yandex.ru, mail.ru
0 vadim777
 
06.10.16
10:44
Какие есть сейчас ВК для работы с почтой на gmail.com, yandex.ru, mail.ru? Старые ВК типа ROM-Mail.dll не подходят, т.к. с 2014 года эти сайты перешли на использование сертификатов TLS c алгоритмом SHA-256.
1 Это_mike
 
06.10.16
10:48
(0) Душелов специально под это дело компоненту делал. да и вообще CDO вроде работает
2 vova1122
 
06.10.16
10:51
DialMail.dll   пока работает с gmail.com
3 vadim777
 
06.10.16
11:00
(2) Не могу найти чтоб скачать. Где лежит?
4 vova1122
 
06.10.16
11:05
(3) у меня на компе. Если нужно могу скинуть. (давай мыло)
5 vadim777
 
06.10.16
11:07
Сайт разработчика http://www.dialmail.ru/ - а там вилы продают.
6 vadim777
 
06.10.16
11:12
(4) Ушло на мыло.
7 Это_mike
 
06.10.16
11:14
(5) "у нас с братом один вилы на двоих, но мы трахаем всю деревню"?
8 Serginio1
 
06.10.16
11:16
9 vova1122
 
06.10.16
11:20
отправил на "uus...."
10 vadim777
 
06.10.16
11:26
(9) Получил, благодарю.
PS: может, и правда на CDO попробовать?
11 vova1122
 
06.10.16
11:30
Вам нужно отправлять или получать почту?. У меня есть готовый код для получения.
А с CDO не работал. так что по этому ничего сказать немогу
12 Это_mike
 
06.10.16
11:31
(11) злоповский на инфостарте есть
13 vadim777
 
06.10.16
11:35
(11) мне нужно и то и то - обмен архивами через почтовый ящик.
14 varelchik
 
06.10.16
11:55
(13) стучись в аську.
есть готовое решение по обмену через dialmail.
15 vadim777
 
06.10.16
12:08
(14) да у меня не то что аськи, даже вайбера нету :(
16 Это_mike
 
06.10.16
12:12
(15) заведи себе блошек в свитере... то есть бложек в твиттере...
17 vadim777
 
06.10.16
12:18
твиттер и всякие фейсбуки буржуйские неприемлю. Самый лучший способ общения - красный телефон без кнопок и циферблата.
18 Это_mike
 
06.10.16
12:20
(17) пульт с надписями "кофе", и "минет".
у хороших сотрудников там кноппочки, а у плохих - лампочки
19 varelchik
 
06.10.16
12:32
(15) тоди хто вам лекарь?
заведите.
20 Serginio1
 
06.10.16
12:38
(15) А чем (8) не подходит?
21 vadim777
 
06.10.16
14:11
(20) В смысле DialMail.dll ?
22 Serginio1
 
06.10.16
14:36
(21) В смысле

врап=СоздатьОбъект("NetObjectToIDispatch45");

врап.УстЭтоСемерка();

smtp = "smtp.yandex.ru";
            login = "[email protected]";
            password = "XXXXXXX";
            Кому = "[email protected]";

port=Врап.ChangeType("System.Int32",25);
            
            mail = врап.СоздатьОбъект("System.Net.Mail.SmtpClient",smtp,port);
            
            истина=Врап.ChangeType("System.Boolean","true");
            ложь=Врап.ChangeType("System.Boolean","false");
            
            mail.EnableSsl = истина;
            mail.UseDefaultCredentials = ложь;
            mail.Credentials = врап.СоздатьОбъект("System.Net.NetworkCredential",login, Password);
            mail.DeliveryMethod = Врап.ПолучитьТип("System.Net.Mail.SmtpDeliveryMethod").Network;
            
            Message = врап.СоздатьОбъект("System.Net.Mail.MailMessage");
            MailAddressType= Врап.ПолучитьТип("System.Net.Mail.MailAddress");
            Message.From = врап.СоздатьОбъект(MailAddressType,login);
            Message.To.Add(врап.СоздатьОбъект(MailAddressType,Кому));
            Message.Subject = "Тема Тест отправки почты SSL";
            Message.IsBodyHtml = истина;

            Message.Body = "Тело Тест отправки почты SSL";
            mail.Send(Message)//отправка




            Message.Dispose();
            mail.Dispose();
23 Serginio1
 
06.10.16
14:41
Если нужно отправить файл то

Функция ПолучитьАтачмент(file,Врап)
            data = Врап.СоздатьОбъект("System.Net.Mail.Attachment",file);
            // Add time stamp information for the file.
            disposition = data.ContentDisposition;
            IO_File=врап.получитьТип("System.IO.File");
            disposition.CreationDate = IO_File.GetCreationTime(file);
            disposition.ModificationDate = IO_File.GetLastWriteTime(file);
            disposition.ReadDate = IO_File.GetLastAccessTime(file);
            // Add the file attachment to this e-mail message.
            return data;

КонецФункции // ПолучитьАтачмент


Для сч=1 По СписокФайлов.размерсписка()  Цикл
                Файл=СписокФайлов.ПолучитьЗначение(сч);
                
                message.Attachments.Add(ПолучитьАтачмент(Файл,Врап));
            КонецЦикла;
24 Serginio1
 
06.10.16
14:53
Для GMail нужно использовать потр 587
http://stackoverflow.com/questions/29465096/how-to-send-an-e-mail-with-c-sharp-through-gmail

Для mail.ru 25

И  mail.EnableSsl = истина;
25 vadim777
 
06.10.16
15:03
(16) Поздно - твиттер продается.
26 vadim777
 
06.10.16
15:12
(23,24) Скорее всего остановлюсь на твоем варианте, чем на с CDO - мало-ли что буржуям в голову придет. А с DialMail.dll какая ни какая - автономность, независимость от мелкомягких заморочек.
27 Serginio1
 
06.10.16
15:17
(26) Все так или иначе используют мелкомягкие заморочки. Ты же под Windows работаешь. Просто ты практически работаешь напрямую с классами .Net. А их используют поголовно в том же Asp.Net. А учитывая, что в семерке вообще плохо с выходом за границы 1С то NetObjectToIDispatch45 большая подмога

Исходники, статьи здесь

http://ru.stackoverflow.com/questions/527763/%d0%9a%d0%b0%d0%ba-%d0%b2%d1%8b%d0%b7%d0%b2%d0%b0%d1%82%d1%8c-%d0%bc%d0%b5%d1%82%d0%be%d0%b4-%d0%b8%d0%b7-c-%d0%b2-1%d0%a1/527802#527802
28 Serginio1
 
06.10.16
15:47
Ну и добавлю работу с файлами

        Patch=врап.получитьТип("System.IO.Path");
        Путь=Patch.GetTempPath();
       Файл=ФайлДляТаблицы+".XLS";
      Файл=Patch.Combine(Путь,Файл);
      СпзФайлов.ДобавитьЗначение(Файл);
29 CepeLLlka
 
06.10.16
15:52
У меня так текст отправляется..

//*****************************************************************************
//SendMsg(СтрПчт)
//
//Параметры:
//    СтрПчт - ТекстПисьма.
//Возвращает значение:
// Возвращает отправлено письмо или нет.
//
//Описание:
//Отправляет письмо на почту.

Функция SendMsg(СтрПчт)
    //Настроечки в переменных
    СМТП = "smtp.gmail.com";
    Логин = "test1с@gmail.com";
    Пароль = "891010*****";
    Кому = "****[email protected]";
    ОтКого = """1С проверка"" <test1с@gmail.com>";
    Тема = "Загрузка данных на сайт";
    //Конфа
    CDOc=createObject("CDO.Configuration");
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/sendusing").value=2;
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/smtpserver").value=СокрЛП(СМТП);
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport").value=465;
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/sendusername").value=СокрЛП(Логин);
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/sendpassword").value=СокрЛП(Пароль);
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate").value=?(ПустоеЗначение(СокрЛП(Логин))=1,0,1);
    CDOc.fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl").value=1;
    CDOc.fields.update();            
    //Само письмо.. и его отправка
    CDO=СоздатьОбъект("CDO.Message");
    CDO.configuration = CDOc;
    CDO.to=СокрЛП(Кому);
    CDO.from = ОтКого;
    CDO.subject = Тема;
    CDO.textBody = СтрПчт;
    CDO.textBodypart.charset = "windows-1251";
    Попытка
        CDO.send();
    Исключение
        Сообщить("Ошибка при отправке: "+ОписаниеОшибки(),"!!!");
        Возврат 0;
    КонецПопытки;
КонецФункции // SendMsg(СтрПчт)

Процедура ОтправкаПочты(ТекстПисьма);
        Если ПустаяСтрока(ТекстПисьма) <> 1 Тогда
            SendMsg(ТекстПисьма);
        КонецЕсли;
КонецПроцедуры
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс