IObexDevice::Put
9/8/2008
Este método emite um Colocar comando para um objeto que é passado para o server.This envia informações para o remoto dispositivo usando um serviço específico.
Syntax
HRESULT Put(
IHeaderCollection* pHeaders,
IStream** ppStream
);
Parameters
- pHeaders
[no] Ponteiro para a coleção cabeçalhos que descreve o objeto.
- ppStream
[in, Out] Exclusivo. Ponteiro de destino para o IStream interface, que é usado para gravar os dados. De exemplo, para enviar um arquivo para um remoto dispositivo, quebra automática o arquivo ao redor de um transmitir e, em seguida, pôr que transmitir no remoto dispositivo. Esse parâmetro retorna inicialmente um vazio transmitir a ser preenchido com os dados para serem transmitidos.
Return Value
O apropriado HRESULT é retornado.
Remarks
Para verificar a Colocar operação for concluída, executar IStream::Commit Antes de fechar a operação. Essa prática é particularmente útil ao excluir um arquivo. Um retorno de S_OK indica que a operação foi concluída com êxito. Limite o tamanho transmitir para gerenciáveis blocos de informações (512 bytes, de exemplo). Transferindo fluxos muito grandes de informações evitar a capacidade para cancelar a transferir de que informações até que o processo inteiro transferir esteja completo.
O seguinte exemplo de código mostra como excluir um arquivo após o pôr operação foi concluída. Este exemplo pressupõe a existência de um IObexDevice objeto que está nomeado pObexDevice e está corretamente inicializado. Ele também pressupõe que um objeto IHeaderCollection, nomeado pHeaderCollection, é inicializado.
//
// A PUT operation that has BODY is assumed by the
// server to be a delete (per IrOBEX 1.2 spec section 3.3.3.6).
// This example demonstrates how to use the Windows Embedded CE OBEX client
// implementation to delete a file.
//
// ---The construction/connection code of IObex/IObexDevice has been
// omitted for brevity.
//
IStream *pStream = NULL;
if(FAILED(pHeaderCollection->AddName(L"MyFile.txt")))
goto Error;
if(FAILED(pObexDevice->Put(pHeaderCollection, &pStream)))
goto Error;
// NOTE: If Commit fails, the delete operation was either
// rejected by the server or the connection was lost.
// In either case, the file deletion failed.
if(FAILED(pStream->Commit(0)))
goto Error;
//Success return.
hRet = S_OK;
goto Done;
Error:
//Display Error and go to cleanup code.
hRet = E_FAIL;
Done:
//Clean up.
Requirements
Header | obex.h, obex.idl |
Library | uuid.lib |
Windows Embedded CE | Windows CE .NET 4.0 and later |
Windows Mobile | Pocket PC 2002 and later, Smartphone 2002 and later |
See Also
Reference
IObexDevice:IUnknown
OBEX Interfaces