Freigeben über


PFNRASRECEIVEBUFFER-Rückruffunktion (ras.h)

Die DLL für benutzerdefinierte Skripterstellung ruft die RasReceiveBuffer-Funktion auf, um RAS zu informieren, dass sie bereit ist, Daten vom Server über den angegebenen Port zu empfangen.

Der PFNRASRECEIVEBUFFER-Typ definiert einen Zeiger auf diese Rückruffunktion. RasReceiveBuffer ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.

Syntax

PFNRASRECEIVEBUFFER Pfnrasreceivebuffer;

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

Parameter

hPort

Behandeln Sie den Port, an dem die Daten empfangen werden sollen. Bei diesem Handle sollte es sich um das Handle handeln, das von RAS als erster Parameter der RasCustomScriptExecute-Funktion übergeben wird.

pBuffer

Zeiger auf einen Puffer, um die Daten von dem durch den hPort-Parameter angegebenen Port zu empfangen. Rufen Sie diesen Puffer mithilfe der RasGetBuffer-Funktion ab.

pdwSize

Zeiger auf eine DWORD-Variable , die die Größe der im Puffer zurückgegebenen Daten empfängt, auf die der pBuffer-Parameter verweist.

dwTimeOut

hEvent

Behandeln Sie ein Ereignisobjekt, das RAS signalisiert, wenn die empfangenen Daten verfügbar sind.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden Fehlercodes sein.

Wert Bedeutung
ERROR_BUFFER_INVALID
Der Zeiger auf den Puffer, der im pBuffer-Parameter übergeben wird, ist ungültig.
ERROR_INVALID_PORT_HANDLE
Das vom hPort-Parameter angegebene Handle ist ungültig.

Hinweise

RasReceiveBuffer ist eine asynchrone Funktion. RasReceiveBuffer wird sofort zurückgegeben, auch wenn die Daten noch nicht verfügbar sind. Die DLL für benutzerdefinierte Skripterstellung muss auf das vom hEvent-Parameter angegebene Ereignisobjekt warten. Wenn die Daten verfügbar sind, signalisiert RAS dieses Ereignis. Die DLL für benutzerdefinierte Skripterstellung sollte dann die RasRetrieveBuffer-Funktion aufrufen, um die Daten abzurufen. Die DLL für benutzerdefinierte Skripterstellung übergibt möglicherweise denselben Pufferzeiger in RasRetrieveBuffer , den sie in RasReceiveBuffer übergeben hat.

RAS signalisiert auch das Ereignisobjekt, wenn der Port aus irgendeinem Grund getrennt wird, bevor die Daten veröffentlicht werden. In diesem Fall gibt RasRetrieveBuffer einen in Raserror.h definierten Fehler zurück, der die Ursache des Fehlers angibt.

Die DLL für benutzerdefinierte Skripterstellung ruft RasReceiveBuffer über einen Funktionszeiger auf. Der Funktionszeiger wird als Parameter an die DLL für benutzerdefinierte Skripterstellung übergeben, wenn RAS die Implementierung von RasCustomScriptExecute der DLL aufruft.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ras.h

Weitere Informationen

Benutzerdefinierte RAS-Skripterstellung

RasCustomScriptExecute

RasSendBuffer