IDispatchEx::GetDispIDIDispatchEx::GetDispID

Mappe un nom de membre unique à son DISPID correspondant, qui peut ensuite être utilisé sur les appels suivants à IDispatchEx::InvokeEx.Maps a single member name to its corresponding DISPID, which can then be used on subsequent calls to IDispatchEx::InvokeEx.

SyntaxeSyntax

 HRESULT GetDispID(  
   BSTR bstrName,  
   DWORD grfdex,  
   DISPID *pid  
);  

ParamètresParameters

bstrName
Passé dans le nom à mapper.Passed in name to be mapped.

grfdex
Détermine les options permettant d’obtenir l’identificateur de membre.Determines the options for obtaining the member identifier. Cela peut être une combinaison des valeurs suivantes :This can be a combination of the following values:

ValeurValue SignificationMeaning
fdexNameCaseSensitivefdexNameCaseSensitive Demande que la recherche de nom faire de la casse.Requests that the name lookup be done in a case-sensitive manner. Peut être ignorée par l’objet qui ne prend pas en charge la recherche qui respecte la casse.May be ignored by object that does not support case-sensitive lookup.
fdexNameEnsurefdexNameEnsure Demande que le membre créé s’il n’existe pas.Requests that the member be created if it does not already exist. Le nouveau membre doit être créé avec la valeur VT_EMPTY.The new member should be created with the value VT_EMPTY.
fdexNameImplicitfdexNameImplicit Indique que l’appelant est recherche des objets pour un membre d’un nom donné lorsque l’objet de base n’est pas explicitement spécifié.Indicates that the caller is searching object(s) for a member of a particular name when the base object is not explicitly specified.
fdexNameCaseInsensitivefdexNameCaseInsensitive Demande que la recherche de nom faire respecter la casse.Requests that the name lookup be done in a case-insensitive manner. Peut être ignorée par l’objet qui ne prend pas en charge la recherche sans respecter la casse.May be ignored by object that does not support case-insensitive lookup.

pid
Pointeur vers alloué par l’appelant d’emplacement pour recevoir le résultat DISPID.Pointer to caller-allocated location to receive DISPID result. Si une erreur se produit, pid contient DISPID_UNKNOWN.If an error occurs, pid contains DISPID_UNKNOWN.

Valeur de retourReturn Value

Retourne l’une des valeurs suivantes :Returns one of the following values:

S_OK Opération réussie.Success.
E_OUTOFMEMORY Mémoire insuffisante.Out of Memory.
DISP_E_UNKNOWNNAME Le nom n’est pas connu.The name was not known.

RemarquesRemarks

GetDispIDpeut être utilisé à la place de GetIDsOfNames pour obtenir le DISPID d’un membre donné.GetDispID can be used instead of GetIDsOfNames to obtain the DISPID for a given member.

Étant donné que IDispatchEx permet l’ajout et la suppression de membres, le jeu de DISPID n’est pas constante pour la durée de vie d’un objet.Because IDispatchEx allows the addition and deletion of members, the set of DISPIDs does not remain constant for the lifetime of an object.

Non riid paramètre IDispatch::GetIDsOfNames a été supprimé.The unused riid parameter in IDispatch::GetIDsOfNames has been removed.

ExempleExample

BSTR bstrName;  
   DISPID dispid;  
   IDispatchEx *pdex;   

   // Assign to pdex and bstrName  
   pdex->GetDispID(bstrName, fdexNameCaseSensitive, &dispid);  
   // Use dispid  

Voir aussiSee Also

Interface IDispatchExIDispatchEx Interface