콘솔 응용 프로그램의 일부가 우리가 사용하는 서버의 디렉토리에서 원하지 않는 주문 파일을 삭제하도록 구축되었습니다. 코드의이 부분은 로컬 컴퓨터에서 실행하면 잘 작동하지만 서버에서 실행하면 예약 된 작업이됩니다. 더 이상 파일을 삭제하지 않습니다.서버에서 파일을 삭제할 수 없습니다.
try
{
System.IO.File.Delete(@"\\ServerName\ProductionFileShare\Orderfiles\FileDir\" + fileName);
}
catch (System.IO.IOException e)
{
Console.WriteLine(e.Message);
return;
}
파일 이름은 storeorder.txt입니다.
내가 말했듯이 이것은 내 로컬 컴퓨터에서 정상적으로 작동하지만 서버 자체에서이 프로그램을 실행할 때 파일을 삭제하지는 않습니다. 어떤 아이디어?
업데이트 : 예외 메시지 : 프로세스가 '\ ServerName \ ProductionFileShare \ Orderfiles \ FileDir \ storeorder_07062014_16-25-0.txt'파일을 다른 프로세스에서 사용 중이므로 액세스 할 수 없습니다.
내 컴퓨터에서 작동하기 때문에 나에게 이상합니다. 일부 가비지 수집을 추가하고 어떤 일이 발생하는지 살펴 보겠습니다.
업데이트 # 2 : 분명히 고쳐졌습니다! 그것은 예상치 못한 해결책이었습니다. 코멘트 할 시간을내어 주신 모든 분들께 감사 드리며, 정말로 감사드립니다.
예외의 오류 메시지는 무엇입니까? – Steve
예외 게시. – mxmissile
로컬 시스템 계정에 파일을 삭제할 수있는 권한이 없을 수 있습니다. 예외는 당신을 그렇게 지적해야합니다. – 48klocs