共用方式為


IItemMetadata::TryGetFieldString

傳回字串欄位的值。

HRESULT TryGetFieldString(
  LPCWSTR pcszFieldName,
  LPWSTR pszValue,
  ULONG * pcchValue);

參數

  • pcszFieldName
    [in, string] 此欄位的名稱。
  • pszValue
    [in, out, size_is(*pcchValue)] 傳回指定之欄位的值。
  • pcchValue
    [in, out] 指定 pszValue 中的字元數目。如果 pszValue 太小,就傳回擷取指定之欄位值所需的字元數目,否則傳回寫入的字元數目,包括 Null 結束字元。

傳回值

  • S_OK。

  • 如果這項值尚未設定或是設定為 NULL,則為 S_FALSE。

  • E_POINTER。

  • E_INVALIDARG。

  • 如果此欄位不存在,則為 SYNC_E_METADATA_FIELD_INVALID_NAME。

  • 如果此欄位不是字串類型,則為 SYNC_E_METADATA_FIELD_INVALID_TYPE。

  • 如果 pszValue 不夠大,無法接收此欄位值,則為 HRESULT_FROM_WIN32(ERROR_MORE_DATA)。在這種情況下,pcchValue 會傳回所需的字元數目。

備註

自訂欄位必須在第一次初始化複寫中繼資料時使用 CUSTOM_FIELD_DEFINITION 結構定義。

如果呼叫了 IItemMetadata::SetFieldString 來設定欄位值,但是對 IReplicaMetadata::SaveItemMetadata 的呼叫尚未儲存變更,則 TryGetFieldString 會傳回 IItemMetadata 物件中包含的值,而不是中繼資料存放區中儲存的值。

請參閱

參考

IItemMetadata 介面