Могут ли две надстройки VSTO обрабатывать одно и то же событие приложения Outlook (application.newmailex) - PullRequest
0 голосов
/ 15 октября 2018

Я пишу две надстройки для двух отдельных отделов, в которых я работаю. Оба будут обрабатывать разные типы сообщений электронной почты, когда они поступят, хотя оба являются довольно большими надстройками, и я бы предпочел не объединять их.При этом некоторым людям в конечном итоге придется одновременно запускать обе надстройки.

Возможно ли одновременно установить две надстройки, и у них обеих будут подпрограммы, которые обрабатывают application.newmailex?

т.е. я могу иметь:

Надстройка 1:

Private Sub Application_NewMailEx(EntryIDCollection As String) Handles Application.NewMailEx

    For Each itemID In Split(EntryIDCollection, ",")
        Dim item = Application.Session.GetItemFromID(itemID)
        If TypeName(item) = "MailItem" Then
              if item.subject.contains("team1:") then
                   'do stuff
              end if
        end if
    next
end sub

Надстройка 2:

Private Sub Application_NewMailEx(EntryIDCollection As String) Handles Application.NewMailEx

    For Each itemID In Split(EntryIDCollection, ",")
        Dim item = Application.Session.GetItemFromID(itemID)
        If TypeName(item) = "MailItem" Then
              if item.subject.contains("team2:") then
                   'do stuff
              end if
        end if
    next
end sub

Или я долженподдерживать одно большое дополнение:

Private Sub Application_NewMailEx(EntryIDCollection As String) Handles Application.NewMailEx

    For Each itemID In Split(EntryIDCollection, ",")
        Dim item = Application.Session.GetItemFromID(itemID)
        If TypeName(item) = "MailItem" Then
              if item.subject.contains("team1:") then
                   'do stuff
              else if item.subject.contains("team2:") then
                   'do other stuff
              end if
        end if
    next
end sub

1 Ответ

0 голосов
/ 15 октября 2018

Да, две разные надстройки могут быть установлены в одном Outlook.Очевидно, они могут иметь одинаковые обработчики событий, с этим проблем нет (вам не нужно ничего объединять).Единственное, что вы не можете контролировать - это порядок уведомлений этих двух надстроек.Ваша «Надстройка 1» может получить Application_NewMailEx первое или второе и то же самое для вашей «Надстройки 2».Просто имейте это в виду при кодировании.

...