Robot (Darth Vader) - Quero dominar o mundo!  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

E ae galera do mal,
Estou querendo fazer um robo para dominar o mundo , mas ele parou no "Ç" \" e \'
se alguém tiver alguma idéia de código e quiser compartilhar
se alguém quiser pegar esse robo (Darth) como base...

O Darth Vader reune várias funcionalidades, claro que pode ser agregado mais métodos
se alguém tiver algum ai, manda ver, vai legal contruir algo em grupo

Aqui reuni vários tutorias na internet, acho que serve como uma boa base
Está pegando todas as acentuções,
Só está parado no Ç, ç , " , ' e o ? está saindo como /

Boa sorte a todos, Obrigado!


Mapeamento de todos os caracteres





Principais funcionalidades




Classe de teste das funcionalidades


"Se não venço pelo talento venço pelo esforço"
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

interesante velho!

Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


luistiagos
GUJ Expert
[Avatar]

Membro desde: 10/07/2006 10:37:23
Mensagens: 3161
Offline

já pensou em criar um sistema de macros? seria ótimo para testes automaticos... basicamente iria criar um gravador de macro que seria simplesmente um keylogger que grava em um arquivo o que foi feito tipo:


ou algo do genero... dai para executar o macro o programa le o arquivo e executa sua classe por exemplo pra fazer as ações contidas no macro... assim pode-se automatizar as coisas inclusive testes...
comecei a fazer algo parecido mas por falta de tempo deixei a coisa parada...




SCJP 1.5
SCJA 1.0
IBM DB2 Associate
[Email] [MSN]
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

Realmente muito interessante,

Estou pensando em integrar robot com selenium,
pois o selenium é muito mais leve,
e ele é próprio para teste web.

Porém onde o selenium não alcançar, Robot (Darth Vader ) estará lá para apoiar.

Mais e ae luistiagos, você consegui colocar para rodar, digitar nomes e etc?
se souber como se coloca o ? ç " e ' manda ae para mim


O que eu estava fazendo travou por causa dessa pendita tecla "?"
se eu consegui digitar ela, poderei avançar muito.


Falou, um abraço!


"Se não venço pelo talento venço pelo esforço"
luistiagos
GUJ Expert
[Avatar]

Membro desde: 10/07/2006 10:37:23
Mensagens: 3161
Offline

cara se vc perceber para estas teclas vc deve apertar 2 teclas ao mesmo tempo... tipo o "?" é Shift + / e entre outras...então tente para estas colocar 2 KeyEvents




SCJP 1.5
SCJA 1.0
IBM DB2 Associate
[Email] [MSN]
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

Eu entedi o que vc quis dizer,
Essa é a lógica, Mas não acontece.

Quando aperto o Shift + / deveria dar ?, mas o que sai é /
O Ç , " e ' eu não faço nem idéia como fazer


Falou, um abraço!

"Se não venço pelo talento venço pelo esforço"
KWill
Virtual Machine Man
[Avatar]

Membro desde: 18/09/2006 10:05:46
Mensagens: 609
Offline

Cl?ber Jos wrote:Eu entedi o que vc quis dizer,
Essa é a lógica, Mas não acontece.

Quando aperto o Shift + / deveria dar ?, mas o que sai é /
O Ç , " e ' eu não faço nem idéia como fazer


Falou, um abraço!

Rapaz, esse seu projeto aí é ambicioso heim?

Ok, quanto a esse negócio de ficar gerando eventos de baixo nível de teclado e mouse no Java, tenho alguma experiência graças ao meu projeto open-source "Satan-AnyWhere".
Antigamente, eu usava o velho SWT no lugar do AWT para controlar remotamente uma máquina, via o método "public boolean post(Event event)" da classe "Display" do SWT.
Com AWT eu também não consigo digitar o caractere '/' na maioria dos teclados que tenho disponível, mas pode ser que com SWT dê certo.

Inté.

"Só estou certo de que não possuo outras certezas" - KWill
"Não penso, mas Googlo, logo existo!" - Geração Copy-Cola
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Java é a linguagem errada para esse tipo de automação. Você está embaixo de uma VM e o Robot não funciona da mesma forma em vários SOs.
O ideal é fazer mesmo em C++. Ali você pode fazer algo que realmente domine o mundo.

Por mais que você se esforce, vai ser muitíssimo difícil sequer chegar perto do que o AutoIt faz.
http://www.autoitscript.com/autoit3/index.shtml

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

Esse meu código digita /

Vou dar uma olhada nesse AutoIt, gostei da propaganda.
Pelo jeito não vou poder dominar o mundo usando Java.

Mesmo assim gostaria de saber como digirar o ? Ç ç ' e "
se alguém tiver alguma idéia...

Obrigado pela colaboração, falou, um abraço!

"Se não venço pelo talento venço pelo esforço"
luistiagos
GUJ Expert
[Avatar]

Membro desde: 10/07/2006 10:37:23
Mensagens: 3161
Offline

Cl?ber Jos wrote:Eu entedi o que vc quis dizer,
Essa é a lógica, Mas não acontece.

Quando aperto o Shift + / deveria dar ?, mas o que sai é /
O Ç , " e ' eu não faço nem idéia como fazer


Falou, um abraço!


Isto o porque ele usa o padrão de teclado americano...
dai esta combinação é o "Ç" no americano... pra facilitar configure seu teclado no formato americano
e veja as combinações certas...




SCJP 1.5
SCJA 1.0
IBM DB2 Associate
[Email] [MSN]
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

reamente essa parece ser uma boa idéia,
vou tentar fazer isso aqui



fallou, um abraço

"Se não venço pelo talento venço pelo esforço"
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Outra coisa... a palavra precionar está errada. O correto é pressionar.

Também faltou uma Thread fazendo sons de um respirador enquanto o programa roda.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
Cl?ber Jos
Debugger
[Avatar]

Membro desde: 26/04/2009 09:58:48
Mensagens: 66
Offline

Mesma coisa,
A interrogação também não entra
Os demais caracteres eu nem quis testar.

E como ele não está conseguindo fazer essas tarefas básicas, não tem motivo para eu cologar o respirador,
caso funcione, vai ser uma boa idéia.

Vou ver se tem como copiar o valor de uma variável para a área de trasferência e depois escrever onde for preciso

Tenho que ver como fazer isso, se alguém souber como...

Falou, um abraço!



"Se não venço pelo talento venço pelo esforço"
wellington.nogueira
GUJ Ranger
[Avatar]

Membro desde: 11/08/2006 11:29:56
Mensagens: 914
Localização: Osasco-SP
Offline

Interessante a idéia do teu sistema de dominação .
Só que fiquei com uma dúvida.
Parece-me que teu DarthVader funciona bem se o computador estiver utilizando teclado no padrão ABNT. E se for uma outra configuração de teclado?
Há padrões bem distintos do padrão US e do padrão ABNT onde as teclas e teclas de atalho seriam diferentes (por exemplo: algumas não necessitariam de shift ou passariam a precisar de control).

57 45 4C 4C 49 4E 47 54 4F 4E
Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!
"Se você acha que programar em Java com Swing é simples? Acredite em mim, não é!"
http://developmentforever.wordpress.com/
Eric Yuzo
GUJ Ranger
[Avatar]

Membro desde: 25/10/2009 20:36:30
Mensagens: 956
Localização: São Vicente - SP
Offline

Olha mais um aqui pra falar que a ideia é interessante.

Então, quanto aos problemas citados, as aspas estão funcionando, a única correção seria remover a aspa simples no final do método "precisaPressionarShift".

Cedilha você consegue com acento agudo + C.

O que cai no problema que o ViniGodoy citou é o ponto de interrogação. No MapaDeCaracteres está definida a constante VK_DIVIDE, só que esta constante representa a barra do NumPad, por isso sempre aparece a barra, mesmo com shift pressionado. Aquela barra ao lado shift é VK_SLASH. Eu testei no Linux (Debian Lenny) e funcionou normalmente com VK_SLASH. Mas no Windows (XP) lança uma IllegalArgumentException "invalid key code". Teria que ver se nas versões mais novas do Windows vai funcionar.

O importante mesmo é ser feliz!

DevSV
[WWW]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team