Método IStreamAsync::WriteAsync (shobjidl.h)

Grava informações em um fluxo de forma assíncrona. Por exemplo, o Shell implementa esse método em itens de arquivo ao transferi-los de forma assíncrona.

Sintaxe

HRESULT WriteAsync(
  [in]  const void   *lpBuffer,
  [in]  DWORD        cb,
  [out] LPDWORD      pcbWritten,
  [in]  LPOVERLAPPED lpOverlapped
);

Parâmetros

[in] lpBuffer

Tipo: const void*

Um ponteiro para um buffer de tamanho cb bytes que contém as informações a serem gravadas no fluxo.

[in] cb

Tipo: DWORD

O tamanho do buffer apontado por lpBuffer, em bytes.

[out] pcbWritten

Tipo: LPDWORD

Ponteiro para um valor DWORD que, quando o método retorna com êxito, declara o número real de bytes gravados no fluxo. Esse valor poderá ser NULL se essas informações não forem necessárias.

[in] lpOverlapped

Tipo: LPOVERLAPPED

Um ponteiro para uma estrutura OVERLAPPED que contém informações usadas na operação de gravação assíncrona.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

WriteAsync deve redefinir o evento especificado pelo membro hEvent da estrutura OVERLAPPED para um estado não atribuído quando iniciar a operação de E/S (entrada/saída).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shobjidl.h