la commande SendKeys

la commande SendKeys - C++ - Programmation

Marsh Posté le 07-04-2003 à 14:29:01    

est ce que quelqu'un sait comment fonctionne la commande  SendKeys en C
 
merci

Reply

Marsh Posté le 07-04-2003 à 14:29:01   

Reply

Marsh Posté le 07-04-2003 à 14:35:20    

SendKeys ?? Jamais entendu parler en C ! Je ne connais que la version VBA, qui est une merde infame à proscrire ! Elle fait partie de quelle API ?


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 07-04-2003 à 14:53:02    

Dans le MSDN j'ai trouvé ca  
 
 
Object
   SendKeys
 
[Visual Basic]
Public Class SendKeys
[C#]
public class SendKeys
[C++]
public __gc class SendKeys
[JScript]
public class SendKeys
 
 
donc je supposais que ca devait exister????

Reply

Marsh Posté le 07-04-2003 à 17:57:01    

euh oui, mais la on parle pas de la commande SendKeys, mais de la classe SendKeys faisant partie du framework .NET, ça n'a rien à voir !


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 07-04-2003 à 19:27:02    

bah en vb
 
SendKeys(^+c)
 
ça envoie ctrl + c copier quoi ..

Reply

Marsh Posté le 08-04-2003 à 09:33:46    

merci bien  
 
je sais que ce fait ca en VB et là et toute la question existe il la meme chose en C pour pouvoir dialoguer avec une application.

Reply

Marsh Posté le 08-04-2003 à 09:53:09    

tertulia a écrit :

merci bien  
 
je sais que ce fait ca en VB et là et toute la question existe il la meme chose en C pour pouvoir dialoguer avec une application.


La commande SendKeys de VB n'a rien à voir avec ce que tu cites !!! Tu cites une classe du framework .NET, donc tu peux parfaitement l'utiliser en C++ managé (Microsoft nous saoule suffisamment avec leur interopérabilité entre langages .NET !)
 
Infos dispos ici :
 
http://msdn.microsoft.com/library/ [...] stopic.asp


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 12:19:18    

merci pour ces infos mais le probleme est que je n'y connait rien de rien en .NEt (comme tu dis) et que je sais pas comment on utilise ces classes...
les includes et comment declarer une fonctions et tout et tout..
 
en plus tu parles de c managé alors là c encore pire.. :??:

Reply

Marsh Posté le 08-04-2003 à 12:23:23    

tertulia a écrit :

merci pour ces infos mais le probleme est que je n'y connait rien de rien en .NEt (comme tu dis) et que je sais pas comment on utilise ces classes...
les includes et comment declarer une fonctions et tout et tout..
 
en plus tu parles de c managé alors là c encore pire.. :??:  


Si tu veux développer sous .NET, tu dois télécharger le SDK chez Microsoft (qui est assez gros, plus de 100 Mo il me semble). Ce SDK est gratuit et comprend un compilateur VB .NET, un compilateur C# et un compilateur C++.
Le C++ managé est du C++ conçu pour utiliser les classes de .NET
 
Honnètement, c'est un vaste sujet, un topic ne suffira pas.


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 12:27:34    

donc en gros pour ma simple application je l'ai dans le ...
 
 :fou:  :fou:  
en plus musicmatch il voudront jamais me donner les message a envoyer pour controloer l'application...
 
ben merci qd meme :cry:

Reply

Marsh Posté le 08-04-2003 à 12:27:34   

Reply

Marsh Posté le 08-04-2003 à 12:31:42    

tertulia a écrit :

donc en gros pour ma simple application je l'ai dans le ...


Ca dépend, tu veux faire quoi ?
Y'a d'autres moyens que SendKeys pour envoyer une touche à un programme (PostMessage par exemple)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 12:33:14    

tertulia a écrit :

donc en gros pour ma simple application je l'ai dans le ...
 
 :fou:  :fou:  
en plus musicmatch il voudront jamais me donner les message a envoyer pour controloer l'application...
 
ben merci qd meme :cry:  


 
A mon avis, il est nettement plus simple et propre d'utiliser une petite bibliotheque qui decode le mp3.


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 08-04-2003 à 13:04:27    

en fait je veux pouvoir controler le logiciel musicmatch (lecture , piste suivante ...) a partir d'une application C. le pb des postmessage c'est qu'il faut savoir le message a poster.. et a mon avis on voudra pas me le dire chez musicmatch.
 

Reply

Marsh Posté le 08-04-2003 à 13:09:24    

tertulia a écrit :

en fait je veux pouvoir controler le logiciel musicmatch (lecture , piste suivante ...) a partir d'une application C. le pb des postmessage c'est qu'il faut savoir le message a poster.. et a mon avis on voudra pas me le dire chez musicmatch.
 
 


 
 :heink: Les touches pour piloter le logiciel musicmatch, tu les connais bien ? Donc à partir de là, tu fais des postmessage d'evennement clavier. Ca doit pas être plus compliqué que ça.


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 08-04-2003 à 13:23:31    

et tu fais ca comment un postmessage d'evenement clavier!!!
 
BOOL PostMessage(
  HWND hWnd,      // handle to destination window
  UINT Msg,       // message
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
);
 
les parametres sont touts des entiers, et je sais pas un CTRL+P ou ^P combien c en entier!!

Reply

Marsh Posté le 08-04-2003 à 13:27:59    

Exemple : pour envoyer un Return à ton application dont le hWnd est myHwnd
 

Code :
  1. PostMessage(myHwnd, WM_KEYDOWN, VK_RETURN, 0)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 13:39:58    

je vais cotinuer a etre chiant je sais mais j'arrive meme pas a trouver le hwnd de musicmatch
 
j'utilise  la fonction
hwndMusicmatch=FindWindow("mmjb",NULL);
 
mais pour ca il faut savoir le nom de la fenetre ouverte et ca je l'ai pas non plus enfin je pense pas..

Reply

Marsh Posté le 08-04-2003 à 13:47:06    

tertulia a écrit :

je vais cotinuer a etre chiant je sais mais j'arrive meme pas a trouver le hwnd de musicmatch


Oui, ça commence  :sarcastic:  
 

tertulia a écrit :


mais pour ca il faut savoir le nom de la fenetre ouverte et ca je l'ai pas non plus enfin je pense pas..


Qu'as tu comme IDE ? Si tu as Visual Studio, tu peux utiliser Spy++ qui te permet de récupérer toutes les infos relatives à une fenêtre, dont le hWnd. Evidemment, il ne faut pas utiliser le hWnd indiqué (qui changera la prochaine fois que tu crééras la fenêtre), mais tu peux facilement trouver le nom de la classe de fenêtre (qui est le 1er paramètre de FindWindow), et l'utiliser pour récupérer le hWnd via FindWindow
 
edit: et si tu n'as pas Spy++, tu peux utiliser Winspector, dispo ici :
 
http://www.gipsysoft.com/articles/winspector/


Message édité par Harkonnen le 08-04-2003 à 13:51:12

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 14:45:19    

c bon j'ai trouve merci
 
une derniere question apres j'arrete promis
 
comment on fait pour simuler un CTRL+P
CTRL -> VK_CONTROL : 11( en hex)
P    -> VK_P       : 50( en hex)
 
mais si on ajoute les deux ca fait 97 (en dec ) ou 61 (en hex) ce qui correspond a un VK_NUMPAD1 (Numeric keypad 1 key )
 
donc voila.
apres j'arrete
 
merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed