Мне нужно запустить стороннее приложение java из приложения C# .net. Первоначально я хотел сделать это с сайта asp.net, но после того, как я столкнулся с проблемами с разрешениями/привилегиями, я перешел на попытку сделать это из службы Windows, поскольку он работает как пользователь системы, который, как я надеялся, устранит мои проблемы. О да, и мои проблемы возникают при попытке запустить это на сервере Windows 2008. Все хорошо в моей среде разработки Windows 7.Проблемы с System.Diagnostics.Process.Start() в Windows Server 2008
Естественно, я просмотрел эти форумы и другие ответы и ничего не нашел, помог мне, пожалуйста, развлечь меня.
У меня есть команда, которую я хочу запустить в пакетном файле, и я использую следующий код, чтобы запустить его.
ProcessStartInfo psi = new ProcessStartInfo(filePathToBatchFile);
psi.Arguments = "arguments for batch file..."
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.RedirectStandardError = true;
psi.RedirectStandardInput = true;
Process p = Process.Start(psi);
Я запускаю пакетный файл по существу, потому что я хотел убедиться, что что-то происходит. Я убедился, что все переменные и пути к файлам верны и что пакетный файл действительно запущен. Я могу заставить его делать другие вещи, такие как файлы xcopy, и я могу запустить команду из командной строки, и она отлично работает. Никаких исключений не выбрасывают и не выводят из процесса. Если я изменил пути (к двоичным файлам java, файлам, которые я перехожу к нему и т. Д.) К сознательно неправильным, то он жалуется.
Я попытался запустить этот процесс как разные пользователи, а именно тот, который я могу использовать для входа в сервер и запуска команды вручную. Я предоставил сервисный доступ к рабочему столу из меню свойств служб.
Если у кого-то есть идеи о том, что здесь происходит, или даже некоторые советы о том, как я могу это сделать, это было бы очень оценено.
Не могли бы вы предоставить выходные данные RedirectStandardOutput и RedirectStandardError, пожалуйста? Мы могли бы «развлекать» вас без ведома без каких-либо фактов о том, что произошло. Потому что это ненормально и все, что было предложено http://stackoverflow.com/questions/361097/c-service-cannot-execute-batch-file, должно привести к нормальному выполнению. – apros
Нет данных из RedirectStandardOutput или RedirectStandardError. – rmsylvester