IProviderMetadataUpgradeCallback::OnItemMetadataDeserialized
Ocorre uma vez para cada item lido nos metadados serializados.
HRESULT OnItemMetadataDeserialized(
IItemMetadata * pItemMetadata,
LPCWSTR * pcszExtraFieldNames,
IFieldValue ** ppExtraFieldValues,
BYTE cExtraFields);
Parâmetros
- pItemMetadata
[in] Os metadados do item no formato atualizado.
- pcszExtraFieldNames
[in, size_is(cExtraFields)] Os nomes dos campos adicionais que existem nos metadados serializados, mas que não são especificados na lista de campos personalizados para o novo esquema de metadados. Definido como NULL se cExtraFields for 0.
- ppExtraFieldValues
[in, size_is(cExtraFields)] Os valores dos campos adicionais que existem nos metadados serializados, mas que não são especificados na lista de campos personalizados para o novo esquema de metadados. Definido como NULL se cExtraFields for 0.
- cExtraFields
[in] O número de campos adicionais que existem nos metadados serializados, mas que não são especificados na lista de campos personalizados para o novo esquema de metadados.
Valor de retorno
S_OK
Códigos de erro determinados pelo provedor
Comentários
Quando um provedor recebe esse método, ele pode examinar os campos adicionais listados em pcszExtraFieldNames e ppExtraFieldValues e executar qualquer alteração necessária para corrigir os metadados de item, como mesclar dados de um campo adicional do esquema antigo em um campo existente no esquema atualizado contido em pItemMetadata.