【问题标题】:Unity blocks whenever I try to execute a command line prompt每当我尝试执行命令行提示时,Unity 都会阻塞
【发布时间】:2018-04-20 16:59:06
【问题描述】:

我正在尝试使用 C# 统一执行命令行提示符,我首先需要将目录更改为 C://Users//HP//Documents 然后执行应该在 Documents 下的命令,这就是我一直在做的事情:

ProcessStartInfo proc = new ProcessStartInfo ("cmd.exe");
proc.UseShellExecute = false;
proc.RedirectStandardOutput = true;
proc.CreateNoWindow = true;
proc.RedirectStandardInput = true;
var process = Process.Start (proc);    
process.StandardInput.WriteLine(@"cd C://Users//HP//Documents");
process.StandardInput.WriteLine ("MyCommandLine");

MyCommandLine 应该在 Documents 下创建一个文本文件,但是每次我执行该函数时 Unity 都会阻塞。 谁能帮我解决这个问题。

【问题讨论】:

    标签: c# unity3d command-line cmd process


    【解决方案1】:

    运行“MyCommandLine”后,您的 cmd.exe 进程永远不会退出。添加这样的“退出”命令

    process.StandardInput.WriteLine("exit");
    

    【讨论】:

    • 谢谢,它现在不再阻塞,但目录没有改变!
    • 您使用的是正斜杠而不是反斜杠。使用 @ 符号时也不需要双斜杠。试试@"cd C:\Users\HP\Documents"。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-07
    • 1970-01-01
    • 2021-04-07
    • 2020-04-20
    • 1970-01-01
    相关资源
    最近更新 更多