Partager via


Fonction de rappel PFNRASRECEIVEBUFFER (ras.h)

La DLL de script personnalisé appelle la fonction RasReceiveBuffer pour informer RAS qu’elle est prête à recevoir des données du serveur sur le port spécifié.

Le type PFNRASRECEIVEBUFFER définit un pointeur vers cette fonction de rappel. RasReceiveBuffer est un espace réservé pour le nom de fonction défini par l’application.

Syntaxe

PFNRASRECEIVEBUFFER Pfnrasreceivebuffer;

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

Paramètres

hPort

Gérez le port sur lequel recevoir les données. Ce handle doit être le handle transmis par RAS comme premier paramètre de la fonction RasCustomScriptExecute .

pBuffer

Pointeur vers une mémoire tampon pour recevoir les données du port spécifié par le paramètre hPort . Obtenez cette mémoire tampon à l’aide de la fonction RasGetBuffer .

pdwSize

Pointeur vers une variable DWORD qui reçoit la taille des données retournées dans la mémoire tampon vers laquelle pointe le paramètre pBuffer .

dwTimeOut

hEvent

Gérez un objet d’événement que RAS signale lorsque les données reçues sont disponibles.

Valeur retournée

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour peut être l’un des codes d’erreur suivants.

Valeur Signification
ERROR_BUFFER_INVALID
Le pointeur vers la mémoire tampon passée dans le paramètre pBuffer n’est pas valide.
ERROR_INVALID_PORT_HANDLE
Le handle spécifié par le paramètre hPort n’est pas valide.

Notes

RasReceiveBuffer est une fonction asynchrone. RasReceiveBuffer retourne immédiatement même si les données ne sont pas encore disponibles. La DLL de script personnalisé doit attendre sur l’objet d’événement spécifié par le paramètre hEvent . Lorsque les données sont disponibles, RAS signale cet événement. La DLL de script personnalisé doit ensuite appeler la fonction RasRetrieveBuffer pour obtenir les données. La DLL de script personnalisé peut passer le même pointeur de mémoire tampon dans RasRetrieveBuffer qu’elle a passé dans RasReceiveBuffer.

RAS signale également l’objet d’événement si, pour une raison quelconque, le port est déconnecté avant la publication des données. Dans ce cas, RasRetrieveBuffer retourne une erreur définie dans Raserror.h, qui indique la cause de l’échec.

La DLL de script personnalisé appelle RasReceiveBuffer via un pointeur de fonction. Le pointeur de fonction est passé à la DLL de script personnalisé en tant que paramètre lorsque RAS appelle l’implémentation de la DLL de RasCustomScriptExecute.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête ras.h

Voir aussi

Script personnalisé RAS

RasCustomScriptExecute

RasSendBuffer