2009-05-28 8 views
0

나는 믿을 수없는 두 가지 방법을 알고 :디렉토리가 win32 C/winapi에서 쓰기 가능한지 확인하는 방법은 무엇입니까?

  • _ACCESS은() - (만 존재 확인) 디렉토리에
  • 를 CreateFile()를 작동하지 않습니다 - 가상 상점의 존재 오탐 (false positive)을 (제공 AFAIK)

win32 ACL 액세스 기능이 매우 복잡하기 때문에 가장 유용한 코드 샘플이됩니다. MSDN에 대한 링크를 게시하지 마십시오. 저는 거기에 있었으므로 모든 DACL, SACL 및 보안 설명자로 수행해야 할 작업을 파악할 수 없습니다. 크로스 플랫폼 응용 프로그램에서 작업합니다. 이 기능은 특정 기능을 필요로하지만 플랫폼에 독립적입니다. Windows ACL에 액세스하는 것보다 솔루션이 더 간단합니다.

편집 : 앱이 실행되는 동안 디렉토리 권한이 변경되지 않는다고 안전하게 생각할 수 있습니다.

답변

1

운영 체제에서 신뢰할 수있는 방법이 없습니다. 테스트를 수행하고 실제로 파일을 쓰는 동안 사용 권한이 변경 될 수 있기 때문입니다.

+2

예, 중요하지 않습니다. 앱에 대한 _ 작업 환경을 가정 할 수 있습니다. – Baczek

+0

중요합니다. 파일을 성공적으로 작성할 수 있는지 확인하는 유일한 방법은 파일을 쓰는 것입니다. –

+1

그리고 그것은 MS에서 누군가가 이미 가지고있는 바보 같은 생각으로 인해 가상 저장소에서 끝납니다. – Baczek

관련 문제