IFileSyncScopeFilter 接口
定义可用于包括或排除静态同步作用域中的文件或文件夹的筛选器。
interface IFileSyncScopeFilter : IUnknown
成员
IFileSyncScopeFilter 方法 | 说明 |
---|---|
设置要从作用域中排除的文件名的集合。 |
|
设置要从作用域中排除的目录的相对路径集合。 |
|
设置用于从作用域中排除文件和文件夹的属性。 |
|
设置要在作用域中显式包括的文件名的集合。 |
|
获取要从作用域中排除的文件名的集合。 |
|
获取要从作用域中排除的目录的相对路径集合。 |
|
获取用于从作用域中排除文件和文件夹的属性。 |
|
获取要在作用域中显式包括的文件名的集合。 |
备注
将在变更检测期间使用静态筛选器,并且将对同步作用域中的所有项公平地应用静态筛选器。对于要包括在同步中的项,它必须传递所有静态筛选器。例如,如果某个文件同时被显式排除和显式包括,则该文件将从作用域中排除。
应该对同步社区中的所有提供程序都使用同一个作用域筛选器,否则可能会发生意外行为。
传递给 IFileSyncProvider::Initialize 的筛选器用于在传入时根据作用域筛选器初始化提供程序对象。该筛选器的后续变更将不影响提供程序实例所使用的作用域筛选器。若要变更所使用的作用域筛选器,必须创建一个新的 IFileSyncProvider 对象。
在首次同步后变更副本作用域可能会导致意外的副作用。例如,假设在首次同步后的某个时候将副本 A 的作用域变更为开始排除 *.txt。这将导致副本 A 将具有 .txt 扩展名的所有文件视为删除。实际上将不会从副本 A 中删除任何文件。但是,副本 A 中的元数据将包含 .txt 文件的逻辑删除,并且副本 A 将把删除变更发送给 .txt 文件的其他副本。如果在副本 B 中也排除 *.txt,则不起作用,因为副本 B 将从属于 .txt 文件的副本 A 中筛选变更。但是,如果副本 B 不变更其筛选器,则已删除的文件将流向它,被视为真正的变更请求,并从副本 B 中删除。
要求
**头文件:**Filesyncprovider.h