Método IPropertyBag::Write (oaidl.h)
Salve a propriedade nomeada em uma VARIANT inicializada pelo chamador.
Sintaxe
HRESULT Write(
LPCOLESTR pszPropName,
VARIANT *pVar
);
Parâmetros
pszPropName
O endereço de uma cadeia de caracteres que contém o nome da propriedade a ser gravada. Não pode ser NULL.
pVar
O endereço do VARIANT inicializado pelo chamador que contém o valor da propriedade a ser salvo. O chamador é o proprietário dessa VARIANT e é responsável por todas as suas alocações. Ou seja, o recipiente de propriedades não tenta liberar dados na VARIANT.
Comentários
O método Write informa ao recipiente de propriedades para salvar a propriedade chamada com pszPropName usando o tipo e o valor na VARIANT inicializada pelo chamador em pVar. Em alguns casos, o chamador pode estar dizendo ao recipiente de propriedades para salvar outro objeto, por exemplo, quando pVar->vt
é VT_UNKNOWN. Nesses casos, o recipiente de propriedades consulta esse ponteiro de objeto para uma interface de persistência, como IPersistStream ou IPersistPropertyBag, e faz com que esse objeto salve seus dados também. Normalmente, isso faz com que o recipiente de propriedades tenha alguma matriz de bytes para esse objeto, que pode ser salva como texto codificado, como cadeia de caracteres hexadecimal, MIME e assim por diante. Quando o recipiente de propriedades é usado posteriormente para reinicializar um controle, o cliente que possui o recipiente de propriedades deve recriar o objeto quando o chamador o solicitar, inicializando esse objeto com os bits salvos anteriormente.
Isso permite operações de persistência eficientes para propriedades de BLOB (Objeto Binário Grande), como uma imagem, em que o proprietário do recipiente de propriedades informa ao objeto de imagem (que é gerenciado como uma propriedade no controle que é salva) para salvar em um local específico. Isso evita possíveis operações extras de cópia que podem estar envolvidas com outros mecanismos de persistência baseados em propriedade.
E_NOTIMPL não é um código de retorno válido, pois qualquer objeto que implemente essa interface deve dar suporte a toda a funcionalidade da interface.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 Build 20348 |
Servidor mínimo com suporte | Windows 10 Build 20348 |
Cabeçalho | oaidl.h |