AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
01.06.20 - 15:34:00
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino Sonstiges
| |-+  OLE/COM-Programmierung
| | |-+  COM (C# / VBA) - MIME Export
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: COM (C# / VBA) - MIME Export  (Gelesen 3752 mal)
InfoStudent86
Frischling
*
Offline Offline

Beiträge: 3


« am: 25.05.10 - 15:03:22 »

Hallo,

ich versuche seit Tagen den Inhalt eines Body Feldes Formatiert aus Lotus Notes auszulesen. Dabei geht es mir insbesondere darum, das der Text genauso wie z.B. in einer Mail aussieht.  (Tabellen, Inline-Attachments).

Datz habe ich versucht mit Hilfe der COM API ein NotesDokument in MIME zu Konvertieren. Was leider total gescheitert ist. Ich komme an die MIME Entity nicht heran. Sie ist NULL.


Villeicht habe ich auch einen falschen Ansatz gewählt. Ich bin für jeden Tipp Dankbar.


Code:
 public class NotesRtfExport
    {
        const string cNotesConvertFormName  = "CONVERT_FORM"    ;
        const string cNotesConvertFieldName = "CONVERT_FIELD"   ;

        Domino.NotesSession  nSession   = null  ;
        Domino.NotesDocument nDoc       = null  ;

        public NotesRtfExport(Domino.NotesSession nSession, Domino.NotesDocument nDoc)
        {
            this.nSession   = nSession  ;
            this.nDoc       = nDoc      ;
        }

        public string GetRtfCode(string nItemName)
        {
            bool                            nCurrentMimeEntity    = false  ;   // zwischenspeichern der aktuellen MimeKonfig
            Domino.NotesRichTextItem        nRtfItem              = null   ;

            Domino.NotesDatabase            nConvertDb            = null   ;
            Domino.NotesDocument            nConvertDoc           = null   ;
            Domino.NotesRichTextItem        nConvertRtfItem       = null   ;
            Domino.NotesItem                nConvertMimeItem      = null   ;
            Domino.NotesMIMEEntity          nConvertMimeEntity    = null   ;
            string                          nConvertDocId         = ""     ;


            try
            {
                nRtfItem = (Domino.NotesRichTextItem)nDoc.GetFirstItem(nItemName);

                if (nRtfItem != null)
                {
                    nCurrentMimeEntity = nSession.ConvertMime;
                    nSession.ConvertMime = true;

                    nConvertDb = nSession.GetDatabase(@"xxxxxxxxxxxx", @"mail\administ.nsf", true);

                    nConvertDoc = nConvertDb.CreateDocument();
                    nConvertDoc.ReplaceItemValue("Form", cNotesConvertFormName);
                    nConvertRtfItem = nConvertDoc.CreateRichTextItem(cNotesConvertFieldName);
                    nConvertRtfItem.AppendRTItem(nRtfItem);
                    nConvertDoc.Save(true, false, true);
                    nConvertDocId = nConvertDoc.UniversalID;

                    nConvertDoc = null;

                    nSession.ConvertMime = false;
                    nConvertDoc = nConvertDb.GetDocumentByUNID(nConvertDocId);

                    if (nConvertDoc != null)
                    {
                        nConvertMimeItem = nConvertDoc.GetFirstItem(cNotesConvertFieldName);
                        nConvertMimeEntity = nConvertMimeItem.GetMIMEEntity();  // ist NULL und ich kann nicht weiterarbeiten :-(
                    }

                }
            }
            catch
            {
            }
            
            return "";
        }
    }

Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: