Méthode IUIAutomationElement::FindAllBuildCache (uiautomationclient.h)

Retourne tous les éléments UI Automation qui répondent à la condition spécifiée, prérécète les propriétés et les modèles de contrôle demandés, puis stocke les éléments prérécupérés dans le cache.

Syntaxe

HRESULT FindAllBuildCache(
                TreeScope                 scope,
  [in]          IUIAutomationCondition    *condition,
  [in]          IUIAutomationCacheRequest *cacheRequest,
  [out, retval] IUIAutomationElementArray **found
);

Paramètres

scope

[in] condition

Type : IUIAutomationCondition*

Pointeur vers une condition qui représente les critères à mettre en correspondance.

[in] cacheRequest

Type : IUIAutomationCacheRequest*

Pointeur vers une demande de cache qui spécifie les modèles de contrôle et les propriétés à inclure dans le cache.

[out, retval] found

Type : IUIAutomationElementArray**

Reçoit un pointeur vers un tableau d’éléments correspondants. S’il n’y a aucune correspondance, la valeur NULL est retournée.

Valeur retournée

Type : HRESULT

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

Remarques

L’étendue de la recherche est relative à l’élément sur lequel la méthode est appelée. Les éléments sont retournés dans l’ordre dans lequel ils ont été rencontrés dans l’arborescence.

Cette fonction ne peut pas rechercher d’éléments ancêtres dans l’arborescence Microsoft UI Automation ; autrement dit, TreeScope_Ancestors n’est pas une valeur valide pour le paramètre scope .

Lorsque vous recherchez des fenêtres de niveau supérieur sur le bureau, veillez à spécifier TreeScope_Children dans le paramètre d’étendue , et non TreeScope_Descendants. Une recherche dans l’ensemble de la sous-arborescence du bureau peut itérer au sein de milliers d’éléments et entraîner un dépassement de capacité de la pile.

Si votre application cliente peut essayer de trouver des éléments dans sa propre interface utilisateur, vous devez effectuer tous les appels UI Automation sur un thread distinct.

Configuration requise

   
Client minimal pris en charge Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista, Windows XP avec SP3 et Mise à jour de plateforme pour Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2, Windows Server 2008 avec SP2 et Platform Update pour Windows Server 2008, Windows Server 2003 avec SP2 et Platform Update pour Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête uiautomationclient.h (incluez UIAutomation.h)

Voir aussi

Mise en cache des propriétés ui Automation et des modèles de contrôle

Conceptuel

FindAll

FindFirst

FindFirstBuildCache

IUIAutomationElement

Obtention d'éléments UI Automation

Référence