Я пытаюсь вызвать PHP-очиститель php из .NET, используя этот код:
Process myProcess = new Process();
myProcess.StartInfo.FileName = "C:\Path\to\php.exe";
myProcess.StartInfo.Arguments = "C:\Path\to\purify.php";
myProcess.StartInfo.UseShellExecute = false;
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.StartInfo.RedirectStandardInput = true;
myProcess.Start();
StreamWriter myStreamWriter = myProcess.StandardInput;
String inputText;
inputText = txtCodes.Text;
if (inputText.Length > 0)
{
myStreamWriter.Write(inputText);
}
myStreamWriter.Close();
labMsg.Text = myProcess.StandardOutput.ReadToEnd();
myProcess.WaitForExit();
myProcess.Close();
.. и все работает нормально, кроме ... Я не могу вернуть символы, отличные от asci. Например, при вводе некоторых корейских символов во входных данных возвращается вопросительный знак.
Это происходит, даже если функция HTMLPurifier обойдена, и я просто пытаюсь просто обеспечить ввод .NET, сохранить его в переменной php и вернуть эту переменную обратно в выходной файл.
Есть идеи?