다음을 통해 공유


요청자가 구성 요소 사용

요청자는 백업 또는 복원을 수행하고 섀도 복사본을 감독하는 것 외에도 상호 작용하는 작성기의 구성 요소에 대한 정보를 관리해야 합니다. 구성 요소 선택 가능성 및 논리 경로는 백업에서 데이터를 포함하거나 제외하고 백업 구성 요소 문서에 포함된 구성 요소 정보를 결정하는 데 사용됩니다.

백업 중 요청자 구성 요소 선택

백업 작업 중에 요청자는 IVssBackupComponents::GatherWriterMetadata 및 IVssBackupComponents::GetWriterMetadata 메서드를 사용하여 기록기 메타데이터 구성 요소 데이터를 가져옵니다(자세한 내용은 백업 초기화 개요 참조).

IVssExamineWriterMetadata 인터페이스를 사용하여 작성기 정보를 검사한 후 요청자는 백업할 작성기를 결정하고, 제한된 범위에서 백업할 지정된 작성기의 구성 요소 중 어느 것을 백업할지 결정합니다.

기록기를 백업할 때 요청자는 다음을 수행합니다.

  • 백업 구성 요소 문서에 구성 요소를 추가하려면 IVssBackupComponents::AddComponent를 사용하여 백업 상위 항목에 대해 선택할 수 없는 백업 구성 요소에 대해 모든 기록기의 선택 불가능 항목을 명시적으로 포함해야 합니다.
  • IVssBackupComponents::AddComponent를 사용하여 백업 구성 요소 문서에 구성 요소를 추가하는 데 사용할 수 있는 백업 구성 요소에 대한 작성기 선택 가능 항목을 명시적으로 포함할 수 있습니다.
  • 백업 구성 요소에 대해 선택할 수 있는 구성 요소 집합이 구성 요소 집합을 정의하는 경우 명시적 포함에는 백업에 대해 선택할 수 있는지 여부에 관계없이 모든 구성 요소 집합의 멤버가 암시적으로 포함 됩니다. 이러한 구성 요소는 백업 구성 요소 문서에 추가되지 않습니다.

백업 구성 요소에 대해 선택 가능 항목 또는 백업 상위 항목에 대해 선택할 수 없는 백업 구성 요소에 대해 선택할 수 없는 를 백업 구성 요소 문서에 추가할 때 요청자는 다음을 지정합니다.

  • 구성 요소를 관리하는 작성기의 instance
  • 작성자의 클래스 식별자
  • 구성 요소의 논리적 경로 ( NULL일 수 있음)
  • 구성 요소의 이름

구성 요소가 사양과 일치하지 않으면 오류가 반환됩니다.

이러한 구성 요소가 있는 경우 VSS는 백업 구성 요소 문서에서 구성 요소에 대한 IVssComponent 인터페이스를 만듭니다. 이 정보는 기록기 및 요청자가 액세스할 수 있고 수정할 수 있습니다. 구성 요소 집합을 정의하는 선택 가능한 구성 요소의 경우 구성 요소의 속성뿐만 아니라 포함된 모든 하위 구성 요소도 설명합니다.

암시적으로 추가된 구성 요소에 대한 정보는 백업 구성 요소 문서에서 사용할 수 없습니다. 또한 백업 구성 요소 문서에서는 파일 정보를 사용할 수 없습니다. 해당 정보를 얻으려면 요청자는 백업 구성 요소 문서에서 선택한 저장된 구성 요소의 컨텍스트에서 기록기 메타데이터 문서(이미 읽은 문서)를 검사해야 합니다.

복원 중 요청자 구성 요소 선택

복원 작업 중에 요청자는 IVssBackupComponents::GatherWriterMetadata를 통해 현재 시스템에서 활성 상태인 기록기에서 구성 요소 정보를 가져오지 않아야 합니다. 현재 실행 중인 프로세스의 상태가 백업이 수행될 때 프로세스 상태를 반드시 반영하지는 않기 때문입니다.

여전히 IVssBackupComponents::GatherWriterMetadata를 통해 Identify 이벤트를 생성하여 Identify 이벤트를 만들고 현재 시스템에 있는 작성기와 해당 상태 결정해야 합니다.

요청자는 초기화 중에 저장된 백업 구성 요소 문서와 저장된 기록기 메타데이터 문서를 검색합니다(자세한 내용은 복원 초기화 개요 참조).

백업 중에 구성 요소를 포함하는 것은 백업에 대해 선택할 수 없는 논리적 경로와 함께 복원을 위해 선택할 수 있어야 한다는 점을 제외하고 복원 경우와 거의 동일합니다.

그러나 몇 가지 차이점이 있습니다.

  • 백업 중에 구성 요소가 백업 구성 요소 문서에 명시적으로 포함된 경우(명시적으로 또는 암시적으로) IVssBackupComponents::SetSelectedForRestore 를 사용하여 복원을 위해 백업 구성 요소 문서에 명시적으로 추가합니다.
  • 구성 요소가 백업에 암시적으로 포함되어 있고 복원 상위 항목에 대해 선택할 수 없는 복원을 선택할 수 없는 경우(백업의 경우 명시적 포함이 필요함을 의미함) 구성 요소가 명시적으로 포함되지 않습니다(즉, IVssBackupComponents::SetSelectedForRestore를 사용하여 백업 구성 요소 문서에 추가되지 않음). 이러한 구성 요소는 복원을 위해 암시적으로 선택된 것으로 간주되어야 합니다.
  • 백업을 위해 암시적으로 선택된 구성 요소 중(해당 구성 요소가 백업에 대해 선택 가능했는지 여부) 복원에 대해 선택할 수 있는 구성 요소만 IVssBackupComponents::AddRestoreSubcomponent를 사용하여 백업 구성 요소 문서에 추가할 수 있습니다.
  • 복원 구성 요소에 대해 선택할 수 있는 경우 백업 구성 요소 에 대해 선택할 수 있는 것처럼 복원을 위한 구성 요소 집합을 정의할 수 있습니다. 복원 구성 요소에 대해 선택할 수 있는 이 구성 요소는 복원 작업에 대해 이 구성 요소 집합을 정의합니다.

PreRestore 이벤트가 생성되기 전에 복원을 위해 명시적으로 선택된 구성 요소가 없는 작성기는 VSS 이벤트를 받지 않습니다.

요청자와 작성자는 IVssComponent 인터페이스를 사용하여 저장된 구성 요소 정보에 액세스할 수 있습니다. 작성자는 IVssComponent 인터페이스를 통해 백업 구성 요소 문서에 명시적으로 포함된 구성 요소의 일부 설정을 수정하여 복원 대상과 같은 복원을 지원할 수 있습니다. 구성 요소 집합을 정의하는 경우 명시적으로 포함된 구성 요소의 작성기 수정이 해당 하위 구성 요소로 전파됩니다. 또한 인터페이스는 기록기와 요청자 간의 복원 성공 및 실패에 대한 정보를 전달하는 메커니즘을 제공합니다.

백업하는 동안처럼 백업 구성 요소 문서 자체에 복원을 구현하기 위한 정보가 부족합니다. 다시 말하지만, 기록기 메타데이터 문서는 복원할 파일의 실제 경로에 대한 정보를 제공하고 선택 가능한 구성 요소 구성 요소 집합의 일부이므로 복원해야 하는 선택 불가능한 구성 요소를 검색해야 합니다.

선택 가능성 유형 및 사용량에 대한 자세한 내용은 선택 가능성 및 논리 경로 작업을 참조하세요.

요청자가 작성기 구성 요소 문서 정보 사용

각 구성 요소는 부모 작성기, 해당 이름 및 논리 경로기록기 클래스 ID로 고유하게 식별됩니다.

요청자는 IVssBackupComponents::GetWriterComponents 메서드에서 반환된 IVssWriterComponentsExt 인터페이스를 사용하여 저장된 각 구성 요소에 대한 정보를 가져올 수 있습니다.

구성 요소의 이름 및 논리 경로(다른 항목 중)는 IVssWriterComponentsExt::GetComponent에서 반환하는 IVssComponent 인터페이스를 통해 찾을 수 있습니다.

참고

복원 단계에서 요청자는 IVssBackupComponents::P reRestore를 호출한 후에만 IVssWriterComponentsExt::GetComponentsExt::GetComponentCount를 호출하여 작성자가 백업 구성 요소 문서를 업데이트할 시간을 허용해야 합니다. 이러한 업데이트의 한 가지 예는 복원 대상을 변경하는 것입니다.

 

저장된 각 선택 가능한 구성 요소의 부모 작성기에 대한 정보는 IVssWriterComponentsExt::GetWriterInfo를 사용하여 찾을 수 있습니다.

이 정보를 사용하면 기록기 메타데이터 문서를 쿼리하고 일치하는 문서를 식별할 수 있습니다. 그런 다음 논리 경로를 사용하여 요청자는 선택 가능한 각 구성 요소에 대해 선택 불가능한 종속 구성 요소를 식별할 수 있습니다. 즉, 선택 가능한 구성 요소 집합의 모든 멤버를 식별합니다.

이제 요청자는 IVssExamineWriterMetadata 인터페이스를 사용하여 백업 또는 복원해야 하는 선택 가능한 구성 요소와 선택 불가능한 구성 요소 모두에 대한 경로 사양( IVssWMComponent 인터페이스)을 비롯한 전체 구성 요소 정보를 제공합니다.

이는 요청자가 자체 백업 구성 요소 문서의 상태와 백업 중인 기록기의 기록기 메타데이터 문서를 모두 저장하는 것이 중요한 이유 중 하나입니다.

자세한 내용은 선택 가능성 및 논리 경로 작업을 참조하세요.