VpnChannel.RequestVpnPacketBuffer(VpnDataPathType, VpnPacketBuffer) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从指定的池请求 IVpnPacketBuffer。 发送路径有一个 IVpnPacketBuffer 池,另一个 IVpnPacketBuffer 池用于接收路径。
public:
virtual void RequestVpnPacketBuffer(VpnDataPathType type, [Out] VpnPacketBuffer ^ & vpnPacketBuffer) = RequestVpnPacketBuffer;
void RequestVpnPacketBuffer(VpnDataPathType const& type, [Out] VpnPacketBuffer const& & vpnPacketBuffer);
public void RequestVpnPacketBuffer(VpnDataPathType type, out VpnPacketBuffer vpnPacketBuffer);
Public Sub RequestVpnPacketBuffer (type As VpnDataPathType, ByRef vpnPacketBuffer As VpnPacketBuffer)
参数
- type
- VpnDataPathType
一个枚举值,该值指示从中选取缓冲区的缓冲池。 如果请求将数据包发送到 VPN 服务器的缓冲区,请选择发送枚举类型。 如果请求的缓冲区用于已接收的 L3 解封数据包,准备注入到客户端网络堆栈中,请选择接收枚举类型。
- vpnPacketBuffer
- VpnPacketBuffer
从指定的缓冲池返回的 IVpnPacketBuffer 对象。
Windows 要求
应用功能 |
networkingVpnProvider
|
注解
如果函数成功,则返回值 S_OK,否则该函数将返回描述特定失败的错误 hresult 值。 如果插件未连接,则错误将 E_ACCESSDENIED。如果没有更多可用内存,该方法将返回 E_OUTOFMEMORY。
插件请求的任何 IVpnPacketBuffer 对象最终都必须返回到 VPN 平台(即通过 IVpnPlugIn.Encapsulate 或 IVpnPlugin.Decapsulate)。 否则,在返回未完成的缓冲区之前,插件可能无法请求新缓冲区。
注意
在连接的 VPN 插件外部调用此 API 将失败,因为 VPN 插件与系统之间的活动和交互由 VPN 配置文件控制。 每个进程只能有一个 VPN 配置文件,因为 VPN 插件只映射了一个 VPN 配置文件,如果调用方要创建多个配置文件对象,它们都将引用相同的设置。
适用于
另请参阅
- <xref:Windows.Networking.Vpn.VpnChannel.GetVpnSendPacketBuffer+or+a+receive+path+buffer+via+M%3aWindows.Networking.Vpn.VpnChannel.GetVpnReceivePacketBuffer.>