Я запускаю процесс с кодом, подобным приведенному ниже:
// some of the flags are not needed
process.StartInfo.CreateNoWindow = true;
process.StartInfo.ErrorDialog = false;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.RedirectStandardOutput = true;
process.EnableRaisingEvents = true;
process.OutputDataReceived += process_OutputDataReceived;
process.ErrorDataReceived += process_OutputDataReceived;
process.Start();
process.BeginErrorReadLine();
process.BeginOutputReadLine();
void process_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
}
void process_ErrorDataReceived(object sender, DataReceivedEventArgs e)
{
}
Проблема, с которой я сталкиваюсь, состоит в том, что объект DataReceivedEventArgs
имеет свойство Data
, которое является строкой.Мне нужно прочитать стандартные выходные данные, так как это двоичные данные.Я предполагаю, что нет способа вернуть строковые данные в соответствующие двоичные данные, поэтому любые предложения по использованию другого метода для получения двоичных данных были бы хорошими.