Função de retorno de chamada PFNRASRECEIVEBUFFER (ras.h)

A DLL de script personalizado chama a função RasReceiveBuffer para informar ao RAS que ela está pronta para receber dados do servidor pela porta especificada.

O tipo PFNRASRECEIVEBUFFER define um ponteiro para essa função de retorno de chamada. RasReceiveBuffer é um espaço reservado para o nome da função definida pelo aplicativo.

Sintaxe

PFNRASRECEIVEBUFFER Pfnrasreceivebuffer;

DWORD Pfnrasreceivebuffer(
  HANDLE hPort,
  PBYTE pBuffer,
  PDWORD pdwSize,
  DWORD dwTimeOut,
  HANDLE hEvent
)
{...}

Parâmetros

hPort

Manipule para a porta na qual os dados serão recebidos. Esse identificador deve ser o identificador passado pelo RAS como o primeiro parâmetro da função RasCustomScriptExecute .

pBuffer

Ponteiro para um buffer para receber os dados da porta especificada pelo parâmetro hPort . Obtenha esse buffer usando a função RasGetBuffer .

pdwSize

Ponteiro para uma variável DWORD que recebe o tamanho dos dados retornados no buffer apontado pelo parâmetro pBuffer .

dwTimeOut

hEvent

Manipule para um objeto de evento que o RAS sinalizará quando os dados recebidos estiverem disponíveis.

Valor retornado

Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.

Se a função falhar, o valor retornado poderá ser um dos códigos de erro a seguir.

Valor Significado
ERROR_BUFFER_INVALID
O ponteiro para o buffer passado no parâmetro pBuffer é inválido.
ERROR_INVALID_PORT_HANDLE
O identificador especificado pelo parâmetro hPort é inválido.

Comentários

RasReceiveBuffer é uma função assíncrona. RasReceiveBuffer retorna imediatamente mesmo que os dados ainda não estejam disponíveis. A DLL de script personalizado deve aguardar o objeto de evento especificado pelo parâmetro hEvent . Quando os dados estão disponíveis, o RAS sinaliza esse evento. A DLL de script personalizado deve chamar a função RasRetrieveBuffer para obter os dados. A DLL de script personalizado pode passar o mesmo ponteiro de buffer em RasRetrieveBuffer que passou em RasReceiveBuffer.

O RAS também sinalizará o objeto de evento se, por algum motivo, a porta for desconectada antes que os dados sejam postados. Nesse caso, RasRetrieveBuffer retorna um erro definido em Raserror.h, que indica a causa da falha.

A DLL de script personalizado chama RasReceiveBuffer por meio de um ponteiro de função. O ponteiro de função é passado para a DLL de script personalizado como um parâmetro quando RAS chama a implementação da DLL de RasCustomScriptExecute.

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 ras.h

Confira também

Script personalizado ras

RasCustomScriptExecute

RasSendBuffer