enumeração WS_CHANNEL_PROPERTY_ID (webservices.h)

Cada propriedade de canal é identificada por uma ID e tem um valor associado. Se uma propriedade não for especificada quando o canal for criado, seu valor padrão será usado.

Syntax

typedef enum {
  WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE = 0,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE = 1,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE = 2,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE = 3,
  WS_CHANNEL_PROPERTY_ENCODING = 4,
  WS_CHANNEL_PROPERTY_ENVELOPE_VERSION = 5,
  WS_CHANNEL_PROPERTY_ADDRESSING_VERSION = 6,
  WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE = 7,
  WS_CHANNEL_PROPERTY_STATE = 8,
  WS_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL = 9,
  WS_CHANNEL_PROPERTY_IP_VERSION = 10,
  WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT = 11,
  WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT = 12,
  WS_CHANNEL_PROPERTY_SEND_TIMEOUT = 13,
  WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT = 14,
  WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT = 15,
  WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT = 16,
  WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS = 17,
  WS_CHANNEL_PROPERTY_TRANSFER_MODE = 18,
  WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE = 19,
  WS_CHANNEL_PROPERTY_MULTICAST_HOPS = 20,
  WS_CHANNEL_PROPERTY_REMOTE_ADDRESS = 21,
  WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS = 22,
  WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID = 23,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS = 24,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS = 25,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_INSTANCE = 26,
  WS_CHANNEL_PROPERTY_TRANSPORT_URL = 27,
  WS_CHANNEL_PROPERTY_NO_DELAY = 28,
  WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES = 29,
  WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME = 30,
  WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL = 31,
  WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS = 32,
  WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN = 33,
  WS_CHANNEL_PROPERTY_CHANNEL_TYPE = 34,
  WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE = 35,
  WS_CHANNEL_PROPERTY_ENCODER = 36,
  WS_CHANNEL_PROPERTY_DECODER = 37,
  WS_CHANNEL_PROPERTY_PROTECTION_LEVEL = 38,
  WS_CHANNEL_PROPERTY_COOKIE_MODE = 39,
  WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE = 40,
  WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY = 41,
  WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING = 42,
  WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT = 43,
  WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT = 44,
  WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS = 45,
  WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS = 46,
  WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN = 47,
  WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN = 48,
  WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE = 49
} WS_CHANNEL_PROPERTY_ID;

Constantes

 
WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE
Valor: 0
Um ULONG
usado com WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty para WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING. Esse valor é um limite quanto ao tamanho de um
a mensagem pode ser recebida ou enviada pelo canal. O limite especifica o tamanho máximo
do envelope em bytes como ele aparece em seu formulário de fio codificado.
O valor mínimo é 1.


Essa propriedade limita a quantidade de memória
que o canal alocará para receber ou enviar uma mensagem em buffer.
Ao receber com entrada em buffer, toda a mensagem é lida em um
buffer antes que o aplicativo tenha acesso a ele. Ao enviar com saída em buffer,
a mensagem inteira é acumulada em um buffer antes de ser enviada.


Essa propriedade só pode ser especificada quando a entrada ou a saída em buffer tiver sido
especificado ( WS_STREAMED_INPUT_TRANSFER_MODE ou
WS_STREAMED_OUTPUT_TRANSFER_MODE não foram definidos).


O valor padrão é 65536.


O WS_UDP_CHANNEL_BINDING sempre usa o valor 65536.
WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE
Valor: 1
Um __int64 sem sinal usado com WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty
WS_HTTP_CHANNEL_BINDING. Esse
value é um limite para o tamanho de uma mensagem transmitida pode ser recebida ou enviada
para o canal.
O limite especifica o tamanho máximo do envelope em bytes conforme ele aparece
em seu formulário de fio codificado. O valor mínimo é 1.


Essa propriedade só pode ser especificada quando a entrada ou saída transmitida tiver sido selecionada
(WS_STREAMED_INPUT_TRANSFER_MODE ou WS_STREAMED_OUTPUT_TRANSFER_MODE foi definido).


O valor padrão é 4194304.
WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE
Valor: 2
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING.
Esse valor é um limite quanto ao tamanho do início de uma mensagem.
O início de uma mensagem consiste na marca de envelope, nos cabeçalhos e na marca do corpo.
O limite especifica o tamanho máximo dos dados em bytes conforme ele aparece em
seu formulário de fio codificado. O valor mínimo é 1.


Essa propriedade só pode ser especificada quando a entrada transmitida tiver sido selecionada
(WS_STREAMED_INPUT_TRANSFER_MODE).


Essa propriedade limita a quantidade de memória que o canal alocará
para ler o início da mensagem. Para entrada de streaming, o
todo o início da mensagem será lido em um buffer antes do aplicativo
é notificado de que o início da mensagem foi lido.


O valor padrão é 16384.
WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE
Valor: 3
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING.
Esse valor é um limite de quantos bytes serão acumulados
antes de WsFlushBody ser chamado.


Essa propriedade só pode ser especificada quando a saída transmitida tiver sido selecionada
(WS_STREAMED_OUTPUT_TRANSFER_MODE).


Essa propriedade limita a quantidade de memória que o canal alocará
para acumular dados armazenados em buffer. Para saída de streaming, o
O canal acumulará dados em um buffer até que WsFlushBody seja chamado.


O valor padrão é 65536.
WS_CHANNEL_PROPERTY_ENCODING
Valor: 4
Um valor WS_ENCODING
usado com WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty para WS_TCP_CHANNEL_BINDING ou WS_HTTP_CHANNEL_BINDING.
Esse valor especifica qual codificação usar para o canal.


O valor padrão depende da associação:



O WS_UDP_CHANNEL_BINDING sempre usa o valor WS_ENCODING_XML_UTF8.
WS_CHANNEL_PROPERTY_ENVELOPE_VERSION
Valor: 5
Um valor WS_ENVELOPE_VERSION
usado com WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Esse valor especifica qual versão do envelope usar para o canal. O
A versão do envelope do canal deve corresponder à da mensagem usada com
o canal.


Não há suporte para essa propriedade com o WS_NAMEDPIPE_CHANNEL_BINDING. Os canais pipe nomeados sempre usam WS_ENVELOPE_VERSION_SOAP_1_2.

O valor padrão depende da associação:
WS_CHANNEL_PROPERTY_ADDRESSING_VERSION
Valor: 6
Um valor WS_ADDRESSING_VERSION
usado com WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Esse valor especifica qual versão de endereçamento usar para o canal. O
a versão de endereçamento do canal deve corresponder à da mensagem usada com
o canal.


O valor padrão depende da associação:



O WS_ADDRESSING_VERSION_TRANSPORT só tem suporte para
WS_HTTP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE
Valor: 7
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Essa propriedade só é válida para WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Esse valor especifica a cota para o número de bytes do dicionário de sessão
cadeias de caracteres que serão transmitidas ou recebidas ao usar uma codificação baseada em sessão.


A única codificação baseada em sessão com suporte no momento é
WS_ENCODING_XML_BINARY_SESSION_1, que é a codificação padrão
para o WS_TCP_CHANNEL_BINDING.


Se a cota for atingida no lado receptor, o canal
falhará.


Se a cota for atingida no lado de envio, o canal simplesmente
transmita a cadeia de caracteres sem usar o dicionário de sessão.


Esse valor será ignorado se não estiver usando uma codificação baseada em sessão.


O valor padrão é 2048.
WS_CHANNEL_PROPERTY_STATE
Valor: 8
Um valor WS_CHANNEL_STATE
retornado por WsGetChannelProperty.


O valor retornado é um instantâneo do estado atual, portanto, é
possível que o estado pode ter sido alterado antes que o chamador tenha
teve a chance de examinar o valor.
WS_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL
Valor: 9
Um valor WS_CALLBACK_MODEL usado com WsCreateChannel ou WsGetChannelProperty.
Esse valor indica o modelo de retorno de chamada assíncrono preferencial ao emitir
Operações assíncronas para o canal.


Se estiver usando WsCreateChannelForListener , consulte
WS_LISTENER_PROPERTY_ASYNC_CALLBACK_MODEL.


O padrão é WS_LONG_CALLBACK.


O WS_SERVICE_HOST e o WS_SERVICE_PROXY só dão suporte a WS_LONG_CALLBACK
como um valor aceitável para essa propriedade.
WS_CHANNEL_PROPERTY_IP_VERSION
Valor: 10
Um valor WS_IP_VERSION
usado com WsCreateChannel ou WsGetChannelProperty para WS_TCP_CHANNEL_BINDING ou WS_UDP_CHANNEL_BINDING.
Essa propriedade especifica a qual versão de IP o canal deve usar
comunique-se com o ponto de extremidade remoto.


Para especificar a versão de IP a ser usada para canais aceitos, use o
WS_LISTENER_PROPERTY_IP_VERSION propriedade do ouvinte quando
criando o objeto ouvinte.


O valor padrão é WS_IP_VERSION_AUTO.
WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT
Valor: 11
Um ULONG usado com WsCreateChannel, WsSetChannelProperty,
ou WsSetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.
Esse tempo limite limita a quantidade de tempo que será gasto para resolver
o nome DNS. O valor de tempo limite está em milissegundos,
em que o valor INFINITE não indica nenhum tempo limite.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é INFINITE.
WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT
Valor: 12
Um ULONG usado com WsCreateChannel,
WsSetChannelProperty ou WsGetChannelProperty
para WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING no lado do cliente.
Esse tempo limite limita o tempo que será gasto para se conectar ao computador remoto e concluir o handshake net.tcp ou net.pipe. O valor de tempo limite
está em milissegundos, em que o valor INFINITE indica que não há tempo limite. Para definir
ou obter o tempo limite correspondente no lado do servidor, use
(WS_LISTENER_PROPERTY_CONNECT_TIMEOUT).


Usado com WsCreateChannel,
WsSetChannelProperty ou WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.
Esse tempo limite limita o tempo que será gasto para se conectar
para o servidor HTTP. O valor de tempo limite está em milissegundos,
em que o valor INFINITE não indica nenhum tempo limite.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é 30000 (30 segundos).


O WS_SERVICE_PROXY define esse tempo limite como INFINITE por padrão.
WS_CHANNEL_PROPERTY_SEND_TIMEOUT
Valor: 13
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener,
WsSetChannelProperty ou WsGetChannelProperty
para WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING. Esse tempo limite limita o
quantidade de tempo que será gasto enviando os bytes da mensagem.
O valor de tempo limite é em milissegundos, em que o valor INFINITE indica
sem tempo limite.


Usado com WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING
e WS_CHANNEL_TYPE_REQUEST.
Esse tempo limite limita a quantidade de tempo que será gasto enviando o
Cabeçalhos HTTP e os bytes da mensagem. O valor de tempo limite é em milissegundos, em que o
value INFINITE indica que não há tempo limite.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é 30000 (30 segundos).


Tanto WS_SERVICE_HOST quanto WS_SERVICE_PROXY definir isso
tempo limite para INFINITE por padrão.
WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT
Valor: 14
Um ULONG usado com WsCreateChannel, WsSetChannelProperty,
ou WsSetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.
Esse tempo limite limita o tempo que será gasto aguardando
todos os cabeçalhos de resposta a serem recebidos do servidor.
O valor de tempo limite é em milissegundos, em que o valor INFINITE não indica nenhum tempo limite.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é 30000 (30 segundos).


O WS_SERVICE_PROXY define esse tempo limite como INFINITE.
WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT
Valor: 15
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener,
WsSetChannelProperty ou WsGetChannelProperty,
para WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Esse tempo limite limita a quantidade de tempo que será gasto recebendo o
os bytes da mensagem.
O valor de tempo limite é em milissegundos, em que o valor INFINITE indica
sem tempo limite.


Usado com WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.
Esse tempo limite limita a quantidade de tempo que será gasto recebendo o
bytes da mensagem. O valor de tempo limite está em milissegundos,
em que o valor INFINITE não indica nenhum tempo limite.
Esse tempo limite pode ser disparado por WsWriteMessageEnd, WsReadMessageStart e WsReadMessageEnd.

Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é 30000 (30 segundos).


Tanto WS_SERVICE_HOST quanto WS_SERVICE_PROXY definir isso
tempo limite para INFINITE por padrão.
WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT
Valor: 16
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener
WsSetChannelProperty ou WsGetChannelProperty
para WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Esse tempo limite limita a quantidade de tempo que será gasto concluindo o
o handshake fechar net.tcp ou net.pipe. O valor de tempo limite é em milissegundos, em que o
value INFINITE indica que não há tempo limite.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é 30000 (30 segundos).


O WS_SERVICE_PROXY define esse tempo limite como INFINITE por padrão.
WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS
Valor: 17
Um BOOL usado com WsCreateChannel para WS_HTTP_CHANNEL_BINDING, WS_TCP_CHANNEL_BINDING, WS_NAMEDPIPE_CHANNEL_BINDING,
e WS_UDP_CHANNEL_BINDING.
Usado com WsGetChannelProperty para WS_CUSTOM_CHANNEL_BINDING.


Quando essa propriedade é definida como TRUE ou não é fornecida ao chamar WsCreateChannel,
propriedades de tempo limite de canal mais específicas (por exemplo , WS_CHANNEL_PROPERTY_SEND_TIMEOUT)
tem precedência e se comporta conforme documentado. Quando essa propriedade é definida como FALSE,
todas as propriedades de tempo limite de canal específicas são definidas como INFINITE, a menos que sejam especificadas explicitamente.


Essa propriedade pode ser consultada de um canal personalizado usando WsGetChannelProperty,
consulte WS_GET_CHANNEL_PROPERTY_CALLBACK para obter mais detalhes.


O valor padrão é TRUE.


Para implementar sua própria lógica de tempo limite, WS_SERVICE_PROXY e
WS_SERVICE_HOST define essa propriedade como FALSE para o
associações de canais padrão e exigem canais personalizados para dar suporte a ela consultando e
verificando se ele está definido como FALSE.
Propriedades de tempo limite mais específicas ainda podem ser fornecidas conforme descrito acima.
WS_CHANNEL_PROPERTY_TRANSFER_MODE
Valor: 18
Um valor WS_TRANSFER_MODE
usado com WsCreateChannel
para WS_HTTP_CHANNEL_BINDING controlar se as mensagens
enviados e recebidos no canal são armazenados em buffer ou transmitidos. O cliente
e o servidor podem usar modos de transferência diferentes e ainda poderão se comunicar.


Todos os canais dão suporte a WsGetChannelProperty para isso
property.


Para associações de canal diferentes de WS_HTTP_CHANNEL_BINDINGo valor é sempre WS_BUFFERED_TRANSFER_MODE.


O valor da propriedade padrão é WS_BUFFERED_TRANSFER_MODE. Nota
somente WS_BUFFERED_TRANSFER_MODE é usado pelo Modelo de Serviço para ambos
WS_SERVICE_PROXY e WS_SERVICE_HOST. A única exceção
está em torno de usar contratos de mensagem em WS_SERVICE_HOST, em que
WS_STREAMED_OUTPUT_TRANSFER_MODE é permitido.



WS_STREAMED_OUTPUT_TRANSFER_MODE com WS_CHANNEL_TYPE_REQUEST requer o Windows Vista e superior e dá suporte apenas a WS_HTTP_HEADER_AUTH_SCHEME_BASIC quando usado com segurança.
WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE
Valor: 19
Um ULONG usado com WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty para WS_UDP_CHANNEL_BINDING
com WS_CHANNEL_TYPE_DUPLEX para indicar qual adaptador
deve ser usado ao enviar para um endereço multicast.


O valor é o índice de interface do adaptador.


Se essa propriedade não estiver definida ou for 0, o adaptador padrão para o
o computador é usado. Isso pode não ser apropriado para computadores com vários adaptadores.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor da propriedade padrão é 0.
WS_CHANNEL_PROPERTY_MULTICAST_HOPS
Valor: 20
Um ULONG usado com WsCreateChannel ou WsGetChannelProperty
para WS_UDP_CHANNEL_BINDING com WS_CHANNEL_TYPE_DUPLEX
para especificar o número máximo de saltos que uma mensagem UDP pode percorrer.


O valor da propriedade padrão é 1.
WS_CHANNEL_PROPERTY_REMOTE_ADDRESS
Valor: 21
Uma estrutura WS_ENDPOINT_ADDRESS
usado com WsGetChannelProperty
para WS_UDP_CHANNEL_BINDING com WS_CHANNEL_TYPE_DUPLEX
para recuperar o endereço do ponto de extremidade da parte remota do canal.


Os campos do retornado
WS_ENDPOINT_ADDRESS estrutura são válidas e constantes até o canal
é redefinido ou liberado. O chamador não deve modificar os valores retornados
campos do WS_ENDPOINT_ADDRESS apontam para.


Essa propriedade não pode ser recuperada até que o canal tenha atingido o estado aberto.


Essa propriedade é baseada no endereço IP de origem que é recebido de
a rede, que pode ser falsificada ou adulterada mesmo se estiver usando um
canal seguro (dependendo do ambiente de rede).
WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS
Valor: 22
Uma estrutura SOCKADDR_STORAGE
usado com WsCreateChannel
para os seguintes tipos de canais para recuperar o endereço IP
da parte remota:



Essa propriedade não pode ser recuperada até que o canal tenha começado a ler uma mensagem.


Essa propriedade é baseada no endereço IP de origem que é recebido de
a rede, que pode ser falsificada ou adulterada mesmo se estiver usando um
canal seguro (dependendo do ambiente de rede).
WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID
Valor: 23
Um ponteiro para um ULONGLONG usado com WsGetChannelProperty
para WS_HTTP_CHANNEL_BINDING com WS_CHANNEL_TYPE_REPLY
para recuperar um identificador que identifica exclusivamente a conexão do cliente.


Essa propriedade não pode ser recuperada até que o canal tenha começado a ler uma mensagem.


A ID de conexão identifica exclusivamente uma conexão enquanto o
O objeto ouvinte do qual o canal foi aceito permanece aberto.


Uma determinada instância de canal de resposta não está correlacionada de forma alguma com uma conexão.
Cada vez que o canal é aceito, pode haver uma ID de conexão diferente
(mesmo que o conjunto total de conexões não tenha sido alterado desde a última aceitação).


A ID de conexão pode ser usada por um aplicativo para correlacionar o estado com
uma conexão HTTP.
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS
Valor: 24
Uma estrutura WS_CUSTOM_CHANNEL_CALLBACKS usada com WsCreateChannel ou WsCreateChannelForListener para WS_CUSTOM_CHANNEL_BINDING.


Essa propriedade é usada para especificar retornos de chamada que
definir a implementação de um canal personalizado.


Essa propriedade deve ser especificada quando WS_CUSTOM_CHANNEL_BINDING é usado.
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS
Valor: 25
Um ponteiro para um tipo de dados de tamanho arbitrário usado com WsCreateChannel ou WsCreateChannelForListener para WS_CUSTOM_CHANNEL_BINDING.


Essa propriedade é usada para especificar parâmetros usados para criar o personalizado
implementação de canal.


O tamanho da propriedade é o tamanho do tipo de dados.


O valor dessa propriedade será passado para o
WS_CREATE_CHANNEL_CALLBACK.


Se essa propriedade não for especificada, seu valor será NULL e size será zero.
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_INSTANCE
Valor: 26
Um vazio usado com WsGetChannelProperty para WS_CUSTOM_CHANNEL_BINDING.


O tamanho da propriedade é sizeof(void
).
O valor corresponde ao valor da instância do canal retornado por
o WS_CREATE_CHANNEL_CALLBACK.


Essa propriedade pode ser usada para obter o canal subjacente
instância de um canal personalizado. Isso permite que um chamador diretamente
interagir com a instância para casos em que o existente
O conjunto de propriedades de canal ou funções de canal é insuficiente.
WS_CHANNEL_PROPERTY_TRANSPORT_URL
Valor: 27
Uma estrutura WS_STRING
usado com WsGetChannelProperty
para WS_HTTP_CHANNEL_BINDING ou WS_TCP_CHANNEL_BINDING para canais criados com WsCreateChannelForListener.


Essa propriedade é usada no servidor para obter a URL que foi passada
para WsOpenChannel no cliente.
Essa URL pode ser diferente do valor no WS_TO_HEADER
se WsAddressMessage foi usado. O mapeamento do
A URL de transporte para o transporte subjacente varia de acordo com o
WS_CHANNEL_BINDING, da seguinte maneira:



Essa propriedade só estará disponível depois que o canal tiver
foi aceito usando WsAcceptChannel.


O chamador deve passar o endereço de um WS_STRING quando
recuperando essa propriedade. A cadeia de caracteres retornada é totalmente qualificada
URL no formulário codificado. A cadeia de caracteres retornada é boa até o canal
é liberado ou redefinido.
WS_CHANNEL_PROPERTY_NO_DELAY
Valor: 28
Um BOOL usado com WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty ou WsSetChannelProperty para WS_TCP_CHANNEL_BINDING.


Essa propriedade controla o valor da opção de soquete TCP_NODELAY do soquete subjacente.


Quando esse valor é FALSE, o algoritmo Nagle é usado, o que pode
aprimorar a taxa de transferência unindo mensagens pequenas.


Definir esse valor como TRUE pode diminuir a latência ao custo da taxa de transferência
para mensagens pequenas.


O valor padrão é FALSE.
WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES
Valor: 29
Um BOOL usado com WsCreateChannel, WsCreateChannelForListener para WS_TCP_CHANNEL_BINDING.


Essa propriedade controla o valor da opção de soquete SO_KEEPALIVE do soquete subjacente.


Definir esse valor como TRUE fará com que pacotes keep alive sejam enviados
no soquete subjacente, que pode ajudar a detectar quando
uma parte remota não está mais disponível.


O valor padrão é FALSE.
WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME
Valor: 30
Um ULONG usado com WsCreateChannel ou WsCreateChannelForListener para WS_TCP_CHANNEL_BINDING.


Essa propriedade é medida em milissegundos.


Essa propriedade só pode ser especificada quando a propriedade WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES tem o valor true.


O valor representa a quantidade de tempo antes de enviar pacotes keep alive se o
socket não está em uso.


O valor padrão é 2 horas.
WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL
Valor: 31
Um ULONG usado com WsCreateChannel ou WsCreateChannelForListener para WS_TCP_CHANNEL_BINDING.


Essa propriedade é medida em milissegundos.


Essa propriedade só pode ser especificada quando a propriedade WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES tem o valor true.


Depois que o tempo especificado no WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME tiver expirado,
o sistema começará a enviar pacotes keep alive na tentativa de contatar
a parte remota. Essa configuração controla a frequência com que o sistema enviará
outro pacote (como uma tentativa de repetição).


O valor padrão é de 1 segundo.
WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS
Valor: 32
Um ULONG usado com WsCreateChannel para WS_HTTP_CHANNEL_BINDING.


Essa propriedade especifica o número máximo de conexões que um aplicativo cliente
pode ter em um servidor HTTP.
As conexões podem ser armazenadas em cache e reutilizados por outros componentes no mesmo processo que acessam o mesmo servidor HTTP.


O valor padrão é INFINITE (sem limite).
WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN
Valor: 33
Um BOOL usado com WsGetChannelProperty para WS_TCP_CHANNEL_BINDING
ou WS_NAMEDPIPE_CHANNEL_BINDING com WS_CHANNEL_TYPE_DUPLEX_SESSION.


Essa propriedade indica
se WsShutdownSessionChannel foi
usado para desligar o canal.


O canal deve estar em WS_CHANNEL_STATE_OPEN ou
WS_CHANNEL_STATE_FAULTED estado.
WS_CHANNEL_PROPERTY_CHANNEL_TYPE
Valor: 34
Um valor WS_CHANNEL_TYPE
usado com WsGetChannelProperty para todos os tipos de canal
para consultar o tipo do canal.


O canal pode estar em qualquer WS_CHANNEL_STATE.
WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE
Valor: 35
Um ULONG usado com WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty para WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING para controlar a alocação de memória
características para as mensagens no canal.


Essa propriedade especifica a quantidade máxima de memória que o canal manterá
ao redor depois que uma mensagem é redefinida. Se todos os
mensagens que um canal vê são todas menores que esse tamanho e, em seguida, alocações
para fins de buffer, as mensagens serão minimizadas.


Essa propriedade só pode ser especificada quando a entrada ou a saída em buffer tiver sido
especificado ( WS_STREAMED_INPUT_TRANSFER_MODE ou
WS_STREAMED_OUTPUT_TRANSFER_MODE não foram definidos).


O valor padrão é 65536.


O WS_UDP_CHANNEL_BINDING sempre usa o valor 65536.
WS_CHANNEL_PROPERTY_ENCODER
Valor: 36
Uma estrutura WS_CHANNEL_ENCODER usada com WsCreateChannel ou WsCreateChannelForListener para WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING para fornecer uma codificação personalizada de mensagens.

Essa propriedade não pode ser usada com WS_UDP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_DECODER
Valor: 37
Uma estrutura WS_CHANNEL_DECODER usada com WsCreateChannel ou WsCreateChannelForListener para WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING para fornecer uma dencodificação personalizada de mensagens.

Essa propriedade não pode ser usada com WS_UDP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_PROTECTION_LEVEL
Valor: 38
Um valor WS_PROTECTION_LEVEL usado com WsGetChannelProperty para qualquer tipo de canal.


Essa propriedade indica
as garantias de segurança fornecidas pelo canal.


O valor dessa propriedade depende dos requisitos de segurança
solicitado para o canal.
WS_CHANNEL_PROPERTY_COOKIE_MODE
Valor: 39
Um valor WS_COOKIE_MODE usado com WsCreateChannel com WS_HTTP_CHANNEL_BINDING para controlar como os cookies HTTP são tratados.


O valor padrão é WS_AUTO_COOKIE_MODE.
WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE
Valor: 40
Um valor WS_HTTP_PROXY_SETTING_MODE usado com WsCreateChannel com WS_HTTP_CHANNEL_BINDING para controlar as configurações de proxy HTTP para o canal.


O valor padrão é WS_HTTP_PROXY_SETTING_MODE_AUTO.
WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY
Valor: 41
Uma estrutura WS_CUSTOM_HTTP_PROXY usada com WsCreateChannel com WS_HTTP_CHANNEL_BINDING para especificar a configuração personalizada para o canal HTTP. Essa propriedade deve
ser especificado quando WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE é definido como
WS_HTTP_PROXY_SETTING_MODE_CUSTOM.


O valor padrão é NULL.
WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING
Valor: 42
Uma estrutura WS_HTTP_MESSAGE_MAPPING usada com WsCreateChannel ou WsCreateChannelForListener para WS_HTTP_CHANNEL_BINDING.


Esse valor de propriedade controla como uma solicitação OU resposta HTTP é mapeada em
um objeto de mensagem. Consulte WS_HTTP_MESSAGE_MAPPING para obter mais informações.


O valor padrão dessa propriedade é uma estrutura WS_HTTP_MESSAGE_MAPPING é a seguinte:



  • requestMappingOptions: 0

  • requestHeaderMappings: nenhum

  • responseMappingOptions: 0

  • responseHeaderMappings: nenhum



WS_HTTP_MESSAGE_MAPPING campos requestMappingOptions e responseMappingOptions devem ser 0
a menos que a codificação seja definida como WS_ENCODING_RAW usando a propriedade channel WS_CHANNEL_PROPERTY_ENCODING.
WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT
Valor: 43
Um BOOL usado com WsCreateChannel para WS_HTTP_CHANNEL_BINDING com WS_CHANNEL_TYPE_REQUEST.


Esse valor de propriedade controla se o redirecionamento automático HTTP está habilitado.


Definir esse valor como TRUE habilita o redirecionamento automático HTTP.


O valor padrão é FALSE.
Se a propriedade WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT for especificada,
essa propriedade é ignorada.
WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT
Valor: 44
Uma estrutura de WS_HTTP_REDIRECT_CALLBACK_CONTEXT
usado com WsCreateChannel para WS_HTTP_CHANNEL_BINDING com WS_CHANNEL_TYPE_REQUEST.


Esse valor de propriedade pode ser especificado quando um controle mais granular do redirecionamento HTTP automático é necessário.


Quando essa propriedade for definida, a rotina de retorno de chamada especificada será chamada com a URL do ponto de extremidade original
e a nova URL para a qual a mensagem deve ser encaminhada. O valor retornado de retorno de chamada é usado para indicar se
o redirecionamento deve ser permitido.
WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS
Valor: 45
Um BOOL usado com WsCreateChannel, WsSetChannelProperty,
WsGetChannelProperty ou WsCreateServiceProxy para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST, ou WS_TCP_CHANNEL_BINDING, WS_NAMEDPIPE_CHANNEL_BINDING e WS_UDP_CHANNEL_BINDING no cliente.


Quando definido como TRUE, as funções de Modelo de Canal e Serviço retornam um código de erro quando uma falha é recebida.
Se a falha for reconhecida por esse runtime, o código de erro correspondente será retornado,
caso contrário , WS_E_ENDPOINT_FAULT_RECEIVED será retornado. (Consulte Valores retornados dos Serviços Web do Windows.) Quando definido como FALSE, WsReceiveMessage
e WsRequestReply retornam WS_E_ENDPOINT_FAULT_RECEIVED quando uma falha é recebida.
As outras funções de canal retornam falhas como mensagens regulares e'WS_MESSAGE_PROPERTY_IS_FAULT
pode ser usado para distinguir falhas de outras mensagens.


Quando essa propriedade é definida como TRUE e usada com WsCreateChannel ou WsSetChannelProperty,
ele substitui o seguinte comportamento de WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS: se a falha for reconhecida pelo
runtime, uma falha não seguro não fará com que a verificação de segurança da mensagem de falha falhe mesmo se
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS está definido como FALSE. O status da verificação de segurança
pode ser determinado inspecionando WS_MESSAGE_PROPERTY_PROTECTION_LEVEL.
Isso não se aplica a WS_UDP_CHANNEL_BINDING , pois não dá suporte à segurança.


Quando essa propriedade é definida como FALSE ou usada com WsCreateServiceProxy ou a falha não é reconhecida
pelo runtime, o comportamento descrito em WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS se aplica sem
.


Independentemente desse valor de propriedade, se um código de erro for retornado como resultado do recebimento de uma falha,
WsGetFaultErrorProperty pode ser usado para consultar os detalhes da falha do objeto de erro.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é TRUE. Se usada com WsCreateServiceProxy, essa propriedade deverá ser definida como TRUE.




Definir essa propriedade como TRUE pode fazer com que a verificação de segurança da mensagem seja desabilitada para determinadas falhas.
Falhas não verificadas podem não ser confiáveis.
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS
Valor: 46
Um BOOL usado com WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST ou WS_TCP_CHANNEL_BINDING e WS_NAMEDPIPE_CHANNEL_BINDING no cliente.


Quando definido como TRUE, falhas não seguras recebidas em um canal seguro não fazem com que a verificação de segurança da mensagem falhe. Em vez disso, o
A falha será tratada como se a verificação de segurança da mensagem fosse bem-sucedida e tratada conforme descrito em WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS.
O status da verificação de segurança pode ser determinado inspecionando WS_MESSAGE_PROPERTY_PROTECTION_LEVEL.


Quando definido como FALSE, a verificação de segurança da mensagem de mensagens de falha é tratada como a verificação de qualquer outra mensagem.


WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS pode substituir essa propriedade por falhas reconhecidas por esse runtime.


Essa propriedade só se aplica à verificação de segurança no nível da mensagem e não tem impacto na segurança do transporte.


Essa propriedade pode ser definida em qualquer estado de canal.


O valor padrão é FALSE.


Definir essa propriedade como TRUE faz com que a verificação de segurança da mensagem para falhas seja desabilitada. Falhas não confiáveis podem não ser confiáveis.
WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN
Valor: 47
Um ponteiro WCHAR
usado com WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.



Retorna o Nome principal do servidor do ponto de extremidade remoto usado para a última solicitação com falha. Não há nenhuma garantia de que essa propriedade seja
disponíveis. Estas são as condições necessárias (mas nem sempre suficientes) para que essa propriedade esteja presente:

  • O canal enviou uma solicitação.

  • A solicitação falhou devido a esquemas de autenticação de cabeçalho HTTP incompatíveis. Consulte WS_HTTP_HEADER_AUTH_SECURITY_BINDING.

  • O ponto de extremidade remoto dá suporte ao esquema de autenticação "Nego2".




Essa propriedade só está disponível no Windows 7 e superior.
WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN
Valor: 48
Um ponteiro WCHAR usado com WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING e WS_CHANNEL_TYPE_REQUEST.



Retorna o Nome da Entidade de Segurança do Servidor do servidor proxy HTTP usado para a última solicitação com falha. Não há nenhuma garantia de que essa propriedade seja
disponíveis. Estas são as condições necessárias (mas nem sempre suficientes) para que essa propriedade esteja presente:

  • O canal enviou uma solicitação.

  • A solicitação falhou devido a esquemas de autenticação de cabeçalho HTTP incompatíveis. Consulte WS_HTTP_HEADER_AUTH_SECURITY_BINDING.

  • O servidor proxy HTTP dá suporte ao esquema de autenticação "Nego2".




Essa propriedade só está disponível no Windows 7 e superior.
WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE
Valor: 49
Um ULONG usado com WsCreateChannelForListener ou
WsGetChannelProperty para WS_HTTP_CHANNEL_BINDING
com WS_CHANNEL_TYPE_REPLY. Esse valor é um limite para o tamanho dos cabeçalhos
de uma solicitação HTTP que está sendo recebida pode ser. O limite especifica o tamanho máximo
dos cabeçalhos de solicitação HTTP em bytes.


Essa propriedade limita a quantidade de memória
que o WS_HTTP_CHANNEL_BINDING com WS_CHANNEL_TYPE_REPLY
alocará para receber cabeçalhos de solicitação HTTP. Ao receber, toda a solicitação HTTP
os cabeçalhos são lidos em um buffer antes do processamento.


O valor padrão é 65536.

Requisitos

   
Cliente mínimo com suporte Windows 7 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho webservices.h