Freigeben über


IRecordInfo::GetFieldNoCopy-Methode (oaidl.h)

Gibt einen Zeiger auf den Wert eines angegebenen Feldnamens zurück, ohne den Wert zu kopieren und Ressourcen zuzuweisen.

Syntax

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

Parameter

[in] pvData

Die instance eines Datensatzes.

[in] szFieldName

Der Name des Felds.

[out] pvarField

Der VARIANT-Wert, der bei der Rückgabe den UDT enthält.

[out] ppvDataCArray

Empfängt den Wert des Felds bei der Rückgabe.

Rückgabewert

Diese Methode kann einen dieser Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
E_INVALIDARG
Mindestens eines der Argumente ist ungültig.

Hinweise

Nach der Rückgabe enthält der übergebene VARIANT einen direkten Zeiger auf das Feld des Datensatzes, ppvDataCArray. Wenn Sie das VARIANT-Feld ändern, ändert sich das zugrunde liegende Datensatzfeld.

Der Aufrufer weist den Arbeitsspeicher des VARIANT zu, besitzt aber nicht den Arbeitsspeicher, sodass pvarField nicht freigegeben werden kann. Diese Methode ruft VariantClear für pvarField auf, bevor das angeforderte Feld ausgefüllt wird.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile oaidl.h

Weitere Informationen

IRecordInfo

VariantClear