Utilisation de CSISyncClient pour contrôler le cache de documents Office (ODC)
Découvrez comment utiliser CSISyncClient pour contrôler le cache de documents Office (ODC).
CSISyncClient est un serveur COM hors processus (CsiSyncClient.exe) qui permet à Microsoft OneDrive de contrôler le comportement du cache de documents Office (ODC). Par exemple, OneDrive peut appeler l’ODC via CSISyncClient pour charger et télécharger des fichiers vers et à partir de points de terminaison compatibles MS-FSSHTTP. Cela permet des fonctionnalités avancées soutenues par le service dans Office, telles que la co-création et les transitions transparentes du mode hors connexion à la connexion en ligne.
CsiSyncClient est disponible dans Office Desktop (x86 et x64). Remarque : Bien que les versions plus récentes d’Office puissent être fournies avec CsiSyncClient, le processus sera utilisé à des fins de compatibilité descendante uniquement. L’interface CsiSyncClient et la méthodologie de contrôle de l’ODC changeront dans les versions ultérieures d’Office.
L’ID de classe est actuellement défini pour répondre uniquement à OneDrive.
L’objet COM est utilisable en tant que serveur COM hors processus et s’exécute dans CsiSyncClient.exe. En raison des limitations d’Access (que l’ODC utilise), il est fourni avec le type de bits fourni par Office. Par conséquent, Office x64 signifie un objet COM x64, ou Office x86 signifie un objet COM x86. Pour contourner cette limitation, en spécifiant CLSCTX_LOCAL_SERVER dans le cadre de CoCreateInstance, l’objet COM sera hébergé en tant que serveur COM hors processus, ce qui permet une compatibilité entre bits.
Interfaces
CSISyncClient utilise les interfaces suivantes.
Interface ILSCLocalSyncClient
Il s’agit de l’interface principale utilisée pour synchroniser les fichiers dans Office.
- ProgID : Office.LocalSyncClient
- CLSID : {14286318-B6CF-49a1-81FC-D74AD94902F9}
- TypeLib : {66CDD37F-D313-4e81-8C31-4198F3E42C3C}
L’objet COM exposé est utilisé comme serveur hors processus. La spécification de CLSCTX_LOCAL_SERVER dans le cadre de CoCreateInstance permet la compatibilité entre les processus 64 bits et 32 bits.
Une fois que vous avez co-créé l’objet COM, vous DEVEZ d’abord appeler ILSCLocalSyncClient ::Initialize . Une fois qu’ILSCLocalSyncClient ::Initialize a réussi, vous pouvez appeler n’importe quelle API aussi souvent que vous le souhaitez et dans n’importe quel ordre. Vous pouvez également appeler ILSCLocalSyncClient ::Initialize sur un objet déjà initialisé, mais cela ne fait rien.
Les exceptions au paragraphe précédent sont ILSCLocalSyncClient ::ResetCache et ILSCLocalSyncClient ::Uninitialize. Après avoir appelé ILSCLocalSyncClient ::Uninitialize sur l’objet COM, vous DEVEZ détruire cet objet et en créer un nouveau. ILSCLocalSyncClient ::ResetCache supprime votre sous-cache, supprime toutes les informations de fichier associées dans le cache, mais laisse les documents sur le disque. Il laisse également l’état intact pour la communication avec le cache. Cela vous permet d’appeler à nouveau ILSCLocalSyncClient ::Initialize pour créer un nouveau cache sans avoir à détruire et recréer l’objet COM.
Fonctions membres publiques
ILSCLocalSyncClient ::D eleteFile
DeleteFile est utilisé pour supprimer les informations de fichier du cache. Toutefois, cette méthode laisse le fichier associé sur le disque et sur le serveur.
HRESULT ILSCLocalSyncClient::DeleteFile ([in] BSTR bstrResourceID)
Paramètres
bstrResourceID
Chaîne qui identifie le ResourceID du fichier. Cette valeur doit être non vide avec un maximum de 128 caractères.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_FAIL |
L’appel n’a pas réussi. |
E_LSC_FILENOTFOUND |
Le ResourceID donné n’est pas dans le cache. |
E_LSC_NOTINITIALIZED |
Initialize n’a pas été appelé avec succès dans le passé. |
E_LSC_PENDINGCHANGESINCACHE |
Le fichier est en cours de synchronisation ou ouvert et ne peut pas être supprimé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::GetChanges
GetChanges retourne un énumérateur d’objets ILSCEvent et retourne également un jeton qui est donné à l’appel suivant à GetChanges, en supposant que le consommateur a traité l’ensemble d’événements précédent. Les événements avant le nPreviousChangesToken spécifié sont supprimés et indisponibles. Si aucun événement n’est à traiter, pnCurrentChangesToken doit avoir la même valeur que nPreviousChangesToken, mais ppiEvents est toujours défini.
HRESULT ILSCLocalSyncClient::GetChanges ([in] LONG nPreviousChangesToken, [out] LONG * pnCurrentChangesToken, [out] IEnumLSCEvent ** ppiEvents)
Paramètres
nPreviousChangesToken
Identifie l’événement qui a été traité pour la dernière fois par le consommateur.
pnCurrentChangesToken
Identifie l’événement le plus récent remis au consommateur. Ne doit pas être null.
ppiEvents
Énumérateur pour les événements remis au consommateur. Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::GetClientNetworkSyncPermission
GetClientNetworkSyncPermission permet de déterminer si l’heuristique de synchronisation d’Office pour le coût réseau et l’utilisation de l’alimentation est remplacée. Sur un réseau 3G ou un autre réseau à coût élevé, ou en cas d’exécution sur batterie plutôt que d’être branché, Office peut choisir de bloquer le trafic réseau jusqu’à un moment plus opportun.
HRESULT ILSCLocalSyncClient::GetClientNetworkSyncPermission ([in] LSCNetworkSyncPermissionType nspType, [out] VARIANT_BOOL * pfSyncEnabled)
Paramètres
nspType
Indicateur qui définit l’heuristique de coût à interroger. Consultez Enum LSCNetworkSyncPermissionType.
pfSyncEnabled
Spécifie si l’heuristique de coût demandée est actuellement remplacée ou non. Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::GetFileStatus
GetFileStatus est utilisé pour collecter des informations pour un fichier spécifique : s’il existe dans le cache, s’il a une communication en attente avec la copie du serveur et si Office 2013 a les données les plus à jour de la copie locale. Il nécessite un indicateur de bits de valeurs Enum LSCStatusFlag pour déterminer les informations que l’objet COM CsiSyncClient doit interroger.
HRESULT ILSCLocalSyncClient::GetFileStatus ([in] BSTR bstrResourceID, [in] LSCStatusFlag sfRequestedStatus, [out] BSTR * pbstrFileSystemPath, [out] BSTR * pbstrETag, [out] LSCStatusFlag * psfFileStatus)
Paramètres
bstrResourceID
Chaîne qui identifie le fichier sur le client. Cette valeur doit être non vide, avec un maximum de 128 caractères.
sfRequestedStatus
Indicateur qui définit les informations à retourner. Consultez Enum LSCStatusFlag.
pbstrFileSystemPath
Chaîne qui identifie l’emplacement du fichier identifié par bstrResourceID sur le client. Ne doit pas être null.
pbstrETag
Chaîne qui contient l’eTag du fichier identifié par bstrResourceID. Ne doit pas être null.
psfFileStatus
Indicateur qui contiendra le status demandé via sfRequestedStatus pour le fichier identifié par bstrResourceID. Ne doit pas être null. Consultez Enum LSCStatusFlag.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_FILENOTFOUND |
Les informations de fichier spécifiées par bstrResourceID n’existent pas dans le cache. |
E_LSC_LOCALFILEUNAVAILABLE |
LSCStatusFlag_LocalFileUnchanged a été demandé ou le fichier spécifié par bstrResourceID est verrouillé ou manquant. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::GetSupportedFileExtensions
GetSupportedFileExtensions retourne une liste d’extensions de fichier délimitées par des canaux qui sont actuellement prises en charge par l’objet COM CsiSyncClient. Notez que cette liste peut changer et que le consommateur sera informé d’une modification via l’objet IPartnerActivityCallback fourni sur ILSCLocalSyncClient ::Initialize (voir EventOccured).
Voici un exemple de chaîne retournée : « |docx|docm|pptx| »
HRESULT ILSCLocalSyncClient::GetSupportedFileExtensions ([out] BSTR * pbstrSupportedFileExtensions)
Paramètres
pbstrSupportedFileExtensions
Chaîne à définir avec un jeu d’extensions de fichier délimité par des canaux pris en charge par l’objet COM CsiSyncClient. Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::Initialize
Initialize doit être la première méthode appelée. Sinon, toutes les autres API retournent E_LSC_NOTINITIALIZED. L’appel d’Initialize sur un objet déjà initialisé retourne S_OK et ne fait rien. Si E_LSC_CACHEMISMATCH est retourné, l’appelant peut appeler ILSCLocalSyncClient ::ResetCache pour supprimer le cache associé au SuppliedID donné. Toutefois, dans ce cas, d’autres API retournent toujours E_LSC_NOTINITIALIZED.
HRESULT ILSCLocalSyncClient::Initialize ([in] BSTR bstrSuppliedID, [in] BSTR bstrProgID, [in] BSTR bstrFileSystemDirectoryHint, [in] IPartnerActivityCallback * pEventCallback, [out] VARIANT_BOOL * pfCreatedNewCache)
Paramètres
bstrSuppliedID
Identifie le consommateur et le cache à utiliser. Doit être non vide avec un maximum de 32 caractères.
bstrProgID
Identifie l’objet COM du consommateur pour la communication bidirectionnelle. Doit être non vide avec un maximum de 39 caractères. Pour plus d’informations sur les ProgIDD, consultez <Clé ProgID>.
bstrFileSystemDirectoryHint
Identifie la racine du répertoire dans lequel les fichiers locaux seront stockés. Doit être non vide avec un maximum de 256 caractères. Le répertoire doit déjà exister.
pEventCallback
Interface de rappel que CsiSyncClient notifiera en cas de modifications. Consultez IPartnerActivityCallback ::EventOccurred. Cette valeur ne doit pas être null.
pfCreatedNewCache
Retourne si un nouveau cache a été créé. Si aucun cache n’est associé au SuppliedID, un cache est créé. Cette valeur ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_CACHEMISMATCH |
Un ProvideID a déjà un cache associé, mais a un ProgId ou FileSystemDirectoryHint différent de ceux fournis. |
E_LSC_DIRECTORYHINTCONFLICT |
Le FileSystemDirectoryHint (ou un sous-dossier) existe déjà sur un autre cache. |
E_LAC_PROGIDCONFLICT |
Le ProgID existe déjà sur un autre cache. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::LocalFileChange
LocalFileChange est utilisé pour indiquer à l’objet COM CsiSyncClient de tenter de charger le fichier spécifié. La méthode prépare le fichier pour le chargement, y compris la lecture du contenu actuel du fichier. Si un chargement est déjà en attente, le chargement précédent est ignoré et le nouveau contenu est préparé pour le chargement. Si le fichier est ouvert pour modification dans une application, cette méthode retourne S_OK sans préparer le fichier pour le chargement (l’application doit déjà effectuer cette étape s’il y a des modifications).
Cette méthode autorise les chargements s’il a été marqué comme des chargements bloqués précédemment (voir ILSCLocalSyncClient ::RenameFile).
HRESULT ILSCLocalSyncClient::LocalFileChange ([in] BSTR bstrFileSystemPath, [in] BSTR bstrWebPath, [in] BSTR bstrResourceID)
Paramètres
bstrFileSystemPath
Chaîne qui identifie le fichier sur le client. Cette valeur doit être un chemin d’accès local non vide avec un maximum de 256 caractères. Ce chemin doit se trouver dans l’arborescence de répertoires spécifiée par fileSystemDirectoryHint lorsque l’appel à ILSCLocalSyncClient ::Initialize a été effectué.
bstrResourceID
Chaîne qui identifie le ResourceID du fichier. Cette valeur doit être non vide avec un maximum de 128 caractères.
bstrWebPath
Chaîne qui identifie le fichier sur le serveur. Cette valeur doit être une URL valide et non vide, mais pas plus de INTERNET_MAX_URL_LENGTH, comme défini par https://support.microsoft.com/kb/208427.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_CONFLICTINGFILE |
Le fichier spécifié par bstrFileSystemPath a un ResourceID différent de celui spécifié. Un événement de type LSCEventType_OnFilePathConflict est envoyé lorsque cette erreur est retournée. Consultez ILSCLocalSyncClient ::GetChanges. |
E_LSC_FILENOTFOUND |
Le fichier a été supprimé en milieu d’opération. |
E_LSC_FILENOTSUPPORTED |
L’extension de fichier donnée n’est pas prise en charge par l’objet COM CsiSyncClient. Consultez ILSCLocalSyncClient ::GetSupportedFileExtensions. |
E_LSC_FILEUPTODATE |
L’objet COM n’a pas planifié de chargement, car le fichier dans le cache avait les modifications les plus récentes du disque. |
E_LSC_LOCALFILEUNAVAILABLE |
Le fichier spécifié par bstrFileSystemPath est manquant ou verrouillé. |
E_LSC_LOCALPATHNOTMAPPED |
Le FileSystemPath donné ne se trouve pas sous la racine du répertoire spécifiée par fileSystemDirectoryHint lorsque l’appel à Initialize a été effectué. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
E_LSC_PATHMISMATCH |
Le fichier spécifié par bstrResourceID a un FileSystemPath différent de celui spécifié. |
E_LSC_PENDINGCHANGESINCACHE |
Le fichier spécifié a déjà des modifications en attente dans un autre cache et ne peut pas encore être associé au cache du consommateur. |
E_LSC_SERVERPATHINDIFFERENTCACHE |
Le WebPath fourni se trouve sous un cache différent. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::RenameFile
RenameFile associe une nouvelle URL et un chemin d’accès local pour un ResourceID donné. Si le fichier spécifié par resourceID n’existe pas déjà dans le cache, une tentative est effectuée pour le créer et le marquer pour téléchargement.
HRESULT ILSCLocalSyncClient::RenameFile ([in] BSTR bstrResourceID, [in] BSTR bstrNewFileSystemPath, [in] BSTR bstrNewWebPath, [in] VARIANT_BOOL fBlockUploads)
Paramètres
bstrResourceID
Chaîne qui identifie le ResourceID du fichier. Cette valeur doit être non vide avec un maximum de 128 caractères.
bstrNewFileSystemPath
Chaîne qui spécifie le nouveau chemin d’accès local pour le fichier. Cette valeur doit être un chemin d’accès local non vide avec un maximum de 256 caractères. Ce chemin doit se trouver dans l’arborescence de répertoires spécifiée par FileSystemDirectoryHint lors de l’appel à Initialize.
bstrNewWebPath
Chaîne qui spécifie la nouvelle URL du fichier. Cette valeur doit être une URL valide non vide, mais pas plus de INTERNET_MAX_URL_LENGTH, comme défini par https://support.microsoft.com/kb/208427.
fBlockUploads
Spécifie si les chargements vers le nouvel emplacement sont actuellement autorisés.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_CONFLICTINGFILE |
Le bstrNewFileSystemPath ou bstrNewWebPath existe déjà sur un autre fichier dans n’importe quel cache. Un événement de type LSCEventType_OnFilePathConflict est envoyé lorsque cette erreur est retournée. Consultez ILSCLocalSyncClient ::GetChanges. |
E_LSC_FILENOTFOUND |
Les informations de fichier ont été supprimées du cache pendant l’exécution de cette méthode. |
E_LSC_LOCALPATHNOTMAPPED |
Le FileSystemPath donné ne se trouve pas sous la racine du répertoire spécifiée par fileSystemDirectoryHint lorsque l’appel à Initialize a été effectué. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
E_LSC_PENDINGCHANGESINCACHE |
Le fichier spécifié est en cours de synchronisation dans une application Office. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::ResetCache
ResetCache supprime le cache associé au ProvidedID fourni sur Initialize. Cela inclut toutes les informations de fichier, mais laisse les fichiers sur le client et le serveur. Cette méthode laisse également l’objet dans un état partiellement non initialisé. Les seuls appels valides après cela sont ILSCLocalSyncClient ::Initialize ou ILSCLocalSyncClient ::Uninitialize. Cette méthode PEUT être appelée si Initialize échoue et retourne E_LSC_CACHEMISMATCH, et supprime le cache associé à l’ID fourni avec l’appel défaillant.
HRESULT ILSCLocalSyncClient::ResetCache()
Paramètres
Aucun
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
L’appel n’a pas réussi. |
E_LSC_NOTINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::ServerFileChange
ServerFileChange indique à l’objet COM CsiSyncClient de marquer le fichier spécifié pour téléchargement. Si le fichier est ouvert dans une application Office pour modification, cette méthode retourne S_OK sans marquer le fichier pour téléchargement (l’application doit déjà effectuer cette étape s’il y a des modifications).
Cette méthode autorise les téléchargements s’il a été marqué comme des téléchargements bloqués précédemment (voir RenameFile).
HRESULT ILSCLocalSyncClient::ServerFileChange ([in] BSTR bstrFileSystemPath, [in] BSTR bstrWebPath, [in] BSTR bstrResourceID)
Paramètres
Paramètre | Description |
---|---|
bstrFileSystemPath |
Chaîne qui identifie le fichier sur le client. Cette valeur doit être un chemin d’accès local non vide avec un maximum de 256 caractères. Ce chemin doit se trouver dans l’arborescence de répertoires spécifiée par FileSystemDirectoryHint lors de l’appel à Initialize. |
bstrResourceID |
Chaîne qui identifie le ResourceID du fichier. Cette valeur doit être non vide avec un maximum de 128 caractères. |
bstrWebPath |
Chaîne qui identifie le fichier sur le serveur. Cette valeur doit être une URL valide non vide, mais pas plus de INTERNET_MAX_URL_LENGTH, comme défini par https://support.microsoft.com/kb/208427. |
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
Échec de la définition de l’état de connectivité du cache. |
E_LSC_CONFLICTINGFILE |
Le fichier spécifié par bstrFileSystemPath a un ResourceID différent de celui spécifié. |
E_LSC_FILENOTSUPPORTED |
L’extension de fichier donnée n’est pas prise en charge par l’objet COM CsiSyncClient. Consultez GetSupportedFileExtensions. |
E_LSC_FILENOTFOUND |
Le fichier a été supprimé en cours d’opération. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_LOCALPATHNOTMAPPED |
Le FileSystemPath donné ne se trouve pas sous la racine du répertoire spécifiée par fileSystemDirectoryHint lorsque l’appel à Initialize a été effectué. |
E_LSC_NOINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
E_LSC_PATHMISMATCH |
Le fichier spécifié par bstrResourceID a un FileSystemPath différent de celui spécifié. |
E_LSC_PENDINGCHANGESINCACHE |
Le fichier spécifié comporte déjà des modifications en attente dans un autre cache et ne peut pas encore être associé au cache du consommateur. |
E_LSC_SERVERPATHINDIFFERENTCACHE |
Le WebPath fourni se trouve sous un cache différent. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::SetClientConnectivityState
Définit le cache dans un état en ligne ou hors connexion. S’il est hors connexion, Office ne tente pas de communiquer avec le serveur pour les fichiers de ce cache, quel que soit le paramètre fBlockUploads de chaque fichier individuel.
HRESULT ILSCLocalSyncClient::SetClientConnectivityState ([in] VARIANT_BOOL fIsOnline)
Paramètres
fIsOnline
Valeur booléenne déterminant l’état de connectivité du cache.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
Échec de la définition de l’état de connectivité du cache. |
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
E_LSC_NOINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::SetClientNetworkSyncPermission
SetClientNetworkSyncPermission est utilisé pour remplacer ou restaurer l’heuristique de synchronisation d’Office pour le coût réseau et l’utilisation de l’alimentation. Sur un réseau 3G ou un autre réseau à coût élevé, ou en cas d’exécution sur batterie plutôt que d’être branché, Office peut choisir de bloquer le trafic réseau jusqu’à un moment plus opportun. Le consommateur de cette API peut l’utiliser pour remplacer l’heuristique d’Office et forcer la synchronisation à se produire.
HRESULT ILSCLocalSyncClient::SetClientNetworkSyncPermission ([in] LSCNetworkSyncPermissionType nspType, [in] VARIANT_BOOL fEnableSync)
Paramètres
nspType
Indicateur qui définit l’heuristique de coût à remplacer. Consultez Enum LSCNetworkSyncPermissionType.
fEnableSync
Spécifie s’il faut forcer la synchronisation, ce qui remplace cette heuristique de coût, ou ne plus la remplacer.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
Échec du remplacement de l’heuristique de synchronisation. |
E_LSC_NOINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
ILSCLocalSyncClient ::Uninitialize
Décharge le cache de l’objet COM et effectue des opérations de fermeture. ILSCLocalSyncClient ::Uninitialize DOIT être appelé avant de détruire l’objet COM. Une fois appelé, aucune autre API ne peut être appelée, l’objet COM DOIT être détruit et un nouvel objet doit être créé si vous souhaitez poursuivre les opérations.
HRESULT ILSCLocalSyncClient::Uninitialize ()
Paramètres
Aucun.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
Échec de l’initialisation. |
E_LSC_NOINITIALIZED |
ILSCLocalSyncClient ::Initialize n’a pas été appelé avec succès dans le passé. |
S_OK |
L'appel a réussi. |
Interface IEnumLSCEvent
Cette interface représente une liste d’événements ILSCEvent.
Fonctions membres publiques
IEnumLSCEvent ::FNext
Récupère l’événement suivant à partir de la liste des événements.
HRESULT IEnumLSCEvent::FNext ([out] ILSCEvent ** ppiLSCEvent)
Paramètres
ppiLSCEvent
Pointeur vers une interface ILSCEvent.
Valeurs de retour
Valeur | Description |
---|---|
E_FAIL |
Il n’y a plus d’événements. |
S_OK |
L’appel a réussi. |
IEnumLSCEvent ::Reset
Réinitialise l’énumérateur au premier événement.
HRESULT IEnumLSCEvent::Reset ()
Paramètres
Aucun.
Valeurs de retour
Retourne toujours S_OK.
Interface ILSCEvent
Cette interface représente un événement de synchronisation. Toutes les informations sur l’événement peuvent être récupérées à partir de l’interface.
Fonctions membres publiques
ILSCEvent ::GetConflictStatus
Notez que cette valeur est renseignée lorsque ILSCLocalSyncClient ::GetChanges est appelé, et non lors de la création de l’événement. Vous n’aurez donc que la status actuelle du fichier, et non la status du fichier lorsque le conflit status changé.
Cette valeur n’est remplie que lorsque l’enum LSCEventType de l’événement est LSCEventType_OnLocalConflictStateChanged.
HRESULT ILSCEvent::GetConflictStatus ([out] VARIANT_BOOL * pfIsInConflict)
Paramètres
pfIsInConflict
Le conflit actuel status du fichier associé à l’événement.
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetError
Cette valeur n’est remplie que lorsque l’enum LSCEventType de l’événement est LSCEventType_OnServerChangesDownloaded ou LSCEventType_OnLocalChangesUploaded.
HRESULT ILSCEvent::GetError ([out] LONG * pnError)
Paramètres
pnError
Erreur associée à cet événement.
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetETag
Cette valeur n’est remplie que lorsque l’enum LSCEventType de l’événement est LSCEventType_OnServerChangesDownloaded ou LSCEventType_OnLocalChangesUploaded.
HRESULT ILSCEvent::GetETag ([out] BSTR * pbstrETag)
Paramètres
pbstrETag
ETag associé à cet événement
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetEventType
Obtient le type de cet événement.
HRESULT ILSCEvent::GetEventType ([out] LSCEventType * pnEventType)
Paramètres
pnEventType
Type d’événement de cet événement. Pour connaître les valeurs valides, consultez Enum LSCEventType . Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
S_OK |
L’appel a réussi. |
ILSCEvent ::GetLocalWorkingPath
Obtient le chemin de travail local pour cet événement.
HRESULT ILSCEvent::GetLocalWorkingPath ([out] BSTR * pbstrLocalWorkingPath)
Paramètres
pbstrLocalWorkingPath
Chemin d’accès local du fichier auquel cet événement se rapporte.
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetResourceID
Obtient l’ID de ressource de l’événement.
HRESULT ILSCEvent::GetResourceID ([out] BSTR * pbstrResourceID)
Paramètres
pbstrResourceID
ResourceID du fichier associé à cet événement.
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetResourceIDAttempted
Cette valeur est renseignée uniquement lorsque l’élément Enum LSCEventType de l’événement est LSCEventType_OnFilePathConflict. Lorsqu’un appel à ILSCLocalSyncClient ::LocalFileChange, ILSCLocalSyncClient ::ServerFileChange ou ILSCLocalSyncClient ::RenameFile provoque une collision de chemin d’accès web ou de chemin d’accès local avec un autre fichier dans le cache de fichiers Office, cet événement est généré.
HRESULT ILSCEvent::GetResourceIDAttempted ([out] BSTR * pbstrResourceIDAttempted)
Paramètres
pbstrResourceIDAttempted
ResourceID qui a provoqué la génération de cet événement. Ne doit pas être null.
Valeurs de retour
Retourne toujours S_OK.
ILSCEvent ::GetSyncErrorType
Cette valeur n’est remplie que lorsque l’enum LSCEventType de l’événement est LSCEventType_OnServerChangesDownloaded ou LSCEventType_OnLocalChangesUploaded.
HRESULT ILSCEvent::GetSyncErrorType ([out] LSCEventSyncErrorType * pnSyncErrorType)
Paramètres
pnSyncErrorType
Type d’erreur associé à cet événement. Consultez Enum LSCEventType pour connaître les valeurs potentielles. Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_INVALIDARG |
Un ou plusieurs paramètres ne sont pas valides. |
S_OK |
L’appel a réussi. |
ILSCEvent ::GetWebPath
Cette valeur est renseignée uniquement lorsque l’élément Enum LSCEventType de l’événement est LSCEventType_OnFilePathConflict.
HRESULT ILSCEvent::GetWebPath ([out] BSTR * pbstrWebPath)
Paramètres
pbstrWebPath
Spécifie le chemin d’accès web associé à cet événement. Ne doit pas être null.
Valeurs de retour
Retourne toujours S_OK.
Interface ILSCEvent2
Cette interface contient des informations supplémentaires sur un événement de synchronisation.
Fonctions membres publiques
ILSCEvent2 ::GetErrorChain
Obtient les informations de chaîne d’erreur sur un événement de synchronisation.
HRESULT ILSCEvent2::GetErrorChain ([out] BSTR * pbstrErrorChain)
Paramètres
pbstrErrorChain
Chaîne pour contenir les informations de chaîne d’erreur. Ne doit pas être null.
Valeurs de retour
Valeur | Description |
---|---|
E_NOTIMPL |
La version installée d’Office ne prend pas en charge cette interface |
E_INVALIDARG |
Une ou plusieurs valeurs de paramètre ne sont pas valides. |
E_FAIL |
Les informations sur la chaîne d’erreurs ne sont pas disponibles. |
S_OK |
L’appel a réussi. |
Interface IPartnerActivityCallback
Cette interface fournit une fonction de rappel à l’objet COM CSISyncClient.
Fonctions membres publiques
IPartnerActivityCallback ::EventOccurred
Il s’agit d’une fonction de rappel sur l’objet donné à l’objet COM CsiSyncClient. Lorsqu’un événement se produit (voir Enum LSCEventTypeOccurred pour les types d’événements valides), l’objet COM CsiSyncClient appelle cette méthode, signalant le consommateur.
HRESULT IPartnerActivityCallback::EventOccurred ([in] LSCEventTypeOccurred eEventTypeOccurred)
Paramètres
eEventTypeOccurred
Type d’événement de cet événement. Pour connaître les valeurs valides, consultez Enum LSCEventTypeOccurred .
Valeurs de retour
Retourne toujours S_OK.
Énumérations
CSISyncClient utilise les énumérations suivantes.
Énumération LSCEventSyncErrorType
Cette énumération spécifie les catégories d’erreurs qui peuvent se produire lors de la synchronisation d’un fichier.
Énumérateur | Description |
---|---|
LSCEventSyncErrorType_UserInterventionRequiredUnexpected |
L’erreur de synchronisation de cet événement était inattendue et peut nécessiter une attention particulière. Par défaut, l’utilisateur peut être amené à intervenir. |
LSCEventSyncErrorType_NoInterventionRequired |
L’erreur de synchronisation de cet événement ne nécessite pas de considération particulière. Office le gère automatiquement. |
LSCEventSyncErrorType_UserInterventionRequired |
L’erreur de synchronisation de cet événement nécessite qu’un utilisateur la résolve. Par exemple, conflit de fusion erreur nécessite qu’un utilisateur ouvre le document et le fusionne. |
LSCEventSyncErrorType_WaitingOnClient |
L’erreur de synchronisation de cet événement nécessite l’intervention du consommateur, mais ne doit pas nécessiter une attention particulière de la part de l’utilisateur. |
LSCEventSyncErrorType_ClientInterventionRequired |
L’erreur de synchronisation de cet événement nécessite que le consommateur intervienne dans un cas particulier. |
LSCEventSyncErrorType_Max |
Enum LSCEventType
Cette énumération spécifie le type d’événements qui peuvent se produire pour un fichier particulier.
Énumérateur | Description |
---|---|
LSCEventType_None |
|
LSCEventType_OnLocalChanges |
Des modifications ont été apportées à un fichier local. |
LSCEventType_OnOpenedByUser |
Un utilisateur a ouvert un fichier. |
LSCEventType_OnServerChangesDownloaded |
Fin du téléchargement des modifications de fichier à partir du serveur. |
LSCEventType_OnLocalChangesUploaded |
Fin du chargement des modifications de fichier sur le serveur. |
LSCEventType_OnLocalConflictStateChanged |
L’état conflit de fusion d’un fichier a changé. |
LSCEventType_OnFileAdded |
Un fichier a été ajouté. |
LSCEventType_OnFileDeleted |
Un fichier a été supprimé. |
LSCEventType_OnSyncEnabled |
La synchronisation a été activée pour les fichiers d’un utilisateur. |
LSCEventType_OnServerChangesDownloadStarted |
Démarrage du téléchargement des modifications de fichier à partir du serveur. |
LSCEventType_OnLocalChangesUploadStarted |
Début du chargement des modifications de fichier sur le serveur. |
LSCEventType_OnFilePathConflict |
Cet événement est généré lorsqu’un appel à ILSCLocalSyncClient ::LocalFileChange, ILSCLocalSyncClient ::ServerFileChange ou ILSCLocalSyncClient ::RenameFile provoque une collision de chemin d’accès web ou de chemin local avec un autre fichier dans le cache de fichiers Office. |
LSCEventType_OnFileForked |
|
LSCEventType_Max |
Enum LSCEventTypeOccurred
Cette énumération spécifie le type d’événements qui peuvent se produire. Le consommateur doit appeler des fonctions ILSCLocalSyncClient spécifiques en fonction du type d’événement.
Énumérateur | Description |
---|---|
LSCEventTypeOccurred_GetChanges |
Un événement ILSCEvent s’est produit. Le consommateur doit appeler ILSCLocalSyncClient ::GetChanges pour récupérer les données. |
LSCEventTypeOccurred_GetSupportedFileExtensions |
Les extensions de fichier prises en charge ont changé. Le consommateur doit appeler ILSCLocalSyncClient ::GetSupportedFileExtensions pour récupérer la nouvelle liste des extensions prises en charge. |
Enum LSCNetworkSyncPermissionType
Cette énumération spécifie les indicateurs utilisés pour une heuristique de coût réseau.
Énumérateur | Description |
---|---|
LSCNetworkSyncPermissionType_HighCost |
True si l’heuristique de coût pour les réseaux coûteux (tels que la 3G) est remplacée. |
LSCNetworkSyncPermissionType_HighPowerUsage |
True si l’heuristique de coût pour l’utilisation de l’alimentation (par exemple, une batterie) est remplacée. |
Enum LSCStatusFlag
Cette énumération est utilisée pour représenter la status de synchronisation d’un fichier.
Énumérateur | Description |
---|---|
LCSStatusFlag_None |
|
LSCStatusFlag_UploadPending |
True si des données sont en attente à envoyer au fichier serveur. |
LSCStatusFlag_DownloadPending |
True s’il y a des données en attente à télécharger à partir du fichier serveur. |
LSCStatusFlag_LocalFileUnchanged |
True si les données qu’Office possède sur le fichier dans son cache sont la copie la plus récente des données sur disque. |