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 |
---|---|
|
O ponteiro para o buffer passado no parâmetro pBuffer é inválido. |
|
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 |