IKnowledgeBuilder2::AddRange
Ajoute une plage et son vecteur horloge associé à l'ensemble de plages utilisé pour générer la connaissance.
Syntaxe
HRESULT AddRange(
BYTE* pItemId,
BYTE* pChangeUnitId,
IClockVector* piClockVector);
Paramètres
Terme |
Définition |
pItemId |
[in] Limite inférieure fermée des ID d'élément contenus dans cette plage. |
pChangeUnitId |
[in, unique] ID de l'unité de modification à laquelle cette plage s'applique. Lorsque cette valeur est NULL, cette plage s'applique à toutes les unités de modification qui ne sont pas spécifiées dans un autre fragment de connaissance. |
piClockVector |
[in] Vecteur horloge qui définit ce qui est connu concernant les éléments contenus dans la plage. |
Valeur de retour
S_OK.
E_INVALIDARG lorsque pItemId n'est pas supérieur à toutes les autres plages définies pour pChangeUnitId. Les plages doivent être additionnées dans l'ordre par ID d'élément.
E_POINTER.
SYNC_E_ID_FORMAT_MISMATCH lorsque pItemId ou pChangeUnitId ne correspond pas au format spécifié par le schéma de format du fournisseur.
SYNC_E_INVALID_OPERATION si l'objet IKnowledgeBuilder2 est dans un état inapproprié, par exemple lorsque IKnowledgeBuilder::Initialize n'a pas été appelé.
SYNC_E_INVALID_VERSION lorsque la version de la connaissance en cours de génération n'est pas compatible avec les plages.
Notes
Les plages doivent être additionnées dans l'ordre par ID d'élément. L'ID d'élément qui définit la limite inférieure fermée d'une plage définit également la limite supérieure ouverte de la plage précédente. Si une plage inexploitable est ajoutée, E_INVALIDARG est retourné.
Un objet ISyncKnowledge dans Sync Framework 2.0 et les versions ultérieures contient un jeu d'objets ICoreFragment. Chaque objet ICoreFragment est associé à un jeu d'unités de modification et contient un jeu de plages. Chaque plage d'un objet ICoreFragment est associée à un vecteur horloge qui définit ce qui est connu concernant les éléments de la plage. En général, l'un des objets ICoreFragment ne contient pas d'ID d'unité de modification. La connaissance contenue dans l'objet ICoreFragment qui ne contient pas d'ID d'unité de modification s'applique à tous les ID d'unité de modification qui ne sont pas contenus dans un autre objet ICoreFragment. Pour ajouter une plage à ce fragment, spécifiez NULL pour pChangeUnitId.