COMUNICACAO ENTRE PROGRAMAS
Será que no VB6 um program pode se comunicar com outro?
Por exemplo, 2 programas feitos em VB6 estão executando no mesmo PC.
Um deles está monitorando alguma coisa, percebe que há um problema e precisa avisar o outro programa para que alguma providência seja tomada.
Como se faz isso em VB6?
Obrigado.
Por exemplo, 2 programas feitos em VB6 estão executando no mesmo PC.
Um deles está monitorando alguma coisa, percebe que há um problema e precisa avisar o outro programa para que alguma providência seja tomada.
Como se faz isso em VB6?
Obrigado.
acho que uma forma de fazer isso seria por sockets..
Qual dos dois programas é o seu?
Citação::
Qual dos dois programas é o seu?
Na verdade, tenho o fonte de ambos.
Então porque não fazer o tratamento dos erros tudo em um só programa? Qual o intuito de ter 2?
Citação::
Então porque não fazer o tratamento dos erros tudo em um só programa? Qual o intuito de ter 2?
A explicação é meio complicada. No inÃcio, era apenas um programa. Ele usava um timer, mas não o timer do VB6, que deixa de gerar eventos com uma simples MsgBox.
Era um timer criado com funções de API. Porém, mesmo esse tipo de timer também deixa de funcionar durante consultas pesadas pela rede.
A solução foi separar em 2 programas: prog. A acessa o banco de dados pela rede e o prog. B faz suas verificações em tempo real usando o timer da API.
Dessa forma, o timer de B não é afetado pelas consultas da rede.
O problema agora é fazer B informar A quando existe algo de errado que ele detecta.
Não sei de deu para entender.
Uma solução é gravar as ocorrências de exceção em uma tabela e o outro projeto acessar esta tabela e ler as ocorrências, usando um timer.
Quando o segundo projeto lê o registro de exceção você pode marcá-lo como lido para facilitar o tratamento das próximas.
Quando o segundo projeto lê o registro de exceção você pode marcá-lo como lido para facilitar o tratamento das próximas.
Citação::
Uma solução é gravar as ocorrências de exceção em uma tabela e o outro projeto acessar esta tabela e ler as ocorrências, usando um timer.
Quando o segundo projeto lê o registro de exceção você pode marcá-lo como lido para facilitar o tratamento das próximas.
OK.
O problema é que para o prog. A ler a tabela usando um timer vai esbarrar no fato de que até mesmo um timer de API não funciona quando está sendo feita uma consulta pesada pela rede.
Estou dizendo que os timers não funcionam, mas na verdade, suspeito que a aplicação é que deixa de responder a eventos durante consultas pesadas pela rede.
Se for isso, aplicações que precisam lidar com dados em tempo real ficam muito prejudicadas, ou até mesmo inviáveis, em VB6.
é isso que você precisa.
http://www.vbmania.com.br/pages/index.php?varModulo=Detalhe&varID=3397
http://www.vbmania.com.br/pages/index.php?varModulo=Detalhe&varID=3397
Tópico encerrado , respostas não são mais permitidas