曾经想在您的解决方案中添加一个电子邮件转换功能吗?我们为您提供一个开箱即用的库。您所需要做的只是添加几行代码,您的用户就能通过命令行将电子邮件保存为PDF、DOC、TIFF、JPEG、EML、PST文件。
我们的客户说:
“我对该产品非常满意。到目前为止,它通过了我们所有的初步QA测试。我在一个更大的定制独立旧版内容管理系统迁移中以编程方式使用该工具。当前的旧版系统将电子邮件内容存储为MSG格式。我们建议在迁移期间以EML和PDF格式提供该内容,以便为该内容提供更标准化的访问。这就是您的工具发挥作用的地方。我们已经成功将您的工具集成到我们的迁移程序中,以便为客户完成这项任务。”
服务器许可证:
如果Total Mail ConverterX根据服务器许可证条款授权,您将获得将授权软件部署到一个服务器的不可转让、非独占和永久性的权利,该服务器可供一个公司最多100名员工使用。一个服务器许可证仅限于一台服务器。包括ActiveX。
免版税许可证:
您可以将Total Mail ConverterX实现到您的产品中,并将该程序作为此类产品的组成部分分发给第三方。RFL按项目授权。您的客户不知道CoolUtils应用在其中,他们无需额外注册。这是您将电子邮件转换功能添加到系统中的最简单方式。
我们提供非常经济实惠的解决方案。价格从每台服务器许可证$149.90起!
Total Mail ConverterX适用于任何需求:电子邮件归档、添加电子邮件到任何EDS、为了法律事务或信息自由请求检索电子邮件。
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("转换完成!");
下载 .NET 邮件转换器示例
docker run -p 5000:5000 tdhster/mailconverter-api
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("开始...");
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("文件存在...");
}
else
sbLogs.AppendLine("EXE和MSG文件不存在...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $" {msgPath} {outPath}";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"等待...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"完成...{DateTime.Now.ToString()}");
}
int sleepCounter = 10;
while(!File.Exists(outPath) && sleepCounter > 0)
{
System.Threading.Thread.Sleep(1000);
sbLogs.AppendLine("睡眠...");
sleepCounter--;
}
if (File.Exists(outPath))
sbLogs.AppendLine("转换成功完成。");
}
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:\html.log")
set C = nothing
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 "失败:" .$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;
© 2025. 版权所有. CoolUtils File Converters