мы унаследовали некоторый код, и он отлично работает на машине с Windows Server 2003 и на моей машине с Windows 7 64bit.Когда я развертываю его на компьютере с Windows Server 2008 R2, код не запускается, и у него может быть что-то с разрешениями.
Код (в веб-службе ASP.NET):
public static void RunBatch(string file)
{
try
{
ProcessStartInfo startInfo;
Process batchExecute;
startInfo = new ProcessStartInfo(file);
startInfo.WorkingDirectory = @"C:\batch";
startInfo.CreateNoWindow = true;
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.UseShellExecute = true;
batchExecute = new Process();
batchExecute.StartInfo = startInfo;
batchExecute.Start();
batchExecute.StartInfo.CreateNoWindow = true;
batchExecute.WaitForExit();
batchExecute.Close();
}
catch (Exception ex)
{
Logger.WriteOutputLog("Exception in RunBatch: " + ex.Message.ToString());
}
}
и когда он вызывается, он просто «останавливается», ничего не происходит, но не возникает никаких исключений.
Любые предположения о том, что этот фрагмент кода может не запускать на Windows Server 2008 без некоторой конфигурации?
Заранее спасибо.
Обновление: оно останавливается на
batchExecute.WaitForExit();
Запускается процесс FTP (который, похоже, не может загружать файлы)
ftp -s:"C:\Batch\Commands.txt" ipNumber
процесс ftp пытается загрузить файл, и на моем компьютере он работает нормально, но на сервере он останавливается на 150. Открытие соединения для передачи данных в двоичном режиме для fileName fileSize
Возможно подключениеХотя FTP и я могу просматривать его через браузер на сервере без проблем.