2

我的 C# 应用程序要求是从命令行发出 dir 命令(以 J:\MyFolder> 作为当前目录)并在我的 C# 应用程序中接收该命令的输出。

我尝试了 MSDN,其中发出命令行示例,例如“/c dir”,但我也想检索结果。

有人可以帮我吗?提前致谢。

4

3 回答 3

1

不要那样做。

使用DirectoryInfo

于 2013-08-13T23:07:15.313 回答
1

http://www.dotnetperls.com/process-starthttp://www.dotnetperls.com/redirectstandardoutput

您可以使用 ProcessStartInfo 类来调用其他 exes 和 .bats 等,并将输出和错误重定向回您的 c# 程序。但是,这很讨厌,并且可以在直接代码中更好地实现,这可能取决于除了 yoir 示例之外您正在调用的逻辑。诸如powershell和wmi之类的Thinhs以及基本的文件和目录处理

于 2013-08-13T21:40:14.897 回答
0

基本思想是使用“command.com”作为可执行文件启动一个进程,并将命令行作为参数传递,并将其重定向stdout回您的程序。

我刚刚查看了这两个链接: http: //www.dotnetperls.com/process-starthttp://www.dotnetperls.com/redirectstandardoutput这些是对您需要做的事情的合理描述。

这真的没那么难,主要是让所有细节都正确无误!

要在编程调用之前对此进行测试,command.com并确保您可以使用它来发出命令。我找到了command.comat的副本C:\WINDOWS\system32

希望这会有所帮助,如果有更多问题,请询问。

于 2013-08-13T22:10:19.457 回答