Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Отключение шифрование в outlook - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отключение шифрование в outlook (Макросы/Sub)
Отключение шифрование в outlook
shtrih Дата: Четверг, 02.04.2015, 14:19 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день!

Я через vba в outlook отправляю письма, всё работает отлично.

Вот мой макрос:
[vba]
Код
Set OutlookApp=CreateObject("Outlook.Application")
Set SM=OutlookApp.CreateItem(olMailItem)

SM.TO=qwe@qwe.ru
SM.Subject="Тема"
SM.Body ="Текст письма"
SM.Send
[/vba]

Но есть проблема, в организации настроено шифрование всех исходящих писем. (Если зайти в outlook в Сервис-Центр Управления безопасностью - Защита электронной почты, там включены галки Шифрование электронной почты). Для отправки на внешние адреса, в письме вручную, требуется это шифрование отключать.

Вопрос в том, как отключать данное шифрование с помощью макроса и потом снова включать.

Заранее спасибо.
[moder]Оформите код тегами (кнопка #)[/moder]


Сообщение отредактировал shtrih - Четверг, 02.04.2015, 14:37
 
Ответить
СообщениеДобрый день!

Я через vba в outlook отправляю письма, всё работает отлично.

Вот мой макрос:
[vba]
Код
Set OutlookApp=CreateObject("Outlook.Application")
Set SM=OutlookApp.CreateItem(olMailItem)

SM.TO=qwe@qwe.ru
SM.Subject="Тема"
SM.Body ="Текст письма"
SM.Send
[/vba]

Но есть проблема, в организации настроено шифрование всех исходящих писем. (Если зайти в outlook в Сервис-Центр Управления безопасностью - Защита электронной почты, там включены галки Шифрование электронной почты). Для отправки на внешние адреса, в письме вручную, требуется это шифрование отключать.

Вопрос в том, как отключать данное шифрование с помощью макроса и потом снова включать.

Заранее спасибо.
[moder]Оформите код тегами (кнопка #)[/moder]

Автор - shtrih
Дата добавления - 02.04.2015 в 14:19
Rioran Дата: Четверг, 02.04.2015, 15:50 | Сообщение № 2
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Кросс: ССЫЛКА.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеКросс: ССЫЛКА.

Автор - Rioran
Дата добавления - 02.04.2015 в 15:50
Rioran Дата: Четверг, 02.04.2015, 18:43 | Сообщение № 3
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Нашёл в справке Microsoft Outlook код, позволяющий зашифровать сообщение и добавить цифровую подпись. Возможно, он имеет отношение к вопросу и наведет на нужную мысль.

[vba]
Код
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    If MsgBox("Add signature and encryption using the object model?", vbYesNo) = vbYes Then
       Const PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi/proptag/0x6E010003"
       Dim oProp As Long
       oProp = CLng(Item.PropertyAccessor.GetProperty(PR_SECURITY_FLAGS))
       ' You can use this to verify the property's flag compared to
       ' what was set in Outlook.
       Debug.Print "Original flag value is: " & oProp
       uFlags = 0
       ulFlags = ulFlags Or &H1 ' Add the encrypted flag
       ulFlags = ulFlags Or &H2 ' Add the signed flag
       Item.PropertyAccessor.SetProperty PR_SECURITY_FLAGS, ulFlags
       Debug.Print "Updated flag value is: " & ulFlags
    End If
End Sub
[/vba]


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеНашёл в справке Microsoft Outlook код, позволяющий зашифровать сообщение и добавить цифровую подпись. Возможно, он имеет отношение к вопросу и наведет на нужную мысль.

[vba]
Код
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    If MsgBox("Add signature and encryption using the object model?", vbYesNo) = vbYes Then
       Const PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi/proptag/0x6E010003"
       Dim oProp As Long
       oProp = CLng(Item.PropertyAccessor.GetProperty(PR_SECURITY_FLAGS))
       ' You can use this to verify the property's flag compared to
       ' what was set in Outlook.
       Debug.Print "Original flag value is: " & oProp
       uFlags = 0
       ulFlags = ulFlags Or &H1 ' Add the encrypted flag
       ulFlags = ulFlags Or &H2 ' Add the signed flag
       Item.PropertyAccessor.SetProperty PR_SECURITY_FLAGS, ulFlags
       Debug.Print "Updated flag value is: " & ulFlags
    End If
End Sub
[/vba]

Автор - Rioran
Дата добавления - 02.04.2015 в 18:43
shtrih Дата: Пятница, 03.04.2015, 10:12 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
"http://schemas.microsoft.com/mapi/proptag/0x6E010003"

Отлично. Помогло.

Решение:

[vba]
Код

Set OutlookApp=CreateObject("Outlook.Application")
Set SM=OutlookApp.CreateItem(olMailItem)

SM.TO=qwe@qwe.ru
SM.Subject="Тема"
SM.Body ="Текст письма"

     Const PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi/proptag/0x6E010003"
     Dim oProp As Long
     oProp = CLng(SM.PropertyAccessor.GetProperty(PR_SECURITY_FLAGS))
     Debug.Print "Original flag value is: " & oProp
     uFlags = 0
     ulFlags = ulFlags Or &H2 ' Add the signed flag
     SM.PropertyAccessor.SetProperty PR_SECURITY_FLAGS, ulFlags

SM.Send
[/vba]

В данном случае письма, будут только подписываться, но не шифроваться.

Для понимания: ulFlags = ulFlags Or &H2 - что значит это выражение?

Я пробовал решить, чуть иначе, но так и не допелил (с помощью VBA не нажимать кнопку):
Set oCBs = SM.GetInspector.CommandBars
Set oDigSignctl = oCBs.item("Standard").Controls.Add(, 718, , , True)
oDigSignctl.Enabled = False
oDigSignctl.Execute

Но тут почему-то ругался на метод Execute.
 
Ответить
Сообщение
"http://schemas.microsoft.com/mapi/proptag/0x6E010003"

Отлично. Помогло.

Решение:

[vba]
Код

Set OutlookApp=CreateObject("Outlook.Application")
Set SM=OutlookApp.CreateItem(olMailItem)

SM.TO=qwe@qwe.ru
SM.Subject="Тема"
SM.Body ="Текст письма"

     Const PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi/proptag/0x6E010003"
     Dim oProp As Long
     oProp = CLng(SM.PropertyAccessor.GetProperty(PR_SECURITY_FLAGS))
     Debug.Print "Original flag value is: " & oProp
     uFlags = 0
     ulFlags = ulFlags Or &H2 ' Add the signed flag
     SM.PropertyAccessor.SetProperty PR_SECURITY_FLAGS, ulFlags

SM.Send
[/vba]

В данном случае письма, будут только подписываться, но не шифроваться.

Для понимания: ulFlags = ulFlags Or &H2 - что значит это выражение?

Я пробовал решить, чуть иначе, но так и не допелил (с помощью VBA не нажимать кнопку):
Set oCBs = SM.GetInspector.CommandBars
Set oDigSignctl = oCBs.item("Standard").Controls.Add(, 718, , , True)
oDigSignctl.Enabled = False
oDigSignctl.Execute

Но тут почему-то ругался на метод Execute.

Автор - shtrih
Дата добавления - 03.04.2015 в 10:12
Rioran Дата: Пятница, 03.04.2015, 11:35 | Сообщение № 5
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Для понимания: ulFlags = ulFlags Or &H2 - что значит это выражение?

1). &H - префикс для 16-ричного числа.
2). &H2 = 2 в десятичном исчислении.
3). Оператор OR по битам проверяет числа начиная с самого младшего разряда:

[vba]
Код
0 or 0 = 0
1 or 0 = 1
0 or 1 = 1
1 or 1 = 1
[/vba]


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщение
Для понимания: ulFlags = ulFlags Or &H2 - что значит это выражение?

1). &H - префикс для 16-ричного числа.
2). &H2 = 2 в десятичном исчислении.
3). Оператор OR по битам проверяет числа начиная с самого младшего разряда:

[vba]
Код
0 or 0 = 0
1 or 0 = 1
0 or 1 = 1
1 or 1 = 1
[/vba]

Автор - Rioran
Дата добавления - 03.04.2015 в 11:35
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отключение шифрование в outlook (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!