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 |
---|---|
|
Der Zeiger auf den Puffer, der im pBuffer-Parameter übergeben wird, ist ungültig. |
|
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 |