Compartilhar via


VpnChannel.RequestVpnPacketBuffer(VpnDataPathType, VpnPacketBuffer) Método

Definição

Solicita um IVpnPacketBuffer do pool especificado. Há um pool IVpnPacketBuffer para o caminho de envio e outro pool de IVpnPacketBuffer para o caminho de recebimento.

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)

Parâmetros

type
VpnDataPathType

Um valor de enumeração que indica de qual pool de buffers escolher um buffer. Se o buffer solicitado para que o pacote seja enviado para o servidor VPN, escolha o tipo de enumeração Enviar. Se o buffer solicitado for para um pacote descapsulado L3 recebido pronto para ser injetado na pilha de rede do cliente, escolha o tipo de enumeração Receive.

vpnPacketBuffer
VpnPacketBuffer

Um objeto IVpnPacketBuffer retornado do pool de buffers especificado.

Requisitos do Windows

Funcionalidades do aplicativo
networkingVpnProvider

Comentários

Se a função for bem-sucedida, o valor retornado será S_OK, caso contrário, a função retornará um valor hresult de erro que descreve a falha específica. Se o plug-in não estiver conectado, o erro será E_ACCESSDENIED. Se não houver mais memória disponível, o método retornará E_OUTOFMEMORY.

Qualquer objeto IVpnPacketBuffer solicitado pelo plug-in deve eventualmente ser retornado para a plataforma VPN (ou seja, por meio de IVpnPlugIn.Encapsular ou IVpnPlugin.Decapsulate). Caso contrário, o plug-in poderá não conseguir solicitar novos buffers até que os buffers pendentes sejam retornados.

Nota

Qualquer chamada para essa API fora de um plug-in VPN conectado falhará, pois a atividade e as interações entre o plug-in VPN e o sistema são controladas pelo perfil VPN. Só pode haver um perfil VPN por processo porque o plug-in VPN tem apenas um perfil VPN mapeado para ele e, se um chamador criasse mais de um objeto de perfil, todos eles se refeririam às mesmas configurações.

Aplica-se a

Confira também

  • <xref:Windows.Networking.Vpn.VpnChannel.GetVpnSendPacketBuffer+or+a+receive+path+buffer+via+M%3aWindows.Networking.Vpn.VpnChannel.GetVpnReceivePacketBuffer.>