Windows에서 실행중인 애플리케이션을 삭제해야합니다. 프로세스 이름으로 모든 프로세스를 종료했습니다. 즉시 삭제하는 동안 오류 메시지가 나타납니다. 하지만 3 초간 작업을 늦추면 문제없이 앱이 삭제되었습니다.
왜 이런 일이 일어나는지 설명 할 수 있습니까?
foreach (var process in Process.GetProcessesByName(appName))
{
process.Kill();
}
System.Threading.Tasks.Task.Delay(1000 * 3).Wait(); // if we try to delete directly after killing process then error occurs
System.IO.Directory.Delete(sourceFolder, true);
이것이 작동하도록 설계된 방식이기 때문에 발생합니다.
에서 Process.Kill
문서 :
노트
Kill 메서드는 비동기 적으로 실행됩니다.
Kill
메서드를 호출 한 후 메서드를 호출하여WaitForExit
프로세스가 종료 될 때까지 기다리거나HasExited
속성을 확인하여 프로세스가 종료되었는지 확인합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다