Artigo: 970549 - Última revisão: quarta-feira, 20 de Maio de 2009 - Revisão: 1.1

CORRECÇÃO: Uma System.Net.WebException ocorre quando executa uma aplicação para enviar pedidos Web HTTPS para um servidor num dispositivo incorporado

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Reduzir tudo

Sintomas

Um dispositivo incorporado está a utilizar o Microsoft .NET Compact Framework 2.0 ou o .NET Compact Framework 3.5. Quando executa uma aplicação para enviar pedidos de HTTPS Web para um servidor no dispositivo, ocorre um System.Net.WebException. Além disso, receberá uma mensagem de erro semelhante à seguinte:
Não é possível ler dados da ligação de transporte. System.Net.Sockets.SocketException: Erro desconhecido (0 x 0).

Causa

Este problema ocorre porque o servidor envia um pacote de encriptação vazia para o dispositivo durante a comunicação segura. O .NET Compact Framework runtime processa esses pacotes vazias como um sinal para terminar a ligação.

Resolução

Uma correcção suportada está agora disponível da Microsoft. Contudo, destina-se a corrigir o problema descrito neste artigo. Aplique-a apenas em sistemas que tenham este problema específico.

Para resolver este problema, contacte o suporte técnico da Microsoft para obter a correcção. Para obter uma lista completa dos números de telefone de suporte técnico da Microsoft e informações sobre os custos de suporte, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Nota Em casos especiais, os custos normalmente inerentes às chamadas de suporte poderão ser anulados, se um técnico de suporte da Microsoft determinar que uma actualização específica resolverá o problema. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem na atualização específica em questão.

Pré-requisitos

Existem não pré-requisitos para instalar esta correcção.

Requisito de reinício

Não é necessário reiniciar o computador depois de aplicar esta correcção.

Informações sobre substituição de correcções

Esta correcção não substitui quaisquer outras correcções.

Informações do ficheiro

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas na hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local e utilizar o fuso horário separador na data e hora item do painel de controlo.
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempo
Netcfv35.wm.armv4i.cabNão aplicável2,689,46208-Fev-200923: 42

Como contornar

Para contornar este problema, utilize um dos seguintes métodos:
  • Não utilize o mecanismo de Secure Socket Layer (SSL) para efectuar o pedido Web.
  • Reconfigure o servidor para evitar a geração de pacotes de encriptação vazia.
  • Crie um Web proxy do lado do dispositivo que chamadas directamente as funções de SSPI (Security Support Provider Interface) e, em seguida, conjunto chama a aplicação gerida para o proxy.
Nota O proxy consome pacotes vazias e re-encrypts para a aplicação gerida. Desta forma, a aplicação não recebe pacotes de encriptação vazia.

Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informação

O System.Net.WebException ocorre por muitos motivos. A correcção descrita neste artigo apenas resolve a situação é causada pelos pacotes de encriptação vazia. Pacotes de encriptação vazia podem ser gerados dependendo da configuração no servidor. Para determinar se o servidor gera pacotes de encriptação vazio, pode executar o detector de pacote SSL vazio contra o servidor Web.

Para obter mais informações sobre o detector de pacote SSL vazia, visite o seguinte Web site da Microsoft Developer Network (MSDN):
http://code.msdn.microsoft.com/emptysslpackets (http://code.msdn.microsoft.com/emptysslpackets)

A informação contida neste artigo aplica-se a:
  • Microsoft .NET Compact Framework 2.0
Palavras-chave: 
kbmt kbhotfixserver kbexpertiseadvanced kbqfe kbsurveynew KB970549 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 970549  (http://support.microsoft.com/kb/970549/en-us/ )