Compartilhar via


Método INetSharingConfiguration::AddPortMapping (netcon.h)

[O Firewall de Conexão com a Internet pode estar alterado ou indisponível em versões subsequentes. Em vez disso, use a API de Firewall do Windows.]

O método AddPortMapping adiciona um mapeamento de porta de serviço para essa conexão.

Sintaxe

HRESULT AddPortMapping(
  [in]  BSTR                   bstrName,
  [in]  UCHAR                  ucIPProtocol,
  [in]  USHORT                 usExternalPort,
  [in]  USHORT                 usInternalPort,
  [in]  DWORD                  dwOptions,
  [in]  BSTR                   bstrTargetNameOrIPAddress,
  [in]  ICS_TARGETTYPE         eTargetType,
  [out] INetSharingPortMapping **ppMapping
);

Parâmetros

[in] bstrName

Ponteiro para uma variável BSTR que contém o nome desse mapeamento de porta.

[in] ucIPProtocol

Especifica o Protocolo IP a ser definido para o mapeamento de porta. O Protocolo IP é um dos seguintes valores:

NAT_PROTOCOL_TCP

NAT_PROTOCOL_UDP

[in] usExternalPort

Especifica a porta externa para esse mapeamento de porta.

[in] usInternalPort

Especifica a porta interna para esse mapeamento de porta.

[in] dwOptions

Esse parâmetro é reservado e não é usado no momento.

[in] bstrTargetNameOrIPAddress

Ponteiro para uma variável BSTR que contém o nome do computador de destino para esse mapeamento de porta. Especifique o nome de destino ou o endereço IP de destino, mas não ambos.

[in] eTargetType

Indica o tipo de destino.

[out] ppMapping

Ponteiro para um ponteiro que, no retorno bem-sucedido, aponta para uma interface INetSharingPortMapping para o mapeamento de porta.

Retornar valor

Se o método for bem-sucedido, o valor retornado será S_OK.

Se o método falhar, o valor retornado será um dos seguintes códigos de erro.

Código de retorno Descrição
E_ABORT
A operação foi anulada.
E_FAIL
Ocorreu um erro não especificado.
E_INVALIDARG
Um dos parâmetros é inválido.
E_NOINTERFACE
Não há suporte para uma interface especificada.
E_NOTIMPL
Um método especificado não é implementado.
E_OUTOFMEMORY
O método não pôde alocar a memória necessária.
E_POINTER
Um ponteiro passado como um parâmetro não é válido.
E_UNEXPECTED
O método falhou por motivos desconhecidos.

Comentários

Quando adicionado pela primeira vez, o novo mapeamento está em um estado desabilitado. Para habilitar o novo mapeamento, use INetSharingPortMapping::Enable.

Depois de adicionada, a nova definição aparece na lista Mapeamentos de Porta na interface do usuário do ICS/ICF.

Use o método INetSharingManager::get_INetSharingConfigurationForINetConnection para obter uma interface INetSharingConfiguration para uma conexão específica.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho netcon.h
DLL Hnetcfg.dll

Confira também

INetSharingConfiguration

Interfaces de Firewall de Conexão com a Internet e Compartilhamento de Conexão com a Internet

Referência de Firewall de Conexão com a Internet e Compartilhamento de Conexão com a Internet