Partager via


Méthode IInterval ::GetLimits (structuredquery.h)

Spécifie les limites inférieure et supérieure d’un intervalle, chacune d’elles pouvant être infinie ou une valeur spécifique.

Lorsqu’une arborescence de conditions indique que la valeur d’une propriété doit se situer dans une certaine plage, la propriété peut être exprimée sous la forme d’un nœud feuille. Le nœud doit être un PROPVARIANT contenant une balise de type valeur vt de VT_UNKNOWN et un punkVal IUnknown* qui est un pointeur vers un objet qui implémente IInterval.

Syntaxe

HRESULT GetLimits(
  [out] INTERVAL_LIMIT_KIND *pilkLower,
  [out] PROPVARIANT         *ppropvarLower,
  [out] INTERVAL_LIMIT_KIND *pilkUpper,
  [out] PROPVARIANT         *ppropvarUpper
);

Paramètres

[out] pilkLower

Type : INTERVAL_LIMIT_KIND*

Reçoit un pointeur vers une valeur de l’énumération INTERVAL_LIMIT_KIND qui indique si la limite inférieure de l’intervalle est inclusive, exclusive ou infinie.

[out] ppropvarLower

Type : PROPVARIANT*

Reçoit un pointeur vers la valeur de la limite inférieure de l’intervalle. Si le paramètre pilkLower a la valeur ILK_NEGATIVE_INFINITY ou ILK_POSITIVE_INFINITY, cette valeur est définie sur VT_EMPTY.

[out] pilkUpper

Type : INTERVAL_LIMIT_KIND*

Reçoit un pointeur vers une valeur de l’énumération INTERVAL_LIMIT_KIND qui indique si la limite supérieure de l’intervalle est inclusive, exclusive ou infinie.

[out] ppropvarUpper

Type : PROPVARIANT*

Reçoit un pointeur vers la valeur de la limite supérieure de l’intervalle. Si le paramètre pilkUpper est défini sur ILK_NEGATIVE_INFINITY ou ILK_POSITIVE_INFINITY, cette valeur est définie sur VT_EMPTY.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Cette méthode récupère les limites d’intervalle dans deux INTERVAL_LIMIT_KIND : paires PROPVARIANT . La première paire spécifie la limite inférieure de l’intervalle, et la seconde pari spécifie la limite supérieure de l’intervalle.

La limite inférieure doit être inférieure à la limite supérieure ou l’intervalle sera vide. La seule exception est lorsque les limites inférieure et supérieure sont égales et que les deux sont définies sur ILK_EXPLICIT_INCLUDED. Dans ce cas, la plage est la valeur unique à laquelle les deux limites sont définies. Le tableau suivant illustre le fonctionnement des paires pour définir des intervalles.

pilkLower ppropvarLower pilkLower ppropvarLower Description
ILK_EXPLICIT_INCLUDED 3 ILK_EXPLICIT_INCLUDED 3 La valeur la plus faible de la plage est 3, car le 3 est explicitement inclus dans la plage.

La valeur la plus élevée de la plage est également 3 (incluse explicitement), et l’intervalle se compose uniquement du nombre 3.

ILK_EXPLICIT_INCLUDED 3 ILK_EXPLICIT_EXCLUDED 3 La valeur la plus basse de la plage est 3 (incluse explicitement), mais la limite supérieure est également 3 et est explicitement exclue. Par conséquent, l’intervalle décrit est un intervalle vide.
ILK_EXPLICIT_INCLUDED 3 ILK_EXPLICIT_EXCLUDED 6 L’intervalle entier commence à et inclut 3, et se termine à mais n’inclut pas 6.
ILK_NEGATIVE_INFINITY VT_EMPTY ILK_POSITIVE_INFINITY VT_EMPTY Tous les entiers sont inclus dans l’intervalle.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP2, Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 avec SP1 [applications de bureau uniquement]
Plateforme cible Windows
En-tête structuredquery.h
Composant redistribuable Windows Desktop Search (WDS) 3.0