从命令行应用程序以正确的格式重定向输出

时间:2018-11-27 21:53:15

标签: c# asp.net command-line

我正在尝试在ASP页上显示命令行输出。只需在C目录中输出文件夹列表即可正常工作:

proc.StandardInput.WriteLine(@"dir /w C:");

但不

proc.StandardInput.WriteLine(@"C:\windows\System32\query.exe user /server:IP_address");

它只是显示为:

Microsoft Windows [Version 10.0.16299.726] (c) 2017 Microsoft Corporation. All rights reserved. C:\Program Files (x86)\IIS Express>C:\windows\System32\query.exe user /server:IP_address C:\Program Files (x86)\IIS Express>exit 

这是整个代码:

protected void Cmd_Click(object sender, EventArgs e) // Button ID = Cmd_Click
    {
        ProcessStartInfo psi = new ProcessStartInfo("cmd");
        psi.UseShellExecute = false;
        psi.RedirectStandardOutput = true;
        psi.CreateNoWindow = false;
        psi.RedirectStandardInput = true;
        var proc = Process.Start(psi);

        proc.StandardInput.WriteLine(@"dir /w C:");
        proc.StandardInput.WriteLine(@"C:\windows\System32\query.exe user /server:A5684237");
        proc.StandardInput.WriteLine("exit");
        string s = proc.StandardOutput.ReadToEnd();

        cmd_output.Text = s; //Label ID = cmd_output
    }

有人可以帮助我,我在这里想念什么吗?我正在我的本地计算机上对其进行测试。

另一个问题是我总是在没有正确格式的情况下打印输出。我该如何更改它以便可读?

谢谢。

0 个答案:

没有答案