Compartilhar via


IObexDevice::Put

Windows Mobile SupportedWindows Embedded CE Supported

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

Concepts

Client Support

Other Resources

IStream