好吧,所以我希望我的C#程序执行以下两个控制台命令.
takeown /f "c:\windows\system32\Utilman.exe"
icacls "c:\windows\system32\Utilman.exe" /grant administrators:F
Run Code Online (Sandbox Code Playgroud)
我的问题是C#无法处理额外的路径.(也尝试使用转义序列没有运气)
如果您的意思是"嵌入在命令行参数中有问题,您只需要转义它们:
Process.Start("takeown", @"/f ""c:\windows\system32\Utilman.exe""");
Process.Start("icacls",
@"""c:\windows\system32\Utilman.exe"" /grant administrators:F");
Run Code Online (Sandbox Code Playgroud)
我使用了逐字字符串文字(以那些开头的文字@)来避免必须\在路径中转义,因为我需要使用其他字符串文字.