Web sunucularında MSG ve EML dosyalarını dönüştürün
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total Mail Converter Pro X, MSG ve EML e-postalarını PDF, PDF/A, DOC, RTF, TXT, HTML, TIFF ve JPEG formatlarına dönüştüren sunucu tarafı bir SDK'dır — ekler aynı hedef formata dönüştürülerek tek bir çıktı dosyasında birleştirilmiş şekilde, sunucuda Microsoft Outlook olmadan. Headless çalışır: GUI yok, diyalog yok, açılır pencere yok. Total Mail Converter Pro X hem bir komut satırı ikilisi hem de bir ActiveX/COM arayüzü ile birlikte gelir, böylece ASP, PHP, .NET, Python, Ruby, Java ve diğer COM uyumlu arka uçlara sorunsuzca entegre olur.
Pro varyantını standart X sürümünden ayıran şey -docs anahtarıdır. -docs etkinken, desteklenen her ek — Word belgeleri, hesap tabloları, görseller, PDF'ler — aynı hedef formata (örneğin PDF) dönüştürülür ve mesaj PDF'ine birleştirilir veya yanına ayrı belgeler olarak kaydedilir. Alıcı tek bir dosya açar ve e-posta gövdesini ile her eki okuma sırasına göre görür. Desteklenen ek girdi türleri:
-uattach ile açılır
Ek dönüşümünün ötesinde Total Mail Converter Pro X, e-keşif ve kayıt saklama senaryolarının tamamını kapsar: PDF/A çıktısı (-pdfa), X.509 sertifikalarıyla dijital imzalama (-PFXFile/-PFXPass), RFC-822 taşıma başlıklarının dahil edilmesi (-rfcheaders), ek meta veri indeksleme (-iattach), birleştirilmiş belge boyunca Bates tarzı üst bilgi/alt bilgi damgalama, izin bayraklarına göre parola korumalı PDF'ler ve orijinal posta kutusu yapısını yansıtan klasör başına özyineleme (-Recurse -kfs).
Yüksek dönüşüm hızı ve toplu dönüşümler basit ve sıkıcı olmayan bir süreç sağlar — bir gece çalışmasında eklerle birlikte on binlerce mesaj normaldir. Ücretsiz deneyin (30 gün deneme süresi, sınırlama yok) ve gerçekten parasının karşılığını verdiğini görün.
Şu anda desteklenen bazı dosya formatı dönüşümleri:
|
|
|
(30 günlük ÜCRETSİZ deneme sürümü içerir)
(sadece $1900.00)
string src = @"C:\test\Source.eml";
string dest = @"C:\test\Dest.pdf";
var cnv = new MailConverterX();
cnv.Convert(src, dest, "-cPDF -attach -docs -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 -attach -docs";
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("MailConverterPro.MailConverterX")
C.Convert "c:\test\source.eml", "c:\test\dest.pdf", "-cPDF -attach -docs -log c:\Mail.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("MailConverterPro.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 -attach -docs -log c:\html.log")
set C = nothing
$src="C:\\test\\test.msg";
$dest="C:\\test\\test.pdf";
if (file_exists($dest)) unlink($dest);
$c= new COM("MailConverterPro.MailConverterX");
$c->convert($src,$dest, "-cPDF -attach -docs -log c:\\Mail.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('MailConverterPro.MailConverterX')
src = "C:\\test\\test.eml"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -attach -docs -log c:\\test\\Mail.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("MailConverterPro.MailConverterX")
src = "C:\\test\\test.eml"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -attach -docs -log c:\\test\\Mail.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('MailConverterPro.MailConverterX');
c.Convert('c:\test\source.eml', 'c:\test\dest.pdf', '-cPDF -attach -docs -log c:\test\Mail.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("MailConverterPro.MailConverterX");
c.Convert("C:\\test\\source.msg", "C:\\test\\dest.pdf", "-cPDF -attach -docs");
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 'MailConverterPro.MailConverterX'; $c->convert($src, $dest, "-cPDF -attach -docs -log c:\\test\\Mail.log"); print $c->ErrorMessage if -e $dest;
"Total Mail Converter Pro'dan çok memnunuz. Yaklaşık 20 bin e-postayı PDF'e dönüştürmek için kullandık; bizim için önemli olan e-posta eklerini hedef PDF'e dönüştürebilmesiydi. 20 bin mesajın dönüştürülmesinde yalnızca yaklaşık bir düzineği okunamayan ekler nedeniyle başarısız oldu. İyileştirme önerimiz: bir ek başarısız olduğunda, tüm posta dosyasını atlamak yerine diğer ekleri dönüştürün ve PDF'i tek hatalı ek olmadan tamamlayın. İyi çalışmaya devam edin."
Manuel Schlief
www.darag.de
"Dış avukatlar için e-keşif yapıyoruz. Müşteriler PST dışa aktarımları gönderiyor; iş akışımız her PST'yi dava başına bir PDF'e dönüştürüyor, her e-posta artı dönüştürülmüş her ek RFC başlıkları korunarak okuma sırasına göre. Motor, -docs -iattach -rfcheaders ile Total Mail Converter Pro X. DOCX/XLSX ek görüntüleme dahil olmak üzere donanımımızda saatte yaklaşık 8.000 mesaj. Beş yıldır üretimde, dönüştürücüye yükleyebileceğimiz hiçbir başarısızlık yok."
Henrik J.
Senior Backend Developer at a legal-tech vendor
"Hasta iletişim arşivlerinin belge yönetim sistemimize PDF/A olarak X.509 dijital imzalarıyla inmesi gerekiyor — HIPAA gözetim zinciri gereksinimi. -pdfa artı -PFXFile/-PFXPass artı -SignLoc/-SignCon/-SignRes tek bir ikili çağrıda tüm imzalama senaryosunu kapsıyor. Aynı çıktıyı üretmek için üç ayrı kütüphaneye ihtiyaç duyan bir Java/iText iş akışını değiştirdik. Windows Server Core üzerinde headless, Outlook yok, sürpriz yok."
Renata B.
DevOps Engineer at a healthcare records platform
"Total Mail Converter Pro X'i Royalty-Free Lisansı altında uyumluluk arşivleme ürünümüze paketledik. Proje başına tek seferlik ücret, Aspose.Email artı Aspose.Words artı Aspose.PDF'in bir yığın olarak maliyetinin küçük bir kısmıydı. Yükleyicimiz ActiveX'i gönderir ve kaydeder, uygulamamız onu doğrudan çağırır, son kullanıcılar yalnızca arayüzümüzü görür. 32 bit ActiveX kısıtlaması bize birkaç gün iş akışı yeniden yapılandırmasına mal oldu, ancak geçici çözümler hakkında sorduğumuzda destek hızlı yanıt verdi."
Daichi M.
Independent Software Vendor
"Müşteriler bize kurumsal Exchange kiracılarından gece yarısı EML dışa aktarımları gönderiyor. Çalışan iş akışımız her dizini dava klasörü başına Bates damgalı bir PDF'e birleştiriyor. -Recurse -kfs çıktı tarafında posta kutusu klasör hiyerarşisini korur, -HeadText/-FootText hem mesaj hem de ek sayfaları boyunca dava etiketini ve sayfalandırmayı uygular. Çalıştırmalar arasında deterministik, bu hukuki inceleme için önemli. CLI kararlı ve iyi belgelenmiş."
Aleksandra W.
Lead .NET Developer at a corporate-archive provider
Total Mail Converter Pro X, betiklerden, zamanlanmış görevlerden, posta arşivi işçilerinden veya herhangi bir arka uç hizmetinden çalıştırabileceğiniz bir konsol ikili dosyası olan MailConverterX.exe ile birlikte gelir. Pro varyantını farklı kılan -docs anahtarıdır: ekleri yalnızca e-postanın yanına kaydetmek yerine, Pro, Word belgelerini, elektronik tabloları, görüntüleri ve diğer ekleri hedef formata dönüştürür ve bunları mesaj gövdesiyle aynı çıktı dosyasında birleştirir. Bayrak kümesi GUI MailConverter.exe ile eşleşir; tam referans için komut satırı belgelerine bakın. Aşağıdaki tarifler, yalnızca Pro sürümünün desteklediği ek işleme senaryolarına odaklanır.
İmza Pro iş akışı. -docs, dönüştürücüye desteklenen her eki PDF'ye işlemesini söyler; -sdocs:off ima edildiğinde (varsayılan), tüm işlenen sayfalar mesaj PDF'sine eklenir. Alıcı tek bir dosya açar ve okuma sırasıyla e-postayı artı her Word, Excel, görüntü ve PDF ekini görür.
MailConverterX.exe "C:\mail\incoming\*.msg" "C:\out\" -cPDF -attach -docs
Aynı dönüştürme, ancak -sdocs, dönüştürülen her eki birleştirmek yerine mesaj PDF'sinin yanında kendi PDF'si olarak yazar. Aşağı akış sistemleri ekleri ayrı ayrı indekslediğinde yararlıdır.
MailConverterX.exe "C:\mail\export\*.eml" "C:\out\" -cPDF -attach -docs -sdocs
Bir Outlook PST'sini MSG dosyalarına dışa aktardıktan sonra, sonuç orijinal posta kutusunu yansıtan derin bir klasör ağacıdır. -Recurse, her alt klasörü dolaşır; -kfs, çıktı tarafında aynı yapıyı korur, böylece Gelen Kutusu, Gönderilmiş Öğeler ve özel klasörler ayrı kalır.
MailConverterX.exe "C:\pst-export\Mailbox\*.msg" "C:\out\Mailbox\" -cPDF -Recurse -kfs -attach -docs
Hukuki inceleme için her başlığa, her alıcı alanına ve neyin eklendiğine dair bir kayda ihtiyacınız vardır — bir ek dönüştürülemediğinde bile. -iattach, ek meta verilerini (dosya adı, boyut, MIME türü) belgeye yazar; -rfcheaders, ham RFC-822 taşıma başlıklarını içerir; -uattach, içerikleri de dönüştürülecek şekilde ZIP'lenmiş ekleri açar.
MailConverterX.exe "C:\case-2026-117\*.msg" "C:\review\case-2026-117\" -cPDF -Recurse -kfs -sender -rcpt -cc -bcc -date -subject -attach -iattach -uattach -docs -rfcheaders
Tek teslimatlı transferler için kullanışlı: kronolojik sırada her mesajı ve dönüştürülen her eki içeren tek bir PDF. -combine, tüm kaynak dosyaları tek bir belgede birleştirir; -sort date, bunları mesaj tarihine göre sıralar.
MailConverterX.exe "C:\mail\ProjectAcme\*.eml" "C:\out\ProjectAcme-archive.pdf" -cPDF -combine -sort date -attach -docs
E-postalar artı ekler şirketten ayrıldığında, çıktıyı kilitleyin. -mp, sahip parolasını ayarlar (izinleri kontrol eder), -up, kullanıcı parolasını ayarlar (açmak için gerekli) ve -perm, alıcının yapmasına izin verilen tam işlemleri verir.
MailConverterX.exe "C:\mail\confidential\*.msg" "C:\out\" -cPDF -attach -docs -mp "owner-secret" -up "client-pwd" -perm Copy -pc Maximum
Birleştirilmiş PDF e-posta gövdesini ve dönüştürülen ekleri taşıdığında, dönüştürme sırasında uygulanan bir başlık/altbilgi her sayfayı tutarlı bir şekilde etiketler — tüm pakette Bates tarzı bir damgaya eşdeğerdir. PDF meta veri alanları, dosyayı belge yönetim sistemlerinde kendini tanımlayan hale getirir.
MailConverterX.exe "C:\mail\matter-4471\*.msg" "C:\out\matter-4471\" -cPDF -attach -docs -HeadText "Matter 4471 — CONFIDENTIAL" -HeadAlign center -FootText "Page [page] of [date]" -FootAlign right -PDFAuthor "Acme Legal" -PDFTitle "Matter 4471 mail archive" -PDFSubject "Privileged review copy"
Kayıt yönetimi iş akışları için birleştirilmiş e-posta-artı-ekler PDF'si ISO 19005 (PDF/A) uyumlu ve kurumsal sertifikayla dijital olarak imzalanmış olmalıdır. -pdfa, PDF/A modunu etkinleştirir; -PFXFile + -PFXPass, dosyayı bir X.509 sertifikasıyla imzalar.
MailConverterX.exe "C:\mail\archive\2026\*.eml" "C:\archive\2026\" -cPDF -Recurse -kfs -attach -docs -pdfa -PFXFile "C:\certs\acme-archive.pfx" -PFXPass "cert-pwd" -SignLoc "Acme HQ" -SignCon "[email protected]" -SignRes "Records retention seal"
Varsayılan dosya adları kaynak dosyadan türetilir. -template, mesaj meta verilerinden — tarih, gönderen, konu — adlar oluşturmanıza olanak tanır, bu da arşivlerin ve dava yönetim araçlarının genellikle istediği şeydir. -atemplate, -sdocs açıkken ayrı kaydedilen eklerin adlarını kontrol eder.
MailConverterX.exe "C:\mail\inbox\*.msg" "C:\out\" -cPDF -attach -docs -sdocs -template "[date:yyyy-mm-dd]_[sender]_[subject]" -atemplate "[mail]_attach[attach_index]_[attach]"
MailConverterX.exe bir hizmet veya zamanlanmış iş olarak çalıştığında, sahip olduğunuz tek sinyal günlüktür. -verbosity detail, mesaj başına ve ek başına bir satır yazar; -logmode append, çalıştırmalar arasında geçmişi korur; -list, kuyruğu komut satırı yerine bir işçi tarafından üretilen metin dosyasından okur; -fo, sormadan önceki çıktının üzerine yazar.
MailConverterX.exe -list "C:\queues\mail-batch.txt" "C:\out\" -cPDF -Recurse -kfs -attach -docs -fo -log "C:\logs\mailconv.log" -verbosity detail -logmode append
Güncellendi Tue, 05 May 2026
(sadece $1900.00)
-docs ek dönüştürme motorunu ekler. -docs ile dönüştürücü, desteklenen her eki (Word, Excel, PowerPoint, görseller, PDF'ler) hedef formata dönüştürür ve onları e-posta gövdesiyle aynı çıktı belgesinde birleştirir veya yanlarına ayrı belgeler olarak kaydeder (-sdocs). Standart Mail Converter X yalnızca ekleri orijinal dosya türleri olarak e-postanın yanına kaydeder. Pro; e-keşif, kayıt saklama ve teslim edilebilirin e-posta dizisi başına tek başına yeterli bir PDF olduğu her iş akışı için doğru seçimdir.new COM("MailConverterPro.MailConverterX"), .NET'te (Pro ActiveX'i kaydettikten sonra) new MailConverterX(), Python'da win32com.client.Dispatch("MailConverterPro.MailConverterX"), Ruby'de WIN32OLE.new('MailConverterPro.MailConverterX'). Alternatif olarak, MailConverterX.exe komut satırı ikilisi herhangi bir süreç, zamanlayıcı veya kabuk komut dosyasından çağrılabilir. ASP/PHP web yanıtları için ConvertToStream aracılığıyla doğrudan PDF akışı da mevcuttur.-uattach ile açılarak içerikleri de dönüştürülür. Desteklenmeyen ek türleri günlüğe kaydedilir ve mesajı iptal etmeden atlanır.-pdfa, ardından kurumsal bir X.509 sertifikasıyla dijital imzalamak için -PFXFile "C:\certs\acme.pfx" -PFXPass "cert-pwd" kullanın. -SignLoc, -SignCon ve -SignRes imza meta verisini ekler. Taşıma başlıklarının korunması için -rfcheaders ve ek indeksleme için -iattach ile birleştirildiğinde, bu, düzenlenmiş sektörlerin ihtiyaç duyduğu tüm arşiv kayıt senaryosunu kapsar.-IgnoreInvalidSource tek bir bozuk kaynak dosyasının tüm grubu iptal etmesini engeller. -msuccess ve -merror, işlenen ve başarısız kaynak dosyaları ayrı klasörlere yönlendirir. -list kuyruk dosyası girdisi artı -log -verbosity detail, günlük toplayıcı alımı için mesaj başına ve ek başına bir yapılandırılmış satır yazar.Ücretsiz deneme sürümünü indirin ve dosyalarınızı dakikalar içinde dönüştürün.
Kredi kartı veya email gerekli değil.
Docker docker run -p 5000:5000 tdhster/mailconverter-api