Hilfe mit der neuen David Info.Center Schript-Engine

  • Hallo.

    Die neue Script-Engine ist genau, was ich schon lange suchte. Viele der Funktionen, die ich brauche kann ich nun selbst in David integrieren.
    Nur eines habe ich bislang nicht herausgefunden...

    Ich habe herausfinden können, wie ich mehrere markierte Einträge in der Eintragsliste "durchlaufe", aber mit welchen Commands kann ich auf diese Email-Einträge eine Operation ausführen? Ich weiß, wie ich die physikalische Datei ermittle und auch, wie ich alle Dateien einer Mail finde, aber ich will die komplette Mail mit allen Zugehörigkeiten als EIN Objekt behandeln...genau wie es die David-Funktion "als Email versenden" tut.

    Wenn man im Kontextmenu eines Eintrages in der Eintragsliste auf "als Email versnden" klickt, dann ist die komplette Email mit allen Headern und Anhängen etc. im Anhang dieser neuen Mail. Ebenso, wenn ich einen Eintrag aus der Eintragsliste in ein neues Archiv verschiebe...auch da ist alles dabei, was zu dieser Mail gehört.

    Genau das will ich auch machen....ABER WIE???

    Vielleicht weiß einer von euch bereits Bescheid hierüber?

    LG
    Benni

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Hi,

    also du kommst so weit, das du ein Item aus der Selection bekommst. Diese Item hat die Methode Getmessageitem2(). Damit erhällst du die gesamte sendrec als MessageItem2. Wie du mit einem MsgItem2 umgehen kannst findest du in der DvAPI Dokumentation.

    Gruß Uwe

  • Alles schon klar soweit.

    Aber wie füge ich dieses MsgItem einer neuen Email als Anhang an?

    Mit dem Befehl

    Code
    oEditor.ExecCommand "InsertAttachment", "x:\test.txt"

    kann ich die Datei test.txt der Mail anfügen, aber wie füge ich hier jetzt die komplette MEssage aus dem EntryList-Item an???

    Wenn mir hierzu jemand einen Tip gibt wäre ich einen groooooßen Schritt weiter!

    Danke.

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Hi,

    das ist wirklich etwas kniffliger, denn dazu musst du zunächst das item als eml-Datei speichern. Hierzu gibt es in der DvAPI einen EntryPoint, der diese Funktion für dich übernimmt. Ob das unter vbscript funktioniert glaube ich allerdings eher werniger. Aber versuch es einfach mal. Ein VB beispiel findest du in der DvAPI Doku.

    Gruß Uwe

    PS: Das sollte dabei für dich wichtig sein.... ;)
    TypeCasting von IMessageItem2 in MessageItem

    Code
    oFields = oItem2.Fields 
    oItem = oArchive.ItemFromID(oFields.Item("FileName").Value, 99)
  • Ich habe ja dem neuen "Persönlich" Menüpunkt dem Kampf angesagt und habe nach vielem rumprobieren auch den Namen des Dings rausgefunden "NICKNAME"

    Mit dem folgenden Script ist zwar der Menüpunkt Persönlich weg, aber nun heißt der Menüpunkt "Bearbeiten" auf einmal persönlich :cursing:

    Code
    ' SHU - 10.03.2008 
    ' Entfernt den neuen Tobit.NET Menüpunkt 
    ' Aber nur wenn noch keine Zugangsdaten eingetragen wurden 
    ' falls doch muss man diese zuerst aus der Registry entfernen 
    sub Initialize(oInfoCenter, key) 
    Set oBar = oInfoCenter.GetCommandBar("Menu/Main") 
    oBar.Remove "NICKNAME" 
    end sub
  • Hallo.


    Quellcode


    oFields = oItem2.Fields
    oItem = oArchive.ItemFromID(oFields.Item("FileName").Value, 99)

    Deinen Quellcode bringe ich leider nicht zum laufen.... ich bekomme der ersten Zeile schon einen Fehler, dass angeblich Argumente fehlen und wenn ich dann die zweite Zeile ändere in:
    oItem = oArchive.ItemFromID(oItem2.Fields.Item("FileName").Value, 99)
    (was ja eigentlich das selbe bewirken sollte), dann bekomme ich eine "unbekannte Ausnahme"....

    Vielleicht kannst du mir noch etwas mehr helfen (ich weiß, dass du mir nicht meine Anwendung programmieren willst, aber ich brauche noch ein wenig mehr Unterstützung :wacko: BITTE.

    Danke schonmal.

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Code
    Set oMsgItem = oEntryItem.GetInterface2 'MessageItem2
    
    
      	oItem = oArchive.ItemFromID(oMsgItem.Fields.Item("FileName").Value, 99)
      	Filename = Space(260) 
      	If DVEmlFromMailItem(oMsgItem, Filename) <> 0 Then 
        	' In FileName are the saved EML file 
        	oEditor.ExecCommand "InsertAttachment", Filename
        	'FileCopy FileName, "c:\" & oMailItem.Subject & ".eml" 
      	End If

    Das ist übrigens mein bisheriger Versuch....vielleicht kann da jemand eine Korrektur direkt anbringen... DANKE

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Hi,
    So wie du das geschrieben hast kann das nicht funktionieren. Du musst den EntryPoint der DvAPI benutzen.
    Ich werde das nächste Woche einmal durchspielen und melde mich dann.

    gruß Uwe

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!