Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Sync Framework offre diversi modi per stabilire quali file e sottocartelle includere nell'ambito della sincronizzazione. I filtri statici escludono o includono i file e le sottocartelle in base alle impostazioni specificate dall'applicazione al momento dell'inizializzazione del provider. Per applicare i filtri dinamici utilizzare una notifica degli eventi per la cui ricezione è possibile registrare l'applicazione.
Tipi di cartelle e file non supportati ed esclusi
I file seguenti vengono sempre esclusi dall'ambito della sincronizzazione e vengono ignorati completamente:
Thumbs.db quando vengono impostati gli attributi hidden e system.
Desktop.ini quando vengono impostati gli attributi hidden e system.
File di metadati specificato all'inizializzazione del provider.
File con l'attributo offline o device impostato.
Cartella con l'attributo reparse point impostato.
Le cartelle che contengono cartelle Sincronia file non sono supportate e non devono essere incluse negli ambiti di sincronizzazione.
Filtri statici
I filtri statici possono essere impostati per escludere i file in base al nome (inclusi i nomi contenenti caratteri jolly) e all'attributo. È inoltre possibile impostare i filtri statici per escludere il contenuto di intere sottocartelle, ma i caratteri jolly non sono supportati per le sottocartelle. È anche possibile specificare un elenco esplicito di nomi di file da includere (inclusi i nomi contenenti caratteri jolly). Per essere incluso nell'ambito, un file o una cartella deve soddisfare i requisiti di tutti i filtri. Ad esempio, se si escludono dall'ambito tutti i file con estensione txt e si specifica MyFile.txt nell'elenco di file da includere in modo esplicito nell'ambito, tale file verrà escluso dall'ambito a causa dell'estensione txt.
Per specificare un filtro statico tramite codice gestito
Creare un oggetto FileSyncScopeFilter. Le proprietà di esclusione o inclusione vengono impostate nel costruttore FileSyncScopeFilter, specificando ad esempio
"*.txt"per il parametro fileNameExcludes per escludere tutti i file con estensione txt dall'ambito della sincronizzazione.Passare il filtro al costruttore FileSyncProvider. Quando questo provider viene utilizzato come provider di origine in una sessione di sincronizzazione, solo i file che soddisfano i requisiti dei filtri specificati vengono inclusi nell'ambito della sincronizzazione.
Per specificare un filtro statico tramite codice non gestito
Creare un oggetto IFileSyncScopeFilter mediante IFileSyncProvider::CreateNewScopeFilter.
Impostare le proprietà di esclusione o inclusione nell'oggetto filtro, ad esempio specificando
"*.txt"nel metodo IFileSyncScopeFilter::SetFilenameExcludes per escludere tutti i file con estensione txt dall'ambito della sincronizzazione.Passare il filtro a IFileSyncProvider::Initialize. Quando questo provider viene utilizzato come provider di origine in una sessione di sincronizzazione, solo i file che soddisfano i requisiti dei filtri specificati vengono inclusi nell'ambito della sincronizzazione.
Esclusione di file
I file possono essere ignorati in modo dinamico durante la sincronizzazione tramite la gestione di un evento generato dal provider. Questo evento si verifica durante l'applicazione di modifiche. Viene generato dal provider di destinazione una volta per ogni modifica, prima dell'applicazione della modifica alla replica di destinazione. Quando il gestore eventi riceve l'evento, può specificare che la modifica non venga applicata alla replica di destinazione.
Codice gestito Registrare un gestore per l'evento ApplyingChange. Per ignorare una modifica, impostare il valore della proprietà SkipChange su true nel gestore eventi.
Codice non gestito Passare un oggetto IFileSyncProviderCallback a IFileSyncProvider::Initialize per effettuare la registrazione per ricevere le notifiche degli eventi. Per ignorare una modifica, impostare il valore del parametro pfSkipChange su TRUE in IFileSyncProviderCallback::OnApplyingChange.
Vedere anche
Riferimento
Interfaccia IFileSyncScopeFilter
Interfaccia IFileSyncProviderCallback
FileSyncScopeFilter