다음을 통해 공유


동기화되는 파일 제어

Sync Services for File Systems에서는 동기화 범위에 포함되는 파일 및 하위 폴더를 여러 가지 방법으로 제어할 수 있습니다. 정적 필터는 응용 프로그램에서 공급자를 초기화할 때 지정한 설정에 따라 파일 및 하위 폴더를 제외하거나 포함합니다. 동적 필터링은 응용 프로그램에서 수신 등록할 수 있는 이벤트 알림을 통해 구현됩니다.

자동으로 제외되는 파일

다음 파일은 동기화 범위에서 항상 제외되며 완전히 무시됩니다.

  • hidden 및 system 특성이 설정된 경우 Thumbs.db

  • hidden 및 system 특성이 설정된 경우 Desktop.ini

  • 공급자가 초기화될 때 지정된 메타데이터 파일

  • offline 또는 device 특성이 설정된 파일

  • reparse point 특성이 설정된 폴더

정적 필터

정적 필터를 설정하여 이름(와일드카드 이름 포함) 및 특성에 따라 파일을 제외할 수 있습니다. 정적 필터를 설정하여 전체 하위 폴더의 내용을 제외할 수도 있습니다. 또는 포함할 명시적 파일 이름 목록(와일드카드 이름 포함)을 지정할 수 있습니다. 모든 필터를 통과한 파일 또는 폴더만 범위에 포함됩니다. 예를 들어 확장명이 .txt인 모든 파일을 범위에서 제외한 경우 범위에 명시적으로 포함할 파일 목록에 MyFile.txt를 지정해도 확장명인 .txt로 인해 MyFile.txt가 범위에서 제외됩니다.

관리 코드를 사용하여 정적 필터를 지정하려면

  1. FileSyncScopeFilter 개체를 만듭니다. 제외 또는 포함 속성을 FileSyncScopeFilter 생성자에 설정합니다. 예를 들어 fileNameExcludes 매개 변수에 "*.txt"를 지정하여 확장명이 .txt인 모든 파일을 동기화 범위에서 제외합니다.

  2. 필터를 FileSyncProvider 생성자에 전달합니다. 이 공급자를 동기화 세션에서 원본 공급자로 사용하면 지정된 필터를 통과하는 파일만 동기화 범위에 포함됩니다.

비관리 코드를 사용하여 정적 필터를 지정하려면

  1. IFileSyncProvider::CreateNewScopeFilter를 사용하여 IFileSyncScopeFilter 개체를 만듭니다.

  2. 필터 개체에 제외 또는 포함 속성을 설정합니다. 예를 들어 IFileSyncScopeFilter::SetFilenameExcludes 메서드에 "*.txt"를 지정하여 확장명이 .txt인 모든 파일을 동기화 범위에서 제외합니다.

  3. 필터를 IFileSyncProvider::Initialize에 전달합니다. 이 공급자를 동기화 세션에서 원본 공급자로 사용하면 지정된 필터를 통과하는 파일만 동기화 범위에 포함됩니다.

파일 건너뛰기

공급자에서 발생하는 이벤트를 처리하면 동기화 도중 파일을 동적으로 건너뛸 수 있습니다. 이 이벤트는 변경 내용이 적용되는 동안 발생합니다. 즉, 대상 공급자에서 변경 내용마다 한 번씩 변경 내용이 대상 복제본에 적용되기 전에 발생합니다. 이벤트를 수신한 이벤트 처리기에서는 변경 내용이 대상 복제본에 적용되지 않도록 지정할 수 있습니다.

관리 코드 ApplyingChange 이벤트에 대한 처리기를 등록합니다. 변경 내용을 건너뛰려면 이벤트 처리기에서 SkipChange 속성의 값을 true로 설정합니다.

비관리 코드 IFileSyncProviderCallback 개체를 IFileSyncProvider::Initialize에 전달하여 이벤트 알림을 수신 등록합니다. 변경 내용을 건너뛰려면 IFileSyncProviderCallback::OnApplyingChange에서 pfSkipChange 매개 변수의 값을 TRUE로 설정합니다.

참고 항목

참조

IFileSyncScopeFilter 인터페이스
IFileSyncProviderCallback 인터페이스
FileSyncScopeFilter

기타 리소스

Sync Services for File Systems