На сервере я пытаюсь открыть командную строку и вызвать исполняемый файл, который преобразует файл в PDF. Для этого я использую программу с открытым исходным кодом PDFCreator.
В C # я звоню с этим кодом:
ProcessStartInfo processStartInfo = new ProcessStartInfo("cmd.exe");
processStartInfo.RedirectStandardInput = true;
processStartInfo.RedirectStandardOutput = true;
processStartInfo.UseShellExecute = false;
Process process = Process.Start(processStartInfo);
process.StandardInput.WriteLine(@"cd c:\program files (x86)\pdfcreator");
process.StandardInput.WriteLine(@"PDFCreator.exe /PF""c:\dwf\dwf.dwf""");
Работает без ошибок, но безрезультатно. Этот PDFCreator.exe выполняет вызов другой программы - Autodesk Design Review, которая использует драйвер PDF для печати в PDF и сохраняет файл. Команда, которую вы видите, прекрасно работает, если я запускаю ее самостоятельно.
Из-за того, что я обыскиваю другие темы, похоже, проблема в безопасности Поэтому я перешел к папкам / исполняемым файлам PDFCreator и Design Review и получил полный доступ к учетной записи NETWORK, NETWORK SERVICE, IIS_WPG, IIS_IUSRS и ASP.NET Machine (понимаю, что это, вероятно, поток безопасности, но отключится, как только я выясню источник проблема). Это не помогло.
Следует отметить, что я могу изменить каталог с помощью первой команды, приведенной выше, а затем создать папку «test123» в папках PDFCreator и Design Review. Кажется, я здесь подхожу, есть идеи?