2009-04-02 5 views
1

Fondamentalement, je tente de contrôler une application win32 (appuyez sur un bouton, ajouter des choses à un champ de texte) etc à partir d'une application Java. Quelle est la meilleure méthode pour tenter cela (c'est-à-dire, y a-t-il des toolkits, DDE?) Ou dois-je essayer de faire une sorte de FindWindowEx, puis envoyer un WM_LBUTTONDOWN ou quelque chose?Meilleure méthode pour une application Java pour accéder à un processus Windows, et envoyer des commandes

Vive

Répondre

1

Il semble que ce soit encapsulé à l'intérieur du projet jna des projets de java.net:

https://github.com/twall/jna

Eh bien, il est une possibilité de toute façon.

Dans un exemple, il montre quelques importations qui ressemblent à elles peuvent être utiles pour vous:

import com.sun.jna.examples.win32.GDI32; 
import com.sun.jna.examples.win32.User32; 
import com.sun.jna.examples.win32.GDI32.BITMAPINFO; 
import com.sun.jna.examples.win32.User32.BLENDFUNCTION; 
import com.sun.jna.examples.win32.User32.POINT; 
import com.sun.jna.examples.win32.User32.SIZE; 
import com.sun.jna.examples.win32.W32API.HANDLE; 
import com.sun.jna.examples.win32.W32API.HBITMAP; 
import com.sun.jna.examples.win32.W32API.HDC; 
import com.sun.jna.examples.win32.W32API.HRGN; 
import com.sun.jna.examples.win32.W32API.HWND; 
1

Utilisez Java Robot. La classe est java.awt.robot. Cela fonctionne très bien pour contrôler d'autres applications. Voir ici:

http://java.sun.com/javase/6/docs/api/java/awt/Robot.html

J'ai effectivement utilisé ce pour automatiser les connexions à World of Warcraft quand je jouais beaucoup. Le serveur sur lequel je jouais avait presque toujours une file d'attente de connexion qui prenait environ 30 minutes. J'ai donc demandé au planificateur Windows de lancer mon programme Robot vers 16h45. Il enverrait une combinaison de raccourci à Windows pour lancer WoW. Ensuite, il s'arrêtait un moment puis envoyait des frappes au clavier pour entrer mon mot de passe et me connecter. Au moment où je rentrerais du travail, je serais prêt à jouer sans avoir à attendre dans la file d'attente.

+0

Je me demande si l'installation de détection de bot de fantaisie de WoW peut l'identifier? – basszero

+0

Je ne sais pas, il n'a jamais fait quand je l'ai utilisé, mais cela fait quelques années. Je ne pense pas que l'automatisation de votre connexion serait mauvaise, mais c'est juste mon opinion. – DMKing

Questions connexes