Share via


Méthode IRecordInfo ::GetFieldNoCopy (oaidl.h)

Retourne un pointeur vers la valeur d’un nom de champ donné sans copier la valeur et allouer des ressources.

Syntaxe

HRESULT GetFieldNoCopy(
  [in]  PVOID     pvData,
  [in]  LPCOLESTR szFieldName,
  [out] VARIANT   *pvarField,
  [out] PVOID     *ppvDataCArray
);

Paramètres

[in] pvData

Instance d’un enregistrement.

[in] szFieldName

Nom du champ.

[out] pvarField

VARIANT qui contiendra l’UDT au retour.

[out] ppvDataCArray

Reçoit la valeur du champ lors du retour.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Code de retour Description
S_OK
Réussite.
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.

Remarques

Au retour, le VARIANT que vous passez contient un pointeur direct vers le champ de l’enregistrement, ppvDataCArray. Si vous modifiez le variant, le champ d’enregistrement sous-jacent change.

L’appelant alloue la mémoire du VARIANT, mais n’est pas propriétaire de la mémoire et ne peut donc pas libérer pvarField. Cette méthode appelle VariantClear pour pvarField avant de remplir le champ demandé.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête oaidl.h

Voir aussi

IRecordInfo

VariantClear