Konvertieren Sie E-Mails über Webserver
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total Mail Converter X ist ein serverseitiges SDK, das MSG-, EML- und MBOX-E-Mails in PDF, DOC, RTF, HTML, XHTML, TXT, TIFF, JPEG, EML, MSG und PST konvertiert — ohne Microsoft Outlook, MAPI oder Office Interop auf dem Server. Es läuft lautlos: keine GUI, keine Dialoge, keine Popups. Total Mail Converter X wird sowohl mit einer Kommandozeilen-Binärdatei als auch mit einer ActiveX/COM-Schnittstelle ausgeliefert und lässt sich so in ASP, PHP, .NET, Python, Ruby, Java und jedes andere COM-fähige Backend einbinden.
Was diese Standard-Variante leistet:
-atemplate; ZIP-Anhänge werden mit -uattach entpackt
-HeadText / -FootText) für juristische E-Discovery
-mp, -up, -perm)
-rfcheaders)
-Recurse + -kfs für die Verarbeitung ganzer Postfachbäume
Standard vs Pro X: Die Standard-Edition speichert Anhänge in ihrem ursprünglichen Dateityp neben der E-Mail-PDF. Die Pro-Version mit -docs rendert Anhänge (DOCX, XLSX, Bilder, PDFs) in das Zielformat und führt sie in derselben Ausgabedatei mit dem Nachrichtentext zusammen. Wählen Sie Standard für die einfache Postfacharchivierung; wählen Sie Pro für E-Discovery-Lieferungen, bei denen das Ergebnis ein einziges in sich geschlossenes PDF pro E-Mail-Thread ist.
Testen Sie es kostenlos (30 Tage Testzeitraum, ohne Einschränkungen) und überzeugen Sie sich selbst, dass es sein Geld wert ist.
Einige der derzeit unterstützten Dateiformat-Konvertierungen:
|
|
|
(enthält 30 Tage KOSTENLOSE Testversion)
(nur $950.00)
string src = @"C:\test\Source.eml";
string dest = @"C:\test\Dest.pdf";
var cnv = new MailConverterX();
cnv.Convert(src, dest, "-cPDF -log c:\\test\\Mail.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\MailConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.msg";
var outPath = Path.GetTempFileName() + ".pdf";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" \"{outPath}\" -cPDF";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("MailConverter.MailConverterX")
C.Convert "c:\test\source.eml", "c:\test\dest.pdf", "-cPDF -log c:\mail.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("MailConverter.MailConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.eml", "C:\www\ASP", "-cpdf -log c:\mail.log")
set C = nothing
$src="C:\\test\\test.msg";
$dest="C:\\test\\test.pdf";
if (file_exists($dest)) unlink($dest);
$c= new COM("MailConverter.MailConverterX");
$c->convert($src,$dest, "-cPDF -log c:\\Mail.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('MailConverter.MailConverterX')
src = "C:\\test\\test.eml"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\Mail.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("MailConverter.MailConverterX")
src = "C:\\test\\test.eml"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\Mail.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('MailConverter.MailConverterX');
c.Convert('c:\test\source.eml', 'c:\test\dest.pdf', '-cPDF -log c:\test\Mail.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("MailConverter.MailConverterX");
c.Convert("C:\\test\\source.msg", "C:\\test\\dest.pdf", "-cPDF");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.eml"; my $dest = "C:\\test\\test.pdf"; my $c = CreateObject Win32::OLE 'MailConverter.MailConverterX'; $c->convert($src, $dest, "-cPDF -log c:\\test\\Mail.log"); print $c->ErrorMessage if -e $dest;
"Ich arbeite für Freeland Cooper & Foreman LLP und betreue derzeit das Projekt, für das wir Total Mail Converter X gekauft haben. Wir haben das Programm angeschafft, um große Mengen von .msg-Dateien zu .pst-Dateien zusammenzuführen, und bin bisher sehr zufrieden mit den Ergebnissen; es ist zuverlässig, sehr funktional und einfach zu bedienen."
Max Canin
www.freelandlaw.com
"Wir nutzen SharePoint als Dokumentenbibliothek und greifen über UNC darauf zu. Ich verwende Total Mail Converter X, um E-Mail-Nachrichten zu archivieren. Die Betreffzeile fließt dabei in den Dateinamen ein, was aber ein Problem mit sich bringt: SharePoint erlaubt bestimmte Zeichen in Dateinamen nicht. Ich habe mich gefragt, ob eine Kommandozeilenoption hinzugefügt werden könnte, um die unsicheren Zeichen für die Verwendung in SharePoint-UNC-Pfaden zu entfernen."
Shane Adam
Systems Analyst & Developer, http://eigltd.com
"Wir archivieren Postfach-Exporte ausscheidender Mitarbeiter. Kunden liefern uns PST/MBOX-Dumps; unsere Pipeline verwandelt jeden davon in einen Ordner mit in sich geschlossenen PDFs, in denen die kompletten RFC-822-Header für die forensische Auswertung erhalten bleiben. Total Mail Converter X mit -Recurse -kfs -rfcheaders -combine ist die Engine. Sechs Jahre im produktiven Einsatz, Durchsatz von rund 5.000 Nachrichten pro Stunde auf unserer Hardware. Outlook taucht in der Pipeline nirgendwo auf."
Bartosz K.
Senior Backend Developer at a compliance-archive vendor
"Tickets enthalten EML-Anhänge; das Support-Team braucht PDF-Kopien für den Ticket-Verlauf. Total Mail Converter X plus Total Folder Monitor: Tickets legen die EMLs in einem Eingangsordner ab, der Konverter räumt sie ab, das Support-Tool greift die PDFs auf. Saubere Bates-Seitennummern dank -HeadText/-FootText, ohne manuelles Eingreifen. Headless auf Windows Server Core, kein Outlook, keine Lizenzüberraschungen."
Soledad O.
DevOps Engineer at a customer-support SaaS
"Wir haben Total Mail Converter X unter der Royalty-Free-Lizenz in unser Records-Management-Produkt integriert. Die einmalige Gebühr pro Projekt war ein Bruchteil dessen, was Aspose.Email für ein Abo pro Entwickler verlangt hat. Unser Installer liefert das ActiveX aus und registriert es, unsere Anwendung ruft es direkt auf, Endbenutzer sehen nur unsere Oberfläche. Die 32-Bit-Beschränkung des ActiveX hat uns ein paar Tage Pipeline-Umbau gekostet, aber der Support hat schnell reagiert, als wir nach Workarounds gefragt haben."
Niko T.
Independent Software Vendor
Total Mail ConverterX wird mit MailConverterX.exe ausgeliefert, einer Konsolenanwendung, die Sie aus Skripten, geplanten Aufgaben, Mail-Archiv-Workern oder jedem Backend-Dienst heraus ansteuern können. Der Flag-Satz entspricht der GUI MailConverter.exe; die vollständige Referenz finden Sie in der Befehlszeilen-Dokumentation. Die folgenden Rezepte decken die Fälle ab, nach denen SDK-Kunden, die mit MSG-, EML- und MBOX-Postfächern arbeiten, am häufigsten fragen.
Der kleinstmögliche Aufruf — eine Outlook-Nachricht rein, ein PDF raus.
MailConverterX.exe "C:\mailbox\invoice.msg" "C:\out\invoice.pdf" -cPDF
Verarbeiten Sie einen ganzen Ordner mit EML-Dateien, die aus Thunderbird, Apple Mail oder einem beliebigen IMAP-Client exportiert wurden, und legen Sie die PDFs in einem benachbarten Ausgabeverzeichnis ab.
MailConverterX.exe "C:\mailbox\*.eml" "C:\out\" -cPDF
Tauschen Sie die Maske gegen *.msg oder *.mbox für ein anderes Quellformat oder -cDOC / -cTXT / -cTIFF für ein anderes Ziel.
Ein Outlook-Export liegt selten in einem flachen Ordner — meist bekommen Sie Posteingang, Gesendet, Archiv und Dutzende Unterordner. -Recurse durchläuft Unterverzeichnisse; -kfs erzeugt denselben Baum auf der Ausgabeseite, statt alles in einen einzigen Topf zu kippen.
MailConverterX.exe "C:\export\Mailbox\*.msg" "C:\out\Mailbox\" -cPDF -Recurse -kfs
Für E-Discovery und Fallakten wollen Sie meist ein PDF pro Sache, nicht eines pro E-Mail. -combine führt die passenden Nachrichten in Quell-Datei-Reihenfolge zu einem PDF zusammen; -sort date ordnet sie chronologisch.
MailConverterX.exe "C:\cases\Acme\*.eml" "C:\out\Acme-thread.pdf" -cPDF -combine -sort date
Die Standard-Edition konvertiert den E-Mail-Body und schreibt Original-Anhänge neben dem Ausgabedokument auf die Festplatte. -attach aktiviert die Anhang-Extraktion; -atemplate steuert das Anhang-Dateiname-Muster.
MailConverterX.exe "C:\mailbox\*.msg" "C:\out\" -cPDF -attach -atemplate "[mail]_[attach_index]_[attach]"
Fügen Sie -uattach hinzu, um ZIP-Anhänge automatisch zu entpacken, oder -images, um Inline-Bilder direkt im PDF-Body einzubetten.
Standardmäßig wird jedes Header-Feld exportiert. Um ein sauberes druckfertiges PDF zu erzeugen, das nur Von, Datum und Betreff zeigt — kein CC, kein BCC, keine Transport-Header — schalten Sie die unerwünschten Felder explizit aus.
MailConverterX.exe "C:\mailbox\*.eml" "C:\out\" -cPDF -sender -date -subject -cc:off -bcc:off -rcpt:off
Fügen Sie -rfcheaders hinzu, wenn Sie stattdessen die vollständigen RFC-822-Transport-Header für die forensische Prüfung erhalten müssen.
Bates-Stempelung für Litigation-Übergaben: eine Fußzeile mit fortlaufender Seitennummer auf jeder Seite, plus eine Kopfzeile mit dem Produktionsdatum. [page] und [date] sind die eingebauten Platzhalter.
MailConverterX.exe "C:\cases\Acme\*.msg" "C:\out\Acme.pdf" -cPDF -combine -sort date -HeadText "ACME-PROD [date]" -HeadAlign right -FootText "Page [page]" -FootAlign center
Standard für den Versand vertraulicher Korrespondenz an die Gegenseite: ein Owner-Passwort sperrt Bearbeitungs-/Druckrechte, ein User-Passwort regelt das Öffnen der Datei, und -perm vergibt genau die Rechte, die Sie zulassen.
MailConverterX.exe "C:\mailbox\*.msg" "C:\out\" -cPDF -mp "owner-pwd" -up "user-pwd" -perm Copy
Sobald MailConverterX.exe als Dienst oder geplanter Job läuft, ist das Protokoll der einzige Weg zu erfahren, was geschehen ist. -verbosity detail schreibt eine Zeile pro Datei; -logmode append bewahrt die Historie über Läufe hinweg; -fo überschreibt vorhandene Ausgaben still, statt bei Konflikten anzuhalten.
MailConverterX.exe "C:\mailbox\*.eml" "C:\out\" -cPDF -log "C:\logs\mailconv.log" -verbosity detail -logmode append -fo
Wenn ein Mail-Archiv-Worker eine Queue-Datei schreibt und der Konverter sie konsumiert, wollen Sie die Dateipfade nicht selbst in die Befehlszeile codieren. -list liest Dateimasken (eine pro Zeile) aus einer Textdatei.
MailConverterX.exe -list "C:\queues\mail-batch.txt" "C:\out\" -cPDF -log "C:\logs\mailconv.log"
Aktualisiert Tue, 05 May 2026
(nur $950.00)
-docs, die jeden unterstützten Anhang (Word, Excel, PowerPoint, Bilder, PDFs) in das Zielformat rendert und mit dem E-Mail-Text in dieselbe Ausgabe-PDF zusammenführt. Wählen Sie Standard für die einfache Postfacharchivierung; wählen Sie Pro für E-Discovery-Lieferungen, bei denen das Ergebnis ein einziges in sich geschlossenes PDF pro E-Mail-Thread ist.new COM("MailConverter.MailConverterX") in PHP, new MailConverterX() in .NET, win32com.client.Dispatch("MailConverter.MailConverterX") in Python, WIN32OLE.new('MailConverter.MailConverterX') in Ruby. Alternativ kann die Kommandozeilen-Binärdatei MailConverterX.exe aus jedem Prozess, Scheduler oder Shell-Skript heraus aufgerufen werden. Direktes PDF-Streaming über ConvertToStream ist ebenfalls für ASP/PHP-Web-Antworten verfügbar.-c <FORMAT>, um das Zielformat festzulegen.-attach, um die Anhangsextraktion zu aktivieren. Anhänge landen standardmäßig im selben Ordner wie die Ausgabe-PDF. Verwenden Sie -atemplate "[mail]_[attach_index]_[attach]", um ein eigenes Benennungsmuster auf Basis der Nachrichts- und Anhangs-Metadaten festzulegen. Fügen Sie -uattach hinzu, um ZIP-Anhänge automatisch zu entpacken, sodass deren Inhalte mit abgelegt werden. Mit -images betten Sie Inline-Bilder direkt in den PDF-Inhalt ein, statt sie als Dateien zu speichern.-mp "owner-pwd" setzt das Eigentümer-Passwort (steuert die Berechtigungen); -up "user-pwd" sichert das Öffnen der Datei ab; -perm akzeptiert eine beliebige Kombination aus Print, HighResPrint, Copy, Modify, Annotation, FormFill. Für Bates-Stempel verwenden Sie -HeadText/-FootText mit den Platzhaltern [page], [date], [time] sowie -HeadAlign/-FootAlign zur Positionierung des Texts. In Kombination mit -combine -sort date entsteht eine einzige Bates-gestempelte PDF für einen ganzen E-Mail-Thread.Laden Sie die Testversion herunter und konvertieren Sie Ihre Dateien in wenigen Minuten.
Keine Kreditkarte oder Email erforderlich.
Kontaktieren Sie uns. Wir erweitern gerne unseren Mail-Converter, damit er perfekt zu Ihren Bedürfnissen passt. Anpassungen sind für unsere Kunden oft kostenlos.
Docker docker run -p 5000:5000 tdhster/mailconverter-api