Extended Macro Plugin (XMP) 0.90

  • Zitat

    DOS nach ANSI Zeichensatzkonvertierung fuer das Einlesen von DOS-Dateien.
    Eventuell gleich als Parameter bei den entsprechenden Funktionen?


    Du meinst bei %XMP_FileLines? Lässt sich machen.
    Bei %XMP_RunCmd ist bereits ein Parameter für die Konvertierung vorhanden.
    Habe ich noch was übersehen?

    Edit: In der nächsten Version kann auch die Ausgabe von %XMP_FileLines von ASCII in ANSI konvertiert werden.

  • Zitat

    Du meinst bei %XMP_FileLines? Lässt sich machen.


    Ja, bitte.

    Zitat

    Bei %XMP_RunCmd ist bereits ein Parameter für die Konvertierung vorhanden.


    Nur kann ich da keine DOS-Texte in meinen Nachrichtentext einlesen.

    Zitat

    Habe ich noch was übersehen?


    Nein.

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

  • Zitat

    Nur kann ich da keine DOS-Texte in meinen Nachrichtentext einlesen.


    Theoretisch über ECHO :D , aber in der nächsten Version werden von %XMP_FileLines auch ASCII-Dateien unterstützt.

    VORANKÜNDIGUNG:
    Ab der nächsten Version wird %XMP_FileLines bei keiner Angabe der Zeilenanzahl oder bei einer Zeilenanzahl von "0" ALLE Zeilen in der Datei zurückgeben. Das heißt, dass alle Makroaufrufe, die nur eine Zeile zurückgeben sollen, mit dem Wert "1" für das Argument "Anzahl" aufgerufen werden müssen.

  • Zitat


    Theoretisch über ECHO :D , aber in der nächsten Version werden von %XMP_FileLines auch ASCII-Dateien unterstützt.


    Du meinst sicherlich type oder more?

    Wunsch: Ermitteln der Zeilenanzahl einer Datei - um Dateien zeilenweise einlesen zu koennen.

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

    Einmal editiert, zuletzt von Thomas Woelk (27. Oktober 2004 um 22:29)

  • Code
    %XMP_ClearLines(Text, [Max], [Min])
    Entfernt aus einem "Text" alle unnötigen Leerzeilen.
    
    
    Das Argument "Max" legt die Anzahl der Leerzeilen fest, die maximal im Text vorkommen dürfen. Wird diese Zahl überschritten, werden die betreffenden Leerzeilen gegen die in "Min" angegebenen Leerzeilen ersetzt.
    
    
    Der Standardwert für "Max" ist "3" und für "Min" "2".


    Kann man nicht die Option so erweitern, dass alle Leerzeilen entfernt werden?

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

  • Code
    %XMP_FileLines(Datei, [Start], [Anzahl])
    Liest aus der "Datei" ab der Zeile "Start" eine bestimmte "Anzahl" von Zeilen aus und gibt diese als Ergebnis zurück.
    
    
    Wird "Start" oder "Anzahl" weggelassen, wird 1 Zeile angenommen. Der Aufruf des Makros nur mit einem Dateinamen gibt somit die erste Zeile der Datei aus.


    Koennte man hier einen Rueckgabewert einfuehren wenn Start > als die eigentliche Anzahl der Datei(en) ist? Sozusagen als zur Fehlerbehandlung?

    Aber bitte optional, damit man die Fehlerauswertung steuern kann. Nicht dass der Wert "#error#" ist was der eigentliche Rueckgabewert der Zeile ist. ;)

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

    Einmal editiert, zuletzt von Thomas Woelk (27. Oktober 2004 um 22:54)

  • Der Rueckgabewert ist das Ergebnis. Rueckgabewert = Text (welcher in den Mailbody oder Variable geschrieben wird).

    Probiere doch einfach mal das Beispiel aus der Hilfedatei.

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

  • Das Problem ist, daß %XMP_RunCmd(Befehl, [NoConvert], [Timeout]) die cmd.exe aus Win NT, 2000 oder XP aufruft und nicht die command.com aus Win 95 oder 98. Das Beispiel gibt deshalb nur die Fehlermeldung cmd.exe nicht gefunden aus.


    Floppy

  • Zitat

    Du meinst sicherlich type oder more?

    Ich meinte natürlich TYPE.

    Zitat

    Wunsch: Ermitteln der Zeilenanzahl einer Datei - um Dateien zeilenweise einlesen zu koennen.

    Ich versuchs mal.

    Zitat

    Kann man nicht die Option so erweitern, dass alle Leerzeilen entfernt werden?

    So gehts:

    Code
    %XMP_ClearLines("%TEXT",0,0)
    Zitat

    Koennte man hier einen Rueckgabewert einfuehren wenn Start > als die eigentliche Anzahl der Datei(en) ist? Sozusagen als zur Fehlerbehandlung?

    Aber bitte optional, damit man die Fehlerauswertung steuern kann. Nicht dass der Wert "#error#" ist was der eigentliche Rueckgabewert der Zeile ist. ;)

    Ich werde mir das mal genauer ansehen.

  • Eine neue Version ist da:

    Code
    [+] Das Makro "%XMP_FileLnCnt" zum Ermitteln der Zeilenanzahl in einer Datei wurde hinzugefügt. 
    [+] Das Makro "%XMP_StrAttach" zum Anfügen einer Zeichenkette als Attachment wurde hinzugefügt. 
    [*] Das Makro "%XMP_RunCmd" kann jetzt auch unter Windows 9x und Windows ME verwendet werden. 
    [*] Das Makro "%XMP_FileLines" kann nun auch ganze Dateien auslesen. 
    [*] Das Makro "%XMP_FileLines" kann jetzt auch DOS-Dateien in das Windows-Format konvertieren. 
    [-] Das Makro "%XMP_FileLines" hat beim Lesen von Daten hinter dem Dateiende nicht vorhandene Leerzeilen zurückgegeben. 
    [-] Einige Fehler in der Hilfedatei wurden korrigiert.
  • Es gab mal von einem Autor ein Plugin, welches die CRC-Checksummen etc. der Dateianlagen mit ermittelte. Koennte man das mit implementieren?

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

  • Wie sieht es mit entsprechend detailierten Dateiinformationen aus eventuell gleich als nummerierte Liste?

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

  • Zitat

    Es gab mal von einem Autor ein Plugin, welches die CRC-Checksummen etc. der Dateianlagen mit ermittelte. Koennte man das mit implementieren?


    Wenn ich mich nicht irre, konnte man bei diesem Plugin nur Attachments über Makros einfügen - und von diesen wurde auch die Checksumme in eine eigene Datei (ebenfalls als Attachment angehängt) übernommen. So was in der Art habe ich mir bereits angesehen. Da es aber unterschiedliche Ansichten gibt, wie denn nun die Initialisierung bzw. die Beendigung der CRC-Berechnung auszusehen hat, muss ich mich noch etwas umsehen.

    Das einzige Plugin, das erkennt, wenn eine Datei als Attachment hinzugefügt wurde, ist ein Antiviren-Plugin. Ein Macro-Plugin wird von TB! leider nicht mit den notwendigen Informationen versorgt.

  • Verwerfe die Idee der CRC-Prüfsummen. Kann eh keiner - maximal einer was damit anfangen.

    Man möchte manchmal Kannibale sein, nicht um den oder jenen aufzufressen, sondern um ihn auszukotzen. Johann Nestroy.

    Einmal editiert, zuletzt von Thomas Woelk (6. November 2004 um 17:50)

  • Zitat

    Die entsprechende Datei verifizieren.

    Allerdings nur, ob sie richtig übertragen worden ist, oder? Weil wer den Anhang manipulieren kann, kann auch die CRC austauschen :D.