vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Newsletter  | Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2017
 
zurück
Decode/Encode DLL

Schreiben Sie jetzt Ihren eigenen eMail-Client. Die DLL beinhaltet alle Funktionen für das automatisch Codieren und Entcodieren von eMails. Per Funktionsaufruf erhalten Sie die wichtigsten Daten einer eMail (Absender, Betreff, Datum). Anlagen können optional automatisch in die entsprechenden Dateinamen extrahiert werden.
01.08.01Ein Bericht von Dieter Otter

Was ist Decode/Encode-DLL?

Decode/Encode DLL ist eine Entwicklerkomponente, welche speziell für das Codieren und Decodieren von Dateien entwickelt wurde. Gerade was den heutigen EMail-Verkehr betrifft, so stellt man fest, daß die Mails und deren Dateianhänge mit den unterschiedlichsten Codierformaten versandt werden. Das ist ja auch alles halb wo wild, solange Sie nicht Ihren eigenen EMail-Client programmieren und genau diese verschiedenen und häufig verwendeten Verschlüsselungsverfahren kennen müssen.

Wenn Sie jedoch eine eigene EMail Sende- und Empfangsfunktion in Ihrer Anwendung integrieren möchten, so ist Decode/Encode-DLL genau das richtige Tool für Sie.

Eher zufällig bin ich im Mai diesen Jahres auf die Decode/Encode-DLL Entwicklerkomponente gestossen, habe dann kurz den englischen Beschreibungstext "studiert" und musste feststellen, daß laut dieser Beschreibung alle meine Probleme bzgl. dem Codieren und Decodieren von Mailnachrichten gelöst sein würden.

Installation

Die Installation ist denkbar einfach. Nach dem Download entpacken Sie die gezippte Datei in ein Verzeichnis Ihrer Wahl und kopieren dann die DLL-Datei Decenc32.dll am besten in das Windows-/Systemverzeichnis. Die DLL braucht nicht registriert zu werden und steht sofort zum Einbinden in der eigenen Anwendung zur Verfügung.

Handhabung

Im Installationsverzeichnis finden Sie u.a. auch Beispiele für das Verwenden der Decode/Encode DLL in Visual Basic Projekte. Das Demo-Projekt ist ziemlich einfach gehalten - bietet aber einen groben Überblick über die möglichen und unterstützen Funktionen. Die DLL wird nicht - wie es im Gegensatz zu ActiveX-DLL's der Fall ist - über Projekte - Verweise referenziert, sondern direkt über Deklarationen im Codeteil - also genau wie man es von den Windows-API Funktionen her kennt mit Declare Function "...". Alle DLL-Deklarationen befinden sich in einer BAS-Datei, welche einfach in die bestehende Anwendung eingefügt wird.

Funktionen

Decode/Encode-DLL stellt nachfolgende Funktionen zur Verfügung. Alle Funktionen sind sehr leicht verständlich und erwarten nur ein paar wenige Parameter.

Nachrichten-Empfang
  • GetNumFilesToDecode: Ermitteln der Anzahl angehängter Dateien einer Mailnachricht
  • DecodeFile: autom. Entschlüsseln und Speichern von Dateianlagen
  • GetMessageText: Extrahieren des reinen Nachrichtentextes einer Mail (HTML und/oder Plaintext)
  • GetMessageHeaderField: Funktion, um Teile des Nachrichten-Headers auszulesen (From, To, Subject, Date, Cc, Reply-To, Company)
Nachrichten-Versand
  • EncodeFile: Verschlüsseln von Dateianhängen (Base64)
sonstige Funktionen
  • SplitFile: Aufteilen einer großen Datei in mehrere kleinere Einzeldateien
  • ConcatenateRelated: Zusammenführen mehrere Einzeldateien in eine Gesamtdatei
  • EncodeBuffer: String nach Base64/UUEncode/XXEncode verschlüsseln
  • DecodeBuffer: String von Base64/UUEncode/XXEncode entschlüsseln

Ein kleines Anwendungsbeispiel

Im nachfolgenden möchte ich Ihnen ein kleines Anwendungsbeispiel zeigen, welches demonstriert, wie leicht mit der Decode/Encode-DLL-Komponente eine "rohe" EMail-Nachricht in alle relevanten Teile zerlegt werden kann.

Das EMail selbst wird vom Mailserver in folgender Form abgerufen:

Return-Path: <dieter@vbarchiv.de>
Received: from mout02.kundenserver.de ([195.20.224.133]) by 
	mailin05.sul.t-online.de with esmtp id 15Q9Wp-0lyU1wC; 
	Fri, 27 Jul 2001 17:27:51 +0200
Received: from [195.20.224.204] (helo=mrvdom00.schlund.de)
	by mxng07.kundenserver.de with esmtp (Exim 3.22 #2)
	id 15Q9Wm-0000I2-00
	for info@tools4vb.de; Fri, 27 Jul 2001 17:27:48 +0200
Received: from [217.4.252.74] (helo=pentium400)
	by mrvdom00.schlund.de with smtp (Exim 2.12 #2)
	id 15Q9Wl-0005Fk-00
	for info@tools4vb.de; Fri, 27 Jul 2001 17:27:47 +0200
Message-ID: <000c01c116b0$a4063550$564afea9@pentium400%gt;
From: "Dieter Otter" <dieter@vbarchiv.de>
To: <info@tools4vb.de (Dieter)>
Subject: Ein Test EMail per Outlook
Date: Fri, 27 Jul 2001 17:27:25 +0200
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0009_01C116C1.673DFF20"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200

This is a multi-part message in MIME format.

------=_NextPart_000_0009_01C116C1.673DFF20
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hallo Dieter,

dies ist nur eine Testnachricht,=20
welche =FCber MS-Outlook versandt wurde.

Viele Gr=FC=DFe,
Dieter

------=_NextPart_000_0009_01C116C1.673DFF20
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 5.50.4134.600" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hallo Dieter,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>dies ist nur eine =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Testnachricht, welche =FCber =
<STRONG>MS-Outlook</STRONG> versandt=20
wurde.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>Viele Gr=FC=DFe,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Dieter</FONT></DIV>
</BODY></HTML>

------=_NextPart_000_0009_01C116C1.673DFF20--

Wie Sie sehen, enthält die Nachricht einen Nachrichtenkopf (Header), den Nachrichtentext im PLAIN-Format, sowie anschließend noch im HTML-Format.

Mit Hilfe der Decode/Encode-DLL-Funktionen ermittelt Sie einfach und schnell folgende Nachrichten-Informationen:

' Absender der Nachricht
strAbsender = DecEnc_HdrInfo(sInFile, DECENC_MSG_FROM)
 
' Empfänger der Nachricht
strEmpfaenger = DecEnc_HdrInfo(sInFile, DECENC_MSG_TO)
 
' Nachrichten-Betreff
strBetreff = DecEnc_HdrInfo(sInFile, DECENC_MSG_SUBJECT)
 
' Datum
strDatum = DecEnc_HdrInfo(sInFile, DECENC_MSG_DATE_TIME_SENT)
' ----------------------------------------------
' Hilfsfunktion
Public Function DecEnc_HdrInfo(ByVal sInFile As String, _
  ByVal DEC_MSG As Integer) As String
 
  Dim sFieldBuffer As String * 255  
  If GetMessageHeaderField(sInFile, sFieldBuffer, 255, _
    DEC_MSG) = 1 Then
    DecEnc_HdrInfo = left(sFieldBuffer, InStr(1, sFieldBuffer, Chr$(0), 0) - 1)
  End If
End Function

Den Nachrichtentext bekommen Sie über den Aufruf der Funktion GetMessageText. Der Text wird hierbei in der im 2. Parameter angegebenen Datei gespeichert.

Dim nRtn As Long
nRtn = GetMessageText(sInFile, Pfad & "Message.txt")

Die Anzahl der einer Nachricht angehängten Anlagen erhalten Sie über die Funktion GetNumFilesToDecode. Mit der Funktion DecodeFile werden die einzelnen Dateianlagen extrahiert und auf die Festplatte abgespeichert.

Gesamteindruck

Decode/Encode-DLL hat mich von der ersten Minute an überzeugt. Die wirklich einfache Handhabung beim "Zerlegen" einer "rohen" EMail-Nachricht in alle relevanten Einzelteile geht schnell und zuverlässig vonstatten.

An dieser Stelle möchte ich auch den wirklich lobenswerten Support des Funduc-Software Teams loben! Meine Mail-Anfragen wurden umgehend und zur vollsten Zufriedenheit beantwortet. Kleinere Bugs, welche sich zu Beginn meiner Testphase noch in der Komponente befanden, wurden ebenfalls i.d.R. binnen 24 Stunden korrigiert und ich erhielt dann sofort die neueste Version per EMail zugestellt.

Mittlerweile setze ich die Decode/Encode-DLL in mehreren meiner Anwendungen ein und bin wirklich zufrieden.

Bewertung

DECODE/ENCODE-DLLS v2.4
GESAMTWERTUNG
PREIS / LEISTUNGgut
Preis:58 US$
Weitere Infos unter:http://www.funduc.com/decenc.htm
  nur 100 KB groß
  leichte Handhabung
  sehr schnell
  hevorragender Support

Fazit
Decode/Encode-DLL sollte für all diejenigen zur ersten Wahl gehören, die in Ihren eigenen Anwendungen eine EMail-Empfangsfunktion integrieren müssen/möchten. Ein weiterer Pluspunkt ist, dass die Komponente keine weiteren abhängigen Komponenten benötigt!

Support
Wie bereits schon erwähnt leistet das Funduc-Software Team einen hervorragenden und schnellen Support - jedoch nur per EMail. Vorhandene Bugs werden sehr schnell behoben. Man sollte allerdings der englischen Sprache einigermaßen mächtig sein, da das in Kanada ansässige Unternehmen - wie die meisten amerikanischen und englischen Firmen auch - kein deutsch beherrschen.

Unterschiede Shareware- und Vollversion
Die Shareware-Version ist voll funktionsfähig, alle Funktionen können getestet werden - jedoch wird bei jedem Funktionsaufruf ein Hinweis eingeblendet. Registrierte Anwender der Vollversion erhalten ein Jahr lang alle Updates kostenlos und natürlich kostenlosen Support per EMail.

Kontakt
 Funduc Software

 Download (450 KB)   |   weiter Homepage Bestellen

Diese Seite wurde bereits 14.967 mal aufgerufen.

nach obenzurück
 
   

Druckansicht Druckansicht Copyright ©2000-2017 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel