속성 처리기 이해

속성은 PID(속성 식별자)라고 하는 ID로 표시됩니다. 각 속성에는 GUID(Globally Unique Identifier)가 있어야 합니다. 이 식별자는 GUID로 구성되며, 속성 집합이라는 속성 컬렉션과 집합 내의 속성을 식별하는 문자열 또는 32비트 정수 중 하나를 나타냅니다. 정수 형식의 ID를 사용하면 0x00000000, 0xFFFFFFFF 및 0xFFFFFFFE 값이 잘못된 것으로 간주됩니다. 공급업체는 해당 속성이 고유한 GUID로 정의된 속성 집합에 배치하여 고유하게 정의되도록 보장할 수 있습니다.

Important

스키마의 첫 번째 릴리스에 대해 신중하게 전략적으로 속성을 정의하는 것이 중요합니다. 스키마가 등록된 후에는 사용자 지정 속성(예: 열 너비 또는 속성 형식)에 대한 변경 내용이 데이터베이스에 반영되지 않습니다. 스키마가 시스템에 한 번 등록된 후 이러한 변경 내용을 인식하는 유일한 방법은 인덱스를 다시 빌드한 다음 새 스키마를 등록한 다음 스키마를 등록한 다음 이후 릴리스마다 정식 이름 및 PKEY로 구성된 새 속성을 만드는 것입니다. 예를 들어 PKEY_GroupName_PropertyNameV2, PKEY_GroupName_PropertyNameV3등). 여러 개의 불필요한 열이 시스템 성능에 영향을 줄 수 있으므로 이러한 방식으로 새 속성을 만들지 않는 것이 좋습니다.

 

이 항목은 다음과 같이 구성됩니다.

메타데이터

Windows Vista 이상에서는 메타데이터를 기반으로 하는 새 속성 시스템이 파일, 전자 메일 및 연락처와 같은 항목을 구성하는 데 핵심적인 역할을 합니다. 이 새 속성 시스템에서는 메타데이터에 따라 항목을 검색할 수 있으며 사용자는 해당 메타데이터를 읽거나 쓸 수 있습니다. 이 시스템의 메타데이터는 이름/값 쌍으로 구현된 확장 가능한 속성 집합으로 표시됩니다.

Windows Vista 이상에서 광범위한 속성 집합은 사진, 음악, 문서, 메시지, 연락처 및 파일과 같은 항목의 세부 사항을 다룹니다. ISV(독립 소프트웨어 공급업체)는 기존 속성이 요구 사항을 충족하지 않는 경우 플랫폼에 자체 속성을 도입할 수 있습니다.

메타데이터 열기

Windows Vista 이상에서 속성 시스템은 개방형 메타데이터 시스템입니다. 파일 형식은 할당된 모든 속성을 저장하고 관련성이나 의미에 관계없이 쿼리할 때 해당 값을 노출합니다. 이렇게 하면 타사 개발자가 연결된 속성 처리기를 변경하지 않고도 파일에 추가 속성을 연결할 수 있습니다. 오픈 메타데이터는 강력한 개념입니다. XML 기반 파일 형식에 대해 열린 메타데이터를 지원하는 방법에 대한 자세한 내용은 속성 처리기 초기화에서 "열기 메타데이터 지원"을 참조하세요.

참고 항목

속성 처리기는 항상 특정 파일 형식과 연결됩니다. 따라서 파일 형식에 사용자 지정 속성 처리기가 필요한 속성이 포함된 경우 항상 각 파일 형식에 대해 고유한 파일 이름 확장명을 등록해야 합니다.

 

속성 처리기 정보

Windows Vista 이상에서 Windows에는 액세스하는 파일 및 데이터 항목에 메타데이터를 저장하고 검색하기 위한 확장 가능한 속성 시스템이 있습니다. Windows 탐색기 및 Windows Search 시스템은 다른 애플리케이션과 함께 속성 처리기를 사용하여 이 메타데이터를 읽고 수정합니다. 특정 파일 형식을 소유한 개발자인 경우 속성 시스템에 파일의 메타데이터에 대한 액세스 권한을 부여하도록 속성 처리기를 등록해야 합니다. 경우에 따라 파일 형식 및 해당 속성을 읽고 이해할 수 있는 기존 속성 처리기를 사용할 수 있습니다. 다른 경우에는 파일 형식에 대한 새 속성 처리기를 개발해야 할 수 있습니다.

속성 처리기를 작성하는 첫 번째 단계는 파일 형식이 지원하는 속성을 고려하는 것입니다. 속성 값은 주로 전송 가능성을 사용하도록 설정하기 위해 파일 스트림에 저장됩니다. 속성 값이 이 시스템에 있는 것처럼 파일 자체에 저장되면 사용자는 파일을 다른 컴퓨터, USB 플래시 드라이브 또는 다른 파일 시스템에 복사하거나 파일을 전자 메일 첨부 파일로 보내면 속성이 파일과 함께 이동하며 동기화되지 않거나 손실되지 않습니다. 따라서 파일 형식에서 추가 정보 저장을 지원하는 경우 파일 자체에 속성을 저장하는 것이 가장 좋습니다.

다음 단계는 파일이 제공해야 하는 속성을 결정하는 것입니다. 처음에는 제한된 속성 집합이 적절하다고 생각할 수 있습니다. 오디오 파일은 오디오 관련 속성만 지원하고 종료할 수 있습니다. 그러나, 그 오디오 파일은 법률 회사에 의해 보관 된 법원의 세션의 녹음이 될 수 있습니다. 이 경우 법률 회사는 케이스 번호와 같은 다른 비 오디오 속성을 이 파일과 연결하려고 합니다. 오디오 파일 형식의 공급자는 해당 형식이 사용될 시나리오를 모두 결정할 수 없습니다. 따라서 속성 시스템에서 지원하는 임의의 속성의 블랭킷 스토리지를 사용하도록 설정하는 것이 좋습니다.

레거시 기술

Microsoft Windows NTFS(NTFS) 보조 스트림 기술은 파일 시스템 계층에서 설정된 대체 스트림을 통해 파일과 함께 추가 정보의 지속성을 지원하기 위해 개발되었습니다. 특히 열려 있는 메타데이터 지원을 통해 이러한 보조 스트림이 속성을 저장하는 기본 메서드로 사용되지 않는 이유가 궁금할 수 있습니다. 주된 이유는 이 추가 정보의 전송성 때문입니다. 아쉽게도 이러한 대체 스트림은 CSC(클라이언트 쪽 캐싱 지원), 파일을 첨부 파일로 보내고, 파일을 NTFS가 아닌 저장소에 복사하는 등의 많은 시나리오에서 제거됩니다.

보조 스트림은 속성이 파일과 함께 이동하도록 보장하는 강력한 솔루션을 제공하지 않으므로 Windows Vista 속성 시스템은 속성 스토리지에 보조 NTFS 스트림을 활용하는 기본 제공 메커니즘을 제공하지 않습니다. 또한 ISV는 속성 스토리지에 보조 스트림을 사용하는 속성 처리기를 빌드하지 않는 것이 좋습니다. 물론 NTFS 보조 스트림이 적절한 시나리오가 있습니다. 특히 애플리케이션에서 처리하는 파일이 항상 NTFS 볼륨에 저장되고 최종 사용자 상호 작용의 결과로 이동하지 않도록 보장할 수 있는 경우입니다.

종류 이름 사용

속성 목록 사용

속성 처리기 초기화

속성 처리기 등록 및 배포

속성 처리기 모범 사례 및 FAQ