IPropertyStorage-NTFS 파일 시스템 구현

NTFS 버전 5.0은 파일이 복합 파일이 아닌 경우 NTFS 볼륨의 파일에 대한 IPropertyStorage 인터페이스 구현을 제공합니다.

IPropertySetStorage의 NTFS 파일 시스템 구현에 대한 포인터를 얻으려면

  1. IPropertySetStorage의 NTFS 구현을 사용하여 IPropertySetStorage::Create를 호출합니다.
  2. IPropertySetStorage의 NTFS 구현을 사용하여 IPropertySetStorage::Open을 호출합니다.

사용 시기

IPropertyStorage를 사용하여 단일 속성 집합 내의 속성을 관리합니다. 해당 메서드는 속성 및 속성 식별자와 연결할 수 있는 선택적 문자열 이름 읽기, 쓰기 및 삭제를 지원합니다. 또 다른 메서드를 사용하면 속성 스토리지와 연결된 시간을 설정할 수 있으며, 다른 메서드는 UI(사용자 인터페이스) 코드와 같은 다른 코드를 속성 집합과 연결하는 데 사용되는 CLSID 할당을 허용합니다. Enum 메서드를 호출하면 집합의 속성을 열거할 수 있는 IEnumSTATPROPSTG의 NTFS 구현에 대한 포인터가 제공됩니다.

설명

NTFS 구현은 기본적으로 복합 파일 구현과 동일한 기능을 제공합니다. 자세한 내용은 IPropertyStorage-Compound 파일 구현을 참조하세요.

NTFS는 강력한 파일 시스템이므로 NTFS 속성 집합이 잘못된 상태로 남아 있는 것은 아닙니다. NTFS IPropertyStorage 의 내용이 기본 NTFS 파일로 플러시되면 비정상적인 프로세스 종료와 같은 작업 중에 오류가 발생하더라도 모든 상태 또는 없음 상태가 원자성 작업으로 파일에 기록됩니다. 복합 파일 구현과 유사한 동작을 수행하려면 부모 IPropertySetStorage 인터페이스를 트랜잭션 모드로 열어야 합니다.

이 수준의 견고성은 NTFS 5.0 볼륨에 설정된 NTFS 속성에 액세스할 때만 가능합니다. 이전 버전의 NTFS에서 NTFS 속성 집합(예: Windows NT 4.0에서 실행되는 파일 서버 컴퓨터의 속성 집합에 액세스하는 Windows NT 또는 Windows 2000에서 실행되는 컴퓨터)에 액세스할 수 있지만 예기치 않은 오류가 발생할 경우 올바른 상태가 되도록 보장되지는 않습니다.

IPropertySetStorage의 NTFS 구현은 트랜잭션을 지원하지 않지만 IPropertyStorage의 NTFS 구현은 이를 지원합니다. 즉, STGM_TRANSACTEDgrfMode 매개 변수에서 IPropertySetStorageCreateOpen 메서드에 지정할 수 있습니다. 복합 파일 구현에서와 같이 트랜잭션 모드는 비임플 속성 스토리지(grfFlags 매개 변수에서 PROPSETFLAG_NONSIMPLE 지정)에 대해서만 가능합니다.

IPropertyStorage

IPropertySetStorage-NTFS 파일 시스템 구현