我的 C# 应用程序要求是从命令行发出 dir 命令(以 J:\MyFolder> 作为当前目录)并在我的 C# 应用程序中接收该命令的输出。
我尝试了 MSDN,其中发出命令行示例,例如“/c dir”,但我也想检索结果。
有人可以帮我吗?提前致谢。
我的 C# 应用程序要求是从命令行发出 dir 命令(以 J:\MyFolder> 作为当前目录)并在我的 C# 应用程序中接收该命令的输出。
我尝试了 MSDN,其中发出命令行示例,例如“/c dir”,但我也想检索结果。
有人可以帮我吗?提前致谢。
不要那样做。
http://www.dotnetperls.com/process-start 和http://www.dotnetperls.com/redirectstandardoutput
您可以使用 ProcessStartInfo 类来调用其他 exes 和 .bats 等,并将输出和错误重定向回您的 c# 程序。但是,这很讨厌,并且可以在直接代码中更好地实现,这可能取决于除了 yoir 示例之外您正在调用的逻辑。诸如powershell和wmi之类的Thinhs以及基本的文件和目录处理
基本思想是使用“command.com”作为可执行文件启动一个进程,并将命令行作为参数传递,并将其重定向stdout
回您的程序。
我刚刚查看了这两个链接: http: //www.dotnetperls.com/process-start和 http://www.dotnetperls.com/redirectstandardoutput这些是对您需要做的事情的合理描述。
这真的没那么难,主要是让所有细节都正确无误!
要在编程调用之前对此进行测试,command.com
并确保您可以使用它来发出命令。我找到了command.com
at的副本C:\WINDOWS\system32
。
希望这会有所帮助,如果有更多问题,请询问。