USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Problemas com Array de Winsock
Leonardo
SÃO PEDRO DA ALDEIA
RJ - BRASIL
Postada em 16/08/2005 13:38 hs            
Olá a todos. Antes, desculpem pelo texto meio grande, mas é pra ficar bem
claro o meu problema. Fiz um sistema pra um Cyber aqui da minha cidade, pra
controlar o tempo dos clientes. Nos meus testes, funciona tudo muito bem. O
problema é na prática. Aconteciam erros que pra mim não faziam sentido.
Então fiz uma rotina que escrevia em um arquivo de texto informações sobre o
erro, sempre que um ocorria, com alguns dados que pudessem me ajudar a
descobrir o que acontecia de fato. Vi que está sendo como se o array de
winsock estivesse "trocando as bolas". A minha rotina de resposta ao
cliente, é mais ou menos assim:

Private Sub Winsock_DataArrival(Index As Integer, ByVal bytesTotal As Long)
    Dim Texto As String, Sock As Winsock, R As String
    Set Sock = Winsock(Index)
    Sock.GetData Texto, vbString
    ...
    Sock.SendData R
End Sub

"R" é a variável que eu uso pra montar a resposta. "Sock" é só pra eu não
ter que ficar escrevendo Winsock(Index) o tempo todo. Pois então, na hora do
vamos ver, com as 10 máquinas clientes ligadas e conectadas, o servidor
acaba misturando as respostas. Acontece muito de ele enviar a resposta de
duas máquinas diferentes pra uma só. Vou exemplificar: é como se, quando ele
processa a resposta da máquina A, e a máquina B faz uma requisição, ele
junta a resposta da A e da B num "R" só e envia pra uma das duas.
Entenderam? Apesar de a variável ser local, é como se, no momento em que
duas máquinas fazem uma requisição, ele trabalhasse usando o mesmo valor ao
invés de criar uma nova "instância", se é que essa é a palavra. Alguém já
teve um problema parecido? Alguma idéia de como posso resolver?

Obrigado.
     
Allan Novaes
não registrado
ENUNCIADA !
Postada em 11/10/2005 01:17 hs   
eu ja tenhu montando um server desse,, eh o seguinte,,, tem q ver se vc esta utilizando apenas um WINSCK,,, no meu server qdo ele da LOAD no projeto, ele abre de kara 80 Winscks com portas diferentes.. assim n tem como o programa confundir os dados .... qualquer coisa mail me.. flwww
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página