Outlook Add-In Benutzerdefinierte Formulare



  • Hallo,

    mit einem Add-In werden mehrerer Persönliche Formulare wie folgt in STDMETHODIMP CConnect::OnConnection(...) installiert:

    CComPtr <Outlook::_Application> m_spApp(Application); 
    CComVariant myFolder(DISP_E_PARAMNOTFOUND, VT_ERROR);
    ComQIPtr <Outlook::_MailItem> CustomMailItem;
    BSTR bstrName_T = "C:\\CustomFormular.oft";
    HRESULT hr = m_spApp->CreateItemFromTemplate(bstrName, myFolder,(IDispatch**) &CustomMailItem);
    

    Die Formulare sind dann in Outlook zu finden unter:
    Datei -> Optionen -> Erweitert -> Entwickler -> Benutzerdefinierte Formulare -> Formulare verwalten -> Persönliche Formulare

    Wie kann ich später eines von diesen Formularen per Code Öffnen, Anzeigen oder löschen?

    So in etwa sollte es mit VBA funktionieren, aber wie ist das mit C++ möglich?

    Dim oViews As MAPI.Folder
    Dim oMessage As MAPI.Message
    Dim oFolders As MAPI.Folders
    Dim oMessages As MAPI.Messages
    Dim sMessageClass As String
    
    Set oView = oFolders.Item("Commons")
    Set oMessages = oView.HiddenMessages
    For Each oMessage In oMessages
       If oMessage.Type = "IPM.Microsoft.FolderDesign.FormsDescription" Then
          sMessageClass = oMessage.Fields(&H6800001E)
          If sMessageClass = "IPM.Note.CustomFormular" Then
             oMessage.Open()
             Exit For
          End If
    Next
    

    Ein kleines Beispiel oder ein Link dazu würde mir sehr weiterhelfen. Durch Suchen, Googlen habe ich leider nichts für mich verständliches gefunden.

    Schon mal vielen Dank und ein schönes Wochenende!


Log in to reply