PFNRASRETRIEVEBUFFER 回调函数 (ras.h)

自定义脚本 DLL 调用 RasRetrieveBuffer 函数以获取通过指定端口从 RAS 服务器接收的数据。 只有在 RAS 发出在 RasReceiveBuffer 调用中传递的事件对象的信号后,自定义脚本 DLL 才应调用 RasRetrieveBuffer

PFNRASRETRIEVEBUFFER 类型定义指向此回调函数的指针。 RasRetrieveBuffer 是应用程序定义的函数名称的占位符。

语法

PFNRASRETRIEVEBUFFER Pfnrasretrievebuffer;

DWORD Pfnrasretrievebuffer(
  HANDLE hPort,
  PBYTE pBuffer,
  PDWORD pdwSize
)
{...}

参数

hPort

用于接收数据的端口的句柄。 此句柄应是 RAS 作为 RasCustomScriptExecute 函数的第一个参数传入的句柄。

pBuffer

指向缓冲区的指针,用于从 hPort 参数指定的端口接收数据。 使用 RasGetBuffer 函数获取此缓冲区。 此参数的值可能与指向传递到 RasReceiveBuffer 函数的缓冲区的指针相同。

pdwSize

指向 DWORD 变量的指针,该变量接收 pBuffer 参数指向的缓冲区中返回的数据的大小。

返回值

如果函数成功,则返回值 ERROR_SUCCESS

如果函数失败,则返回值可能是以下错误代码之一。

含义
ERROR_BUFFER_INVALID
指向 pBuffer 参数中传递的缓冲区的指针无效。
ERROR_INVALID_PORT_HANDLE
hPort 参数指定的句柄无效。
 

如果在发布数据之前由于某种原因导致端口断开连接,RAS 会向事件对象发出信号。 在这种情况下, RasRetrieveBuffer 返回 Raserror.h 中定义的错误,该错误指示失败的原因。

注解

RasRetrieveBuffer 函数是同步的。 返回时, pBuffer 参数指向的缓冲区包含通过指定端口接收的数据。 自定义脚本 DLL 应仅在 RAS 向事件对象发出信号后调用 RasReceiveBuffer 后调用 RasRetrieveBuffer

自定义脚本 DLL 通过函数指针调用 RasRetrieveBuffer 。 当 RAS 调用 RAsCustomScriptExecute 的 DLL 实现时,函数指针作为参数传递给自定义脚本 DLL。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 ras.h

另请参阅

RAS 自定义脚本

RasCustomScriptExecute

RasReceiveBuffer

RasSendBuffer