Método IDataObject::SetData (objidl.h)
Chamado por um objeto que contém uma fonte de dados para transferir dados para o objeto que implementa esse método.
Sintaxe
HRESULT SetData(
[in] FORMATETC *pformatetc,
[in] STGMEDIUM *pmedium,
[in] BOOL fRelease
);
Parâmetros
[in] pformatetc
Um ponteiro para a estrutura FORMATETC que define o formato usado pelo objeto de dados ao interpretar os dados contidos no meio de armazenamento.
[in] pmedium
Um ponteiro para a estrutura STGMEDIUM que define o meio de armazenamento no qual os dados estão sendo passados.
[in] fRelease
Se TRUE, o objeto de dados chamado, que implementa SetData, possui o meio de armazenamento após o retorno da chamada. Isso significa que ele deve liberar o meio depois de ter sido usado chamando a função ReleaseStgMedium . Se FALSE, o chamador manterá a propriedade do meio de armazenamento e o objeto de dados chamado usará o meio de armazenamento somente durante a chamada.
Valor retornado
Esse método retorna S_OK com êxito. Outros valores possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
Valor inválido para lindex; Atualmente, há suporte apenas para -1. |
|
O valor de pformatetc não é válido. |
|
O valor de tymed não é válido. |
|
O valor dwAspect não é válido. |
|
O aplicativo de objeto não está em execução. |
|
Falha na operação. |
|
Ocorreu um erro inesperado. |
|
O valor dwDirection não é válido. |
|
Não havia memória suficiente disponível para esta operação. |
Comentários
SetData permite que outro objeto tente enviar dados para o objeto de dados em implementação. Um objeto de dados implementará esse método se ele der suporte ao recebimento de dados de outro objeto. Se ele não der suporte a isso, ele deverá ser implementado para retornar E_NOTIMPL.
O chamador aloca o meio de armazenamento indicado pelo parâmetro pmedium , no qual os dados são passados. O objeto de dados chamado não assume a propriedade dos dados até que ele os tenha recebido com êxito e nenhum código de erro seja retornado. O valor do parâmetro fRelease indica a propriedade do meio após o retorno da chamada. FALSE indica que o chamador ainda possui o meio e o objeto de dados só tem o uso dele durante a chamada; TRUE indica que o objeto de dados agora o possui e deve liberá-lo quando ele não for mais necessário.
O tipo de meio especificado nos parâmetros pformatetc e pmedium deve ser o mesmo. Por exemplo, um não pode ser um identificador global e o outro um fluxo.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h |