Exemple de fournisseur NTFS managé
L'exemple ManagedNTFSProvider vous explique comment utiliser C# ou Microsoft Visual Basic pour implémenter un fournisseur de synchronisation qui synchronise les fichiers dans un dossier de fichiers. À des fins de simplicité, cet exemple ne gère pas les sous-dossiers.
![]() |
---|
Cet exemple de code est fourni pour illustrer un concept. Dans la mesure où il est possible que l'exemple n'utilise pas les pratiques de codage les plus sécurisées, le code ne doit pas être utilisé dans les applications ou les sites Web. Microsoft décline toute responsabilité pour tout dommage indirect ou consécutif si l'exemple de code est utilisé à des fins autres que celles prévues. |
Emplacement des fichiers
Les fichiers de cet exemple se trouvent à l'emplacement où Sync Framework est installé. L'emplacement par défaut est C:\Program Files\Microsoft SDKs\Microsoft Sync Framework\v1.0\Samples\ManagedNTFSSample.
Contenu
Cet exemple contient une implémentation C# et une implémentation Visual Basic. Celles-ci sont assez semblables. Chacune contient les projets suivants dans une solution Microsoft Visual Studio :
ManagedNTFSProvider Associe une implémentation de fournisseur de synchronisation à une application de synchronisation simple
ManagedSampleTest Exécute ces composants pour effectuer la synchronisation.
Fichiers
Implémentation C#
Le projet ManagedNTFSProvider contient les fichiers suivants.
Fichier source | Description |
---|---|
MetadataStore.cs |
Classe d'assistance que l'exemple utilise pour stocker les métadonnées de synchronisation dans le système de fichiers. |
MyStore.cs |
Classe du fournisseur de synchronisation. Implémente KnowledgeSyncProvider, IChangeDataRetriever et INotifyingChangeApplierTarget pour participer à la synchronisation. |
MyTransferMechanism.cs |
Classe qui encapsule un flux de fichiers. Ce flux de fichiers est passé d'un fournisseur à un autre afin qu'il puisse être utilisé pour copier les données réelles du fichier pendant la synchronisation. |
MySyncController.cs |
Classe qui crée et héberge l'objet de session de synchronisation. |
Le projet ManagedSampleTest contient le fichier suivant.
Fichier source | Description |
---|---|
Program.cs |
Point d'entrée à l'application. Il analyse la ligne de commande, instancie les fournisseurs et l'objet contrôleur, les connecte tous entre eux, puis démarre la synchronisation. |
Implémentation Visual Basic
Le projet ManagedNTFSProvider contient les fichiers suivants.
Fichier source | Description |
---|---|
MetadataStore.vb |
Classe d'assistance que l'exemple utilise pour stocker les métadonnées de synchronisation dans le système de fichiers. |
MyStore.vb |
Classe du fournisseur de synchronisation. Implémente KnowledgeSyncProvider, IChangeDataRetriever et INotifyingChangeApplierTarget pour participer à la synchronisation. |
MyTransferMechanism.vb |
Classe qui encapsule un flux de fichiers. Ce flux de fichiers est passé d'un fournisseur à un autre afin qu'il puisse être utilisé pour copier les données réelles du fichier pendant la synchronisation. |
MySyncController.vb |
Classe qui crée et héberge l'objet de session de synchronisation. |
Le projet ManagedSampleTest contient le fichier suivant.
Fichier source | Description |
---|---|
Program.vb |
Point d'entrée à l'application. Il analyse la ligne de commande, instancie les fournisseurs et l'objet contrôleur, les connecte tous entre eux, puis démarre la synchronisation. |
Interfaces
Cet exemple illustre les classes et interfaces Sync Framework suivantes :
KnowledgeSyncProvider |
|
IChangeDataRetriever |
|
INotifyingChangeApplierTarget |
|
|
Spécifications
Pour générer et exécuter cet exemple, les logiciels suivants doivent être installés :
Microsoft Visual Studio 2005 ou Visual Studio 2008
Microsoft .NET Framework 2.0 ou .NET Framework 3.0
Génération de l'exemple
Pour générer l'exemple à l'aide de Visual Studio
Ouvrez le fichier ManagedNTFSProvider.sln.
Dans le menu Générer, sélectionnez BuildSolution.
Exécution de l'exemple
Pour exécuter ManagedSampleTest.exe
Dans le dossier racine, créez deux dossiers : Folder1 et Folder2.
Ajoutez du contenu, tel que des fichiers texte, aux dossiers. Assurez-vous que le contenu de Folder1 est différent du contenu de Folder2.
Pour exécuter l'exemple à une invite de commandes, ouvrez une fenêtre d'invite de commandes et localisez le dossier qui contient ManagedSampleTest.exe. À l'invite de commandes, tapez : ManagedSampleTest.exe C:\Folder1 C:\Folder2.
Pour exécuter l'exemple dans Visual Studio, ouvrez les Pages de propriétés pour le projet ManagedSampleTest. Dans le champ Débogage Arguments de la commande, tapez : C:\Folder1 C:\Folder2. Dans le menu Déboguer, cliquez sur Démarrer le débogage.
Une fois l'exemple terminé, Folder1 et Folder2 contiennent le même ensemble de fichiers. Les dossiers incluent également des fichiers qui contiennent des métadonnées de synchronisation, par exemple Knowledge.Sync, Metadata.Sync, Replica.Sync et TickCount.Sync.