Partager via


Méthode IOpenSearchSource::GetResults (shobjidl_core.h)

Renvoie les résultats de la recherche, à partir d’une source de données OpenSearch, mise en forme au format RSS ou Atom.

Syntaxe

HRESULT GetResults(
  [in]  HWND    hwnd,
  [in]  LPCWSTR pszQuery,
  [in]  DWORD   dwStartIndex,
  [in]  DWORD   dwCount,
  [in]  REFIID  riid,
  [out] void    **ppv
);

Paramètres

[in] hwnd

Type : HWND

Handle de fenêtre de l’appelant.

[in] pszQuery

Type : LPCWSTR

Requête entrée par l’utilisateur. Ce paramètre est équivalent au paramètre OpenSearch {searchTerms} et peut être vide.

[in] dwStartIndex

Type : DWORD

Index du premier résultat demandé. Équivalent au paramètre OpenSearch {startIndex}. Voir les remarques ci-dessous.

[in] dwCount

Type : DWORD

Nombre de résultats demandés. Équivalent au paramètre OpenSearch {count}.

[in] riid

Type : REFIID

IID de l’interface demandée. Généralement IID_IStream.

[out] ppv

Type : void**

Pointeur d’interface, de type spécifié par RIID, vers l’objet contenant les résultats au format Atom ou RSS.

Valeur retournée

Type : HRESULT

Retourne S_OK en cas de réussite, ou une valeur d’erreur dans le cas contraire. B_S_ENDOFROWSET indique éventuellement la fin des résultats. Les erreurs suivantes affichent les messages d’erreur appropriés dans la barre d’informations :

  • INET_E_AUTHENTICATION_REQUIRED (l’utilisateur n’est pas autorisé à accéder à cette ressource)
  • INET_E_RESOURCE_NOT_FOUND (l’emplacement n’était pas disponible)
  • INET_E_DOWNLOAD_FAILURE (erreur du serveur)

Remarques

Windows Explorer appelle cette méthode avec les paramètres de requête de recherche. L’implémentation IOpenSearchSource retourne tout ou partie des résultats après avoir effectué les actions requises, telles que la fourniture d’une interface utilisateur d’authentification personnalisée ou la connexion à la source de données à l’aide d’une API propriétaire.

Résultats paginés

Si vous ne souhaitez pas que le service web retourne plus d’un nombre limité de résultats par demande, cette méthode peut retourner une « page » de résultats à la fois. Les Explorer Windows peuvent obtenir des pages de résultats supplémentaires en appelant cette méthode à plusieurs reprises et en spécifiant un nouveau numéro d’index. Lors du retour de résultats, le premier résultat doit être le résultat à l’index demandé par dwStartIndex.

Nombres et nombres d’index

Le numéro d’index identifie le premier résultat sur une page de résultats. Il équivaut au paramètre OpenSearch {startIndex}. Le nombre, équivalent au paramètre OpenSearch {count}, identifie le nombre attendu ou préféré d’éléments retournés par page.

Si un service web retourne 20 éléments sur la première page de résultats, la taille de page attendue est de 20. Pour obtenir les 20 éléments suivants, Windows Explorer appelle iOpenSearchSource::GetResults avec la valeur 21 pour dwStartIndex et la valeur 20 pour dwCount. Lorsqu’une page de résultats retournée par le service web contient moins d’éléments que la taille de page attendue, Windows Explorer suppose qu’elle a reçu la dernière page de résultats et cesse d’effectuer des demandes.

Configuration requise

   
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl_core.h (incluez Shobjidl.h)

Voir aussi

IOpenSearchSource