是否可以从另一个控制/写入控制台。我已经测试了Console.WriteLine,但没有发生任何事情。我感谢任何帮助。
我的意思是从另一个类写入控制台。对不起误导。 我有一个服务器类(Server.cs)和主类(Program.cs)。服务器类将向控制台写一些关于连接和类似内容的信息。
答案 0 :(得分:1)
要写入调用控制台,您的应用程序需要在项目设置中标记为Console
应用程序。如果您在UI应用程序中写入控制台,您的进程将创建一个新进程,然后在其中写入。
如果你想写入另一个现有的控制台,我想可以在Win32Api函数上使用P-Invoke,例如AttachConsole
,WriteConsole
和FreeConsole
。
答案 1 :(得分:0)
如果我没有错,你想要这样的东西
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "ModelExporter.exe";
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.CreateNoWindow = true;
p.Start();
StreamReader myStreamReader = p.StandardOutput;
// Reads a single line of the programs output.
string myString = myStreamReader.ReadLine();
// This would print the string to the DOS Console for the sake of an example.
// You could easily set a textbox control to this string instead...
Console.WriteLine(myString);
p.Close();