C# 代码处理文件"解除锁定"
cmd ="\"" + Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "streams64.exe") + "\"" + " /accepteula -s -d \"D:\\XXX\"" + "&exit";
using (Process p = new Process())
{
string cmdPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "cmd.exe");
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "/c " + cmdPath;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.Verb = "RunAs";
p.Start();
p.StandardInput.WriteLine(cmd);
p.StandardInput.AutoFlush = true;
output = p.StandardOutput.ReadToEnd();
p.WaitForExit();//等待程序执行完,退出进程
p.Close();
}
-d 针对文件或文件夹执行
-s -d 可以递归执行文件夹下的子文件\子文件夹
/accepteula 添加这个是接受协议,不然会弹出协议接受窗口
参考内容:
https://bbs.csdn.net/topics/392176119?list=30947593
https://docs.microsoft.com/zh-cn/sysinternals/downloads/streams

浙公网安备 33010602011771号