Share via


Méthode IRawElementProviderFragment::GetRuntimeId (uiautomationcore.h)

Récupère l’identificateur d’exécution d’un élément.

Syntaxe

HRESULT GetRuntimeId(
  [out, retval] SAFEARRAY **pRetVal
);

Paramètres

[out, retval] pRetVal

Type : SAFEARRAY**

Reçoit un pointeur vers l’identificateur du runtime. Ce paramètre est passé sans être initialisé.

Valeur retournée

Type : HRESULT

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

Remarques

Les implémentations doivent retourner NULL pour un élément de niveau supérieur hébergé dans une fenêtre. D’autres éléments doivent retourner un tableau qui contient UiaAppendRuntimeId (défini dans Uiautomationcoreapi.h), suivi d’une valeur unique au sein d’un instance du fragment.

Exemples

L’implémentation suivante pour un élément de liste retourne un identificateur d’exécution composé de la constante UiaAppendRuntimeId et de l’index de l’élément dans la liste.

HRESULT STDMETHODCALLTYPE ListItemProvider::GetRuntimeId(SAFEARRAY ** pRetVal)
{
    if (pRetVal == NULL) 
    {
        return E_INVALIDARG;
    }
    
    int rId[] = { UiaAppendRuntimeId, m_itemIndex };
    SAFEARRAY *psa = SafeArrayCreateVector(VT_I4, 0, 2);
    if (psa == NULL)
    {
        return E_OUTOFMEMORY;
    }
    
    for (LONG i = 0; i < 2; i++)
    {
        SafeArrayPutElement(psa, &i, (void*)&(rId[i]));
    }
    
    *pRetVal = psa;
    return S_OK;
}   

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête uiautomationcore.h (incluez UIAutomation.h)

Voir aussi

Meilleures pratiques pour l’utilisation de tableaux sécurisés

Conceptuel

IRawElementProviderFragment

Référence