C# 从unity c执行命令行提示符时,驱动器未更改#
我试图使用C#在unity中执行命令行提示符,但首先我需要将存储游戏的驱动器从C# 从unity c执行命令行提示符时,驱动器未更改#,c#,unity3d,command-line,cmd,process,C#,Unity3d,Command Line,Cmd,Process,我试图使用C#在unity中执行命令行提示符,但首先我需要将存储游戏的驱动器从G:\FileOne\Game1更改为C:\Users\HP\Documents,然后执行应该在Documents下的命令,这就是我一直在做的: ProcessStartInfo proc = new ProcessStartInfo ("cmd.exe"); proc.UseShellExecute = false; proc.RedirectStandardOutput = true;
G:\FileOne\Game1
更改为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(@"C:");
process.StandardInput.WriteLine(@"cd C:\Users\HP\Documents");
process.StandardInput.WriteLine (@"MyCommandLine");
process.StandardInput.WriteLine("exit");
string s = process.StandardOutput.ReadToEnd ();
print (s);
我将输出存储到一个字符串变量s中,得到的结果如下:
Microsoft Windows [version 10.0.16299.371]
(c) 2017 Microsoft Corporation. Tous droits r�serv�s.
G:\FileOne\Game1>C:
G:\FileOne\Game1>cd C:\Users\HP\Documents
G:\FileOne\Game1>MyCommandLine
G:\FileOne\Game1>exit
myCommand命令行应该创建一个文本文件,但是您可以看到驱动器没有改变,文本文件也没有创建
有人能帮我吗。有什么原因你不只是在ProcessStartInfo上设置工作目录吗?不能取消重新启动,你要的是什么!尝试使用
CD/D“C:\Users\HP\Documents”
同时更改设备和目录。实际上,我必须更改代码,并使用ProcessStartInfo类使其工作,谢谢