В настоящее время мое приложение принимает текстовый файл/файлы, анализирует их на другой тип файла и помещает на диск. Затем я вызываю вторичную программу (не мою) для обработки текстового файла THAT в третью.C#: Внешний входной/выходной EXE-канал из переменной строки
Внешней программа в основном делает одно:
program.exe --input: foo.txt --output: bar.txt
То, что я хотел бы знать ... я могу заменить foo.txt и bar.txt со строкой [] в моем «объекте».
Вместо того, чтобы извлекать информацию из текстового файла и выкладывать в новый текстовый файл ... Я хочу извлечь информацию из переменной, которую я имею ... в другую переменную, которую я бы сделал.
В основном я пытаюсь сохранить процесс создания двух стеков файлов через конвейер из одной переменной в другую. Я просто не знаю, как это сделать.
То, что я сейчас (по большей части, с некоторым пух удален):
public bool _Out_Schema(string output)
{
clear(output); // clear output directory
// Assign schema name to path
string path = output + '\\' + lf.filename + ".schema";
using (StreamWriter SW = new StreamWriter(path))
{
SW.Write(lf._schema);
}
return true;
}
public bool _Out_UFD(string input, string output)
{
clear(output); // clear output directory
ProcessStartInfo SI = new ProcessStartInfo();
SI.CreateNoWindow = true;
SI.WindowStyle = ProcessWindowStyle.Hidden;
SI.FileName = "ufdschema.exe"; // foreign program
SI.Arguments = String.Format("--ischema={0}\\{2}.schema --oufd={1}\\{2}.ufd", input, output, (FI.Name.Split('.'))[0]);
using (Process P = Process.Start(SI)) { P.WaitForExit(); }
return true;
}
Я хотел бы взять lf.schema (переменную строка) в качестве вклада ... и создать что-то например lf.ufd в качестве выходного
Мне нужно исследовать, может ли программа принимать такие аргументы ... Я не думаю, что это возможно. В конечном счете, мне, возможно, придется перестроить его функциональность ... Хотя я и надеялся избежать этого. – WernerCD
Глядя на Detours ... нормальный вариант 32bit. Если внешний файл 32 бит ... но я компилирую/запускаю на 64-битном ... hrm ... – WernerCD
@WernerCD - ОС не имеет значения, если приложение, которое вы хотите перехватить, 32-бит. У меня есть некоторая библиотека, отличная от MS, где-то рядом с подобным материалом, который поддерживает 64 бит, но имя ускользает от меня прямо сейчас. – snemarch