2011-11-04 6 views
0

하위 디렉터리를 반복적으로 검사하고 X 날짜보다 오래된 파일을 삭제하는 스크립트가 있습니다. 일부 폴더에서는 사용 권한이 잘못 설정 되었기 때문에 오류가 발생한 위치의 코드에 "On Error Resume"을 삽입해야했습니다.vbscript - "권한이 거부되었습니다"오류로 다시 시작

그러나, 문제는 내가 if 문을 수행 할 때 ...

if (Err.Number > 0) 
{ 
    MsgBox("Permission denied on....") 
} 

것 같다 발생하는이 파일을 삭제하거나 폴더의 내용을 얻을 수없는 경우 스크립트에서 오류가 발생한다는 사실에도 불구하고 , Err.Number가 증가하지 않습니다. 이 작업을 수행하는 더 좋은 방법이 있습니까?

+2

확실하게'if err.Number> 0이면 : MsgBox "Permission denied on ...": end if'? 거기에있는 것은 JScript와 비슷한 모양입니다 –

답변

4

문제는이 비교로 인한 것일 수 있습니다. Err.Number > 0. 여기서 가정은 오류 번호가 포스팅 번호라는 것입니다. 그러나 이것은 사실 거의 사실이 아닙니다. Err.Number <> 0을 사용해야합니다.

+0

분명히 이것은 문제가 아니지만 도움이되었습니다. "On Error Resume Next"를 그대로 두었고 If 테스트를 코드의 다른 지점으로 옮겼습니다. 이제 제대로 작동하는 것 같습니다. 감사! – LinuxGnut