我想知道如何在Windows命令提示符(CMD)中以编程方式执行命令(如“dir C:\”或“shutdown -r”等)并检索结果输出,而不显示黑色CMD窗口课程。如何以编程方式模拟与控制台的交互?
我怀疑->this link<-包含所需的API列表,但我不确定哪些可以选择,所以需要您的帮助。我想编写一个简单的客户端 - 服务器应用程序(WinSock),用户可以坐在客户端并在服务器的命令提示符中执行命令(并从中读取答复)。是的 - 就像Telnet一样,但没有Telnet,只是Win32 API。
假设用户想要在服务器上执行“dir”命令。他在客户端应用程序上键入“dir”,该应用程序向服务器应用程序发送请求,在该应用程序中将执行该命令(就像在服务器的命令提示符中物理键入的一样),并将输出文本发送回客户端应用程序。
不,那不会帮助他。他也想要输出。 – 2012-03-27 16:21:19
@MikeKwan,就像我说的,他可以将输出重定向到一个文件然后检索它。 – Shahbaz 2012-03-27 16:32:48
@Shahbaz,自古以来我就使用'system()',但直接读取输出的能力一直让我恼火。重定向到文件并不是真正优雅的解决方案,但如果没有更好的选择,无论如何都很好。但我仍在寻找更好的解决方案。 – 2012-03-27 17:18:51