Я пишу программу, которая создает PDF в различные промежутки времени. Я пытаюсь запустить команду PHP для генерации PDF с помощью службы Windows (C #).
Мой код прекрасно работает в приложении C # для рабочего стола Windows, но когда я пытаюсь использовать его в службе Windows, ничего не происходит, и выход строка выводится без вывода файла PDF.
Вот мой код:
ProcessStartInfo cmdStartInfo = new ProcessStartInfo();
cmdStartInfo.FileName = @"cmd.exe";
cmdStartInfo.RedirectStandardOutput = true;
cmdStartInfo.RedirectStandardError = true;
cmdStartInfo.RedirectStandardInput = true;
cmdStartInfo.UseShellExecute = false;
cmdStartInfo.CreateNoWindow = true;
cmdStartInfo.ErrorDialog = false;
cmdStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
cmdStartInfo.WorkingDirectory = WorkingDirectory; //refers to directory where php file exist.
Process cmdProcess = new Process();
cmdProcess.StartInfo = cmdStartInfo;
cmdProcess.ErrorDataReceived += cmdProcess_ErrorDataReceived;
cmdProcess.OutputDataReceived += cmdProcess_OutputDataReceived;
cmdProcess.EnableRaisingEvents = true;
cmdProcess.Start();
cmdProcess.BeginOutputReadLine();
cmdProcess.BeginErrorReadLine();
cmdProcess.StandardInput.WriteLine(@"php.exe -c GeneratePDF.php ");
cmdProcess.StandardInput.WriteLine("Exit");
Задача ещё не решена.
Других решений пока нет …