Pergunta

tentativa de enviar uma mensagem através de um soquete falhou com o erro WinSock 10038. Após cerca de 40 segundos mensagens são recebidas com sucesso a partir do mesmo soquete e, posteriormente, o send () também está sucedendo na mesma tomada. Este comportamento tem sido testemunhado no Windows Server 2003. É este qualquer comportamento conhecido com WinSock e Windows Server 2003?

Foi útil?

Solução

erro Winsock 10038 significa "Foi tentada uma operação em algo que não é um socket".

Little truque para encontrar informações sobre códigos de erro (útil para todos os tipos de códigos de erro do Windows):

  • Abrir um prompt de comando
  • Digite "net helpmsg 10038"

O que a linguagem é o seu aplicativo escrito em? Se é C / C ++, pode ser que você está usando um identificador de soquete inválido?

Outras dicas

Muito obrigado a a_mole para a idéia de verificar para os provedores de winsock em camadas. Nós estamos tendo problemas com alguns dos nosso PC e TimesTen DB. Quando tentamos configuração e ODBC cliente DSN, temos um erro 10038. Ao examinar a saída netsh a partir do PC afetados, descobrimos que eles têm Embassy Trust Suite da Wave Systems instalado. Evidentemente Dell pré-instalado isso em alguns de seus PC. De qualquer forma, sobre a desinstalação deste software, o problema foi resolvido.

Obrigado novamente

Lou

Não é um problema de plataforma, posso garantir isso. Muito provavelmente, qualquer variável que você está usando para acessar o identificador de soquete não é thread-safe e está sendo usado na chamada send () antes da tomada real é criado.

Outra possível causa é a presença de provedores de winsock em camadas. "Show netsh winsock" em um prompt cmd irá mostrar-lhe os provedores instalados e você pode tentar remover qualquer queridos não sejam da Microsoft.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top