使用C#如何查看哪些文件被哪些进程占用了


string  fileName =  @"C:\Target\Plugins\print\NLog.dll" ;
//要检查被那个进程占用的文件
Process tool =  new  Process();
tool.StartInfo.FileName =  @"C:\soft\Handle\handle64.exe" ;
tool.StartInfo.Arguments = fileName +  " /accepteula" ;
tool.StartInfo.UseShellExecute =  false ;
tool.StartInfo.RedirectStandardOutput =  true ;
tool.Start();
tool.WaitForExit();
string  outputTool = tool.StandardOutput.ReadToEnd();
string  matchPattern =  @"(?<=\s+pid:\s+)\b(\d+)\b(?=\s+)" ;
foreach  (Match match  in  Regex.Matches(outputTool, matchPattern))
{
     //Process.GetProcessById(int.Parse(match.Value)).Kill();
     var pro = Process.GetProcessById( int .Parse(match.Value));
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM