Convert Emails through web-servers
Windows
2000/2003/Vista/7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total Mail ConverterX is an easy-to-use tool to convert emails (.msg, .eml) to PDF, TXT, HTM, RTF, DOC files on Windows web-servers. This is the easiest way to archive your business emails you may need to open in future. Total Mail ConverterX supports a wide range of target formats (DOC, RTF, PDF, XPS, HTML, XHTML, TXT, TIFF, JPEG, EML, MSG, PST). Total Mail ConverterX runs silently on your server - no user interface, no additional popups, no babysitting.
Total Mail ConverterX is as powerful as the regular Total Mail Converter with GUI. You can convert as many emails as you want in one go (yes, hundreds of thousands of them) and enhance output files with new names, page counters, bates stamping, security settings, etc.
Attachments can be extracted and placed to the same or a new folder. The app can give your attached files new names so that you always know which attachment belongs to which email. The Pro version can convert attached files together with email bodies.
Total Mail ConverterX is extremely easy-to-use and doesn't require any special knowledge. You can easily implement it into your app or system using ActiveX. The price is very affordable too (one-time fee for a lifetime license, no subscriptions). Get your copy now!
Find some samples in C# specifically for ASP.net. If you need examples on other languages please contact us. We will create any example specially for you.
P.S. Take a look at Total Folder Monitor. It will watch any folder and run Total Mail Converter in case a new file arrives. Find more details here.
(includes 30 day FREE trial)
(only $950.00)
string src="C:\\test\\Source.Mail"; string dest="C:\\test\\Dest.PDF"; MailConverterX Cnv = new MailConverterX(); Cnv.Convert(src, dest, "-c PDF -log c:\\test\\Mail.log"); MessageBox.Show("Convert complete!");
Download .NET Mail Covnerter example
docker run -p 5000:5000 tdhster/mailconverter-api
public static class Function1 { [FunctionName("Function1")] public static async TaskRun( [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 msgPath = $@"{assemblyDirectoryPath}\MSG\MSG-1.msg"; var outPath = Path.GetTempFileName() + ".pdf"; startInfo.FileName = executablePath; if (File.Exists(outPath)) { File.Delete(outPath); } if (File.Exists(executablePath) && File.Exists(msgPath)) { sbLogs.AppendLine("files exists..."); } else sbLogs.AppendLine("EXE & MSG files NOT exists..."); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.Arguments = $"{msgPath} {outPath}"; using (Process exeProcess = Process.Start(startInfo)) { sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}"); exeProcess.WaitForExit(); sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}"); } int sleepCounter = 10; while(!File.Exists(outPath) && sleepCounter > 0) { System.Threading.Thread.Sleep(1000); sbLogs.AppendLine("sleep..."); sleepCounter--; } if (File.Exists(outPath)) sbLogs.AppendLine("Conversion complete successfully."); } 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" Rresponse.AddHeader "Content-Disposition", "attachment; filename=test.pdf" Response.BinaryWrite c.ConvertToStream("C:\www\ASP\Source.eml", "C:\www\ASP", "-cpdf -log c:\html.log") set C = nothing
Example PHP: $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, "-c pdf -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.pdf"; dest="C:\\test\\test.tiff"; c.convert(src,dest, "-c TIFF -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.tiff"; c.convert(src, dest, "-c TIFF -log c:\\test\\Mail.log"); if not os.path.exists(file_path): print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto; var c: OleVariant; begin c:=CreateOleObject('MailConverter.MailConverterX'); C.Convert('c:\test\source.eml', 'c:\test\dest.tiff', '-c TIFF -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", "-c PDF"); if (c.ErrorMessage!="") alert(c.ErrorMessage)
use Win32::OLE; my $src="C:\\test\\test.eml"; my $dest="C:\\test\\test.tiff"; my $c = CreateObject Win32::OLE 'MailConverter.MailConverterX'; $c->convert($src,$dest, "-c TIFF -log c:\\test\\Mail.log"); print $c->ErrorMessage if -e $dest;
"I work for Freeland Cooper & Foreman LLP and I am currently handling the project for which we purchased Total Mail Converter. We purchased the program for the purpose of merging large numbers of .msg files into .pst form, and so far I am very pleased with the results; it is reliable, highly functional, and easy to use."
Max Canin
www.freelandlaw.com
"We use SharePoint as a document library and access it through UNC. I use TotalMailConverterX to archive e-mail messages. I use the subject line as part of the resultant filename, but that presents a problem. SharePoint does not allow certain characters in filenames. I was wondering if there could be a command line option added to remove the unsafe characters for use in SharePoint UNC paths."
Shane Adam
Systems Analyst & Developer, http://eigltd.com
Update Aug 2015: Done!
Updated Tue, 29 Oct 2024
(only $950.00)
Contact us. We will gladly enhance our mail converter so that it fit your needs perfectly. Customization is often free to our customers.
Docker docker run -p 5000:5000 tdhster/mailconverter-api