Fórum Preciso de uma Solução para o Erro: Invalid Pointer #320189
28/04/2006
0
Pessoal bom dia...
[b:54874ff983]Primeiramente se o título do tópico estiver parecendo apelativo, pesso que algum miderador mude, pois, foi o que achei mais conveniente...[/b:54874ff983]
Estou tentando desenvolver um sistema para lan-house usando componentes da paleta Indy idTCPServer e idTCPClient, o sistema está funcionando quase que perfeitamente, porém vez por outra ele me retorna esse erro quando clico no nome do micro conectado ao servidor, ele funciona mais ou menos assim:
Quando um terminal é iniciado ele e se conecta ao servidor, o servidor guarda em uma lista o nome dessa estação e outras informações como hora da conexão, tempo de uso, Ponteiro e outros...
para enviar algum comando do servidor para o cliente eu simplesmente seleciono a estação com um clique na lista de estações conectadas (listbox pra ser exato) funciona perfeitamente, porém algumas vezes ele me retorna esse erro que mecionei no título (Invalid Pointer) que se não me engano é o endereço da memória no qual a thread está armazenada... minha principal dúvida hoje é: Tem como enviar um comando para a estação usando essa instrução de outra forma?
alguém com esperiência nesse tipo de sistema poderia me dizer como eu faço para enviar um comando para o terminal selecionado o IP ou nome desse terminal, pq nesse caso eu já possuo um cadastro de todos os terminais da lan, e seria só selecionar esse terminal e enviar o comando para esse tipo:
grato a todos pela atenção!
[b:54874ff983]Primeiramente se o título do tópico estiver parecendo apelativo, pesso que algum miderador mude, pois, foi o que achei mais conveniente...[/b:54874ff983]
Estou tentando desenvolver um sistema para lan-house usando componentes da paleta Indy idTCPServer e idTCPClient, o sistema está funcionando quase que perfeitamente, porém vez por outra ele me retorna esse erro quando clico no nome do micro conectado ao servidor, ele funciona mais ou menos assim:
Quando um terminal é iniciado ele e se conecta ao servidor, o servidor guarda em uma lista o nome dessa estação e outras informações como hora da conexão, tempo de uso, Ponteiro e outros...
para enviar algum comando do servidor para o cliente eu simplesmente seleciono a estação com um clique na lista de estações conectadas (listbox pra ser exato) funciona perfeitamente, porém algumas vezes ele me retorna esse erro que mecionei no título (Invalid Pointer) que se não me engano é o endereço da memória no qual a thread está armazenada... minha principal dúvida hoje é: Tem como enviar um comando para a estação usando essa instrução de outra forma?
var Msg : String; SelClient : PClient; begin if lbClients.ItemIndex <> -1 then begin try SelClient := PClient(Clients.LockList.Items[lbClients.ItemIndex]); if SelClient.Ligado then TIdPeerThread(SelClient.Thread).Connection.WriteLn(Msg); finally Clients.UnlockList; end;
alguém com esperiência nesse tipo de sistema poderia me dizer como eu faço para enviar um comando para o terminal selecionado o IP ou nome desse terminal, pq nesse caso eu já possuo um cadastro de todos os terminais da lan, e seria só selecionar esse terminal e enviar o comando para esse tipo:
with QyEstacoes do begin idTcpServer.UmaFormaDeEnviar.NomeDaEstacao.WeriteLn(´Comando´); end;
grato a todos pela atenção!
Paullsoftware
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)