Muito boa tarde, sou um novo utilizador aqui e estou a precisar seriamente de ajuda ou então de umas “luzes”.
Preciso fazer uma aplicação para comandar uma placa que esta ligada ao meu router de casa por cabo RJ45, poderiam-me dizer como e q faço isso?
A placa tem um software próprio dela em que indico o IP da mesma e consigo comunicar, e eu gostaria de fazer o mesmo.
Espero que me consigam ajudar.
Já tentou fazer uma comunicação simples via Socket? Se a ideia é mandar algo para a placa e/ou obter alguma resposta/resultado, talvez seja só o caso de interpretar o protocolo para comunicação com essa placa…
sim acabei agora de fazer isso com um socket simples so de envio de ficheiros, mas agora falta-me saber o q realmente e processado dentro da placa pois nao obtive nenhum resultado. Eu gostaria de saber que tipo de formato sao os ficheiros que a placa lê para assim começar a criar ficheiros e enviar via socket… Alguma ideia de como o fazer?
Que legal, você precisa consultar a documentação da placa agora. Sem a documentação não dá para fazer nada. Você nem disse que tipo de placa é essa.
Se a placa não tiver absolutamente nenhuma documentação nem você não achar nada na Internet (não se esqueça - se a placa tiver documentação em inglês, você provavelmente vai ter de procurar as coisas em inglês) então você pode pegar essa placa e usar como decoração high-tech (ou então, se você realmente for invocado, talvez possa conseguir puxar o programa interno da placa, disassemblá-lo e descobrir como é o tal formato do arquivo a ser enviado. )
seria vc conseguir pegar algum código já compilado da placa e interpretá-lo, para então ver se tira alguma informação do protocolo que a placa necessita para comunicação
eu tenho a placa ligada via cabo de rede e um programa proprio dela em que indico o ip da placa e a porta e ele faz o resto. Como e que consigo interceptar o codigo compilado?
Estou deduzindo que a placa funciona com TCP/IP…
Nesse caso, você pode tentar “entender” o protocolo aplicando a técnica de sniffer…
Você pode utilizar o programa wireshark para isso.
então operando o programa da placa, você verá o que o programa envia para a placa e tenta fazer o mesmo!
L …[.x…?°… ?Ê…\ùz.ßuW.ï.4…Øùz.?°… ?Ê.?°…?8Y.?°… ?Ê…?ùz.çÄ.wÊ…?°… ?Ê.?°…Í«ºÜ…Øùz.?°…÷D
LYESD
L …p…ÿÿÿÿÿÿÿÿ?Å.wAÆ.wZÃ^D…xøz.Øøz.ðùz.?b wyú?2þÿÿÿþÅ.w1…w…ï.4.Ê…?°… ?Ê…Øùz.Lùz.$ùz.XD
LYESD
L …
.
…@D
LYESD
L …=ã?ð…I._D
LYESD
L …ó?ø…I…I…
ã?ð…D
LYESD
L …ó?ø…I…I…
ã?ð…D
LYESD
L …=ã?ð…I.bD
LYESD
L …ó?ø…I…I…
ã?ð…D
LYESD
L …ó?ø…I…I…
ã?ð…D
LYESD
L …p…ÿÿÿÿÿÿÿÿ?Å.wAÆ.wZÃ^D…xøz.Øøz.ðùz.?b wyú?2þÿÿÿþÅ.w1…w…ï.4.Ê…?°… ?Ê…Øùz.Lùz.$ùz.XD
LYESD
e como e que eu posso ver o q o programa envia para a placa e em que formato o faz? Preciso mesmo disto pois nao quero usar o programa de fabrica num projeto da escola.
[quote=lipxx]na pasta onde instalei o programa tem 2 ficheiros .dll isso ajuda?
[/quote]
Você pode tentar abrir com algum debug tipo ollydbg. Se conhecer assembly…
Hum… só com esse monte de pontinhos não dá para saber nada.
Você pode postar os tais bytes que o sniffer capturou em hexadecimal?
Uma coisa curiosa. - pode ser que a palavra “TESTE” não seja transmitida diretamente para o equipamento, apenas os bits que correspondem aos leds que serão acesos (de fato, eu não vi isso escrito no seu dump). Vou dar um exemplo bobo. Digamos que a palavra TESTE seja mostrada assim:
Ele pode ter considerado que a primeira coluna (a parte esquerda da letra T) acendeu apenas 1 led, então ele é equivalente a 01000000 em binário (0x40 em hexadecimal), a segunda coluna é também 0x40, a terceira coluna é 01111111 em binário (0x7F em hexadecimal), e assim por diante.
Você só vai conseguir fazer isso depois de entender como funciona…
Primeiro pegue o valor do sniffer em hexadecimal e faça um programa bobo… (não sei se vai usar Java, C ou outra coisa) que mande esses bytes para a placa.
Caso consiga reproduzir a palavra teste já é um começo…
Depois precisará tentar fazer mudanças na sequência dos bytes para tentar entender como funciona… Atenção aqui que algo errado pode até mesmo danificar a placa…
Só com o que você mandou não consegui deduzir o que o protocolo faz…