J'aimerais déclencher un enregistrement par une application extérieure.
Cette application réalise très bien l'enregistrement lorsqu'on le
déclenche à la main, enfin à coups de souris et clavier, mais j'ai une
version qui ne gère pas bien le déclenchement par minuterie (la
minuterie étant une application qui permet de saisir à quelle heure on
veut enregistrer). La version qui le fait bien plante sans arrêt, alors
on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application,
alors avec WindowFromPoint j'obtiens son hWnd.
Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null
For N = 1 To 10
DoEvents
Next
SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il
s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour
cliquer sur une commande, c'est mal barré.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Unknown
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure. Cette application réalise très bien l'enregistrement lorsqu'on le déclenche à la main, enfin à coups de souris et clavier, mais j'ai une version qui ne gère pas bien le déclenchement par minuterie (la minuterie étant une application qui permet de saisir à quelle heure on veut enregistrer). La version qui le fait bien plante sans arrêt, alors on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application, alors avec WindowFromPoint j'obtiens son hWnd. Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null For N = 1 To 10 DoEvents Next SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour cliquer sur une commande, c'est mal barré.
N'y aurait-il pas une astuce ?
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple
WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure.
Cette application réalise très bien l'enregistrement lorsqu'on le
déclenche à la main, enfin à coups de souris et clavier, mais j'ai une
version qui ne gère pas bien le déclenchement par minuterie (la
minuterie étant une application qui permet de saisir à quelle heure on
veut enregistrer). La version qui le fait bien plante sans arrêt, alors
on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application,
alors avec WindowFromPoint j'obtiens son hWnd.
Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null
For N = 1 To 10
DoEvents
Next
SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il
s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour
cliquer sur une commande, c'est mal barré.
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure. Cette application réalise très bien l'enregistrement lorsqu'on le déclenche à la main, enfin à coups de souris et clavier, mais j'ai une version qui ne gère pas bien le déclenchement par minuterie (la minuterie étant une application qui permet de saisir à quelle heure on veut enregistrer). La version qui le fait bien plante sans arrêt, alors on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application, alors avec WindowFromPoint j'obtiens son hWnd. Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null For N = 1 To 10 DoEvents Next SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour cliquer sur une commande, c'est mal barré.
N'y aurait-il pas une astuce ?
Gloops
Oui, bien sûr ... Si je me rappelle bien il y a Winbatch, aussi, qui sait activer une commande de menu déroulant. Mais ça fait un peu comme se faire dépasser par un vélo dans une voiture de course, non ? Si il faut changer de langage à chaque fois qu'on veut faire autre chose ... J'ai trouvé une piste du côté des API (TrackPopupMenu) mais qui déclenche une commande de menu de l'application depuis laquelle on l'appelle. A creuser ... ______________________________________ Unknown a écrit, le 25/10/2004 10:31 :
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure. Cette application réalise très bien l'enregistrement lorsqu'on le déclenche à la main, enfin à coups de souris et clavier, mais j'ai une version qui ne gère pas bien le déclenchement par minuterie (la minuterie étant une application qui permet de saisir à quelle heure on veut enregistrer). La version qui le fait bien plante sans arrêt, alors on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application, alors avec WindowFromPoint j'obtiens son hWnd. Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null For N = 1 To 10 DoEvents Next SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour cliquer sur une commande, c'est mal barré.
N'y aurait-il pas une astuce ?
Oui, bien sûr ...
Si je me rappelle bien il y a Winbatch, aussi, qui sait activer une
commande de menu déroulant.
Mais ça fait un peu comme se faire dépasser par un vélo dans une voiture
de course, non ? Si il faut changer de langage à chaque fois qu'on veut
faire autre chose ...
J'ai trouvé une piste du côté des API (TrackPopupMenu) mais qui
déclenche une commande de menu de l'application depuis laquelle on
l'appelle. A creuser ...
______________________________________
Unknown a écrit, le 25/10/2004 10:31 :
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple
WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure.
Cette application réalise très bien l'enregistrement lorsqu'on le
déclenche à la main, enfin à coups de souris et clavier, mais j'ai une
version qui ne gère pas bien le déclenchement par minuterie (la
minuterie étant une application qui permet de saisir à quelle heure on
veut enregistrer). La version qui le fait bien plante sans arrêt, alors
on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application,
alors avec WindowFromPoint j'obtiens son hWnd.
Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null
For N = 1 To 10
DoEvents
Next
SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il
s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour
cliquer sur une commande, c'est mal barré.
Oui, bien sûr ... Si je me rappelle bien il y a Winbatch, aussi, qui sait activer une commande de menu déroulant. Mais ça fait un peu comme se faire dépasser par un vélo dans une voiture de course, non ? Si il faut changer de langage à chaque fois qu'on veut faire autre chose ... J'ai trouvé une piste du côté des API (TrackPopupMenu) mais qui déclenche une commande de menu de l'application depuis laquelle on l'appelle. A creuser ... ______________________________________ Unknown a écrit, le 25/10/2004 10:31 :
Ne reinvnete pas la roue. Ce type de programme existe comme par exemple WINTASK qui fonctionne très bien
"Gloops" a écrit :
Bonjour tout le monde,
J'aimerais déclencher un enregistrement par une application extérieure. Cette application réalise très bien l'enregistrement lorsqu'on le déclenche à la main, enfin à coups de souris et clavier, mais j'ai une version qui ne gère pas bien le déclenchement par minuterie (la minuterie étant une application qui permet de saisir à quelle heure on veut enregistrer). La version qui le fait bien plante sans arrêt, alors on oublie.
J'ai repéré la position du bouton qui ouvre le menu de l'application, alors avec WindowFromPoint j'obtiens son hWnd. Ainsi, je peux cliquer dessus avec
SendMessage hwnd, WM_LBUTTONDOWN, 0, Null For N = 1 To 10 DoEvents Next SendMessage hwnd, WM_LBUTTONUP, 0, Null
Et miracle, le menu apparaît.
L'ennui, c'est que la suite de mes instructions est ignorée (qu'il s'agisse de clics ou de SendKeys) tant que le menu est ouvert, donc pour cliquer sur une commande, c'est mal barré.