pdf、tiff、jpeg、doc など、さまざまな形式の複数のファイルを受信するアプリケーションを構築しました。受信後、それらは、サーバーにローカルにインストールされているサードパーティの印刷ドライバーを使用して tiff ファイルに変換され、デフォルトのプリンター。これを行うには、コマンド ラインと引数を指定して System.Diagnostics.Process を開き、適切なアプリケーションでファイルを出力します。
新しいバージョンは Windows サービスである必要があり、これまでのところ、印刷部分を除いてすべて正常に動作しています。プロセスが開始されるたびに、例外が発生することはなく、すべてが正常に機能しているように見えますが、ファイルが出力されることはありません。タスク マネージャーを開くと、MS ペイントが実行されていることがわかりますが (jpeg ファイルの場合)、出力 tiff ファイルはありません。
補足として、お客様が別のサードパーティ製ツールを使用しているため、最終的なファイルは tiff ファイルである必要があり、それがサポートされている唯一の形式です。
どんな助けでも大歓迎です。セルジオ・ロメロ
使用しているコードは次のとおりです。
private const string PROCESS_COMMAND = "mspaint.exe";
private const string PROCESS_ARGUMENTS = @"""{0}""";
Process proc = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
string error = string.Empty;
startInfo.FileName = PROCESS_COMMAND;
startInfo.Arguments = string.Format(PROCESS_ARGUMENTS, fileFullPath);
startInfo.UseShellExecute = false;
startInfo.RedirectStandardError = true;
proc.EnableRaisingEvents = false;
proc.StartInfo = startInfo;
proc.Start();
using(StreamReader errorReader = proc.StandardError)
{
string standardError = string.Empty;
while((standardError = errorReader.ReadLine()) != null)
{
error += standardError + " ";
}
}
proc.WaitForExit();