我使用DotNetZip庫壓縮文件夾中的文件。要識別其他進程當前打開的文件,我使用SysInternals.com中的'handle.exe'。我通過調用參數並根據這些行解析輸出來做到這一點。識別進程句柄並鎖定託管代碼中的文件
using (Process handleProcess = new Process())
{
// -- Set up the parameters and call the process.
handleProcess.StartInfo.FileName = "handle.exe";
handleProcess.StartInfo.UseShellExecute = false;
handleProcess.StartInfo.RedirectStandardOutput = true;
handleProcess.StartInfo.Arguments = "-u " + fileName;
handleProcess.Start();
...
哪個工作,但有一個kludge關於它的空氣。任何人都可以在託管代碼中提出更好的方法?