Any to PDF, DOC, TIFF, XPS. Server version.
Windows
2000/2003/Vista/7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Coolutils ConverterX is the server-side solution to convert any file to PDF, TIFF, DOC or XPS. Should you work with different file types, you'd love the app that can turn them all into one. Coolutils ConverterX has no GUI, no interrupting messages. It run quitely on your server and produces accurate PDF/DPC/TIFF/XPS files.
CoolUtils ConverterX is a great solution for turning any file types to one standard. Install one copy on your sever and your employees will be able to use it. Make Coolutils ConverterX a part of your app with a few lines of code.
Coolutils ConverterX saves your time. You don't have to run several apps to process different files; you can rely on one. Try the free evaluation copy today, bulk convert your files to PDF/DOC/TIFF/XPS.
(includes 30 day FREE trial)
(only $2400.00)
string src="C:\\test\\Source.p7m"; string dest="C:\\test\\Dest.PDF"; CoolConverterX Cnv = new CoolConverterX(); Cnv.Convert(src, dest, "-c PDF -log c:\\test\\Cool.log"); MessageBox.Show("Convert complete!");
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\CoolConverterX.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("CoolConverter.CoolConverterX") C.Convert "c:\test\source.eml", "c:\test\dest.pdf", "-cPDF -log c:\Cool.log" Response.Write C.ErrorMessage set C = nothing
dim C Set C=CreateObject("CoolConverter.CoolConverterX") 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("CoolConverter.CoolConverterX"); $c->convert($src,$dest, "-c pdf -log c:\\Cool.log"); if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole' c = WIN32OLE.new('CoolConverter.CoolConverterX') src="C:\\test\\test.pdf"; dest="C:\\test\\test.tiff"; c.convert(src,dest, "-c TIFF -log c:\\test\\Cool.log"); if not File.exist?(dest) puts c.ErrorMessage end
import win32com.client import os.path c = win32com.client.Dispatch("CoolConverter.CoolConverterX") src="C:\\test\\test.eml"; dest="C:\\test\\test.tiff"; c.convert(src, dest, "-c TIFF -log c:\\test\\Cool.log"); if not os.path.exists(file_path): print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto; var c: OleVariant; begin c:=CreateOleObject('CoolConverter.CoolConverterX'); C.Convert('c:\test\source.eml', 'c:\test\dest.tiff', '-c TIFF -log c:\test\Cool.log'); IF c.ErrorMessage<>'' Then ShowMessage(c.ErrorMessage); end;
var c = new ActiveXObject("CoolConverter.CoolConverterX"); 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 'CoolConverter.CoolConverterX'; $c->convert($src,$dest, "-c TIFF -log c:\\test\\Cool.log"); print $c->ErrorMessage if -e $dest;
"Thank you for Coolutils ConvetrerX. It handles karge bulk jobs on our server and we are happy with the perfirmance."
Ji Prasertcharoensuk
"I use Coolutils ConverterX to convert PDF, DOC file and JPG scans into PDF/A for our electronic document system. From the customer's standpoint it's pretty intuitive."
Tom Cioni
GammaView LLC
Updated Thu, 21 Aug 2025
(only $2400.00)