|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Amine BenhaddiÉtudiant Inscription : juillet 2011 Messages : 5 ![]() |
Bonjour à tous,
Je suis actuellement en stage et je dois développer une application en Access 2007. J'ai besoin d'ajouter une photo à mon formulaire depuis une webcam. J'ai pu faire tout ça en appelant le logiciel avec (stAppName = "C:\Users\user\AppData\Roaming\NCH Software\Program Files\Debut\debut.exe") mais je veux que le logiciel ferme automatiquement après avoir prendre une photo. Y a t-il un moyen pour faire cela? C'est un peut urgent puisque la période de stage touche a sa fin. Merci d'avance et bonne journée ! |
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() |
Bonjour,
Il faut pour fermer un programme, une application ou en d'autres termes, une fenêtre, récupérer le Handle (HWnd) de celle-ci. Ensuite, grâce à un jeu d'API idoine, fermer la fenêtre. Pour récupérer ce Handle, il te faut passer par un Shell() qui te retourne un PID et de ce PID tu peux obtenir le Handle. Bon, si tu n'as pas l'habitude, ça risque de ne pas être très abordable pour ton stage car il va falloir que tu saches l'expliquer. Alors, il est également possible d'essayer d'appeler les fonctions internes du programme lui même et grâce à un SendKeys(), tenter de simuler l'équivalent du "Fermer" ou "Quitter" de ton programme... Exemple : Code :
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Amine BenhaddiÉtudiant Inscription : juillet 2011 Messages : 5 ![]() |
Bonjour et merci beaucoup pour votre réponse.
Vous pouvez m'expliquer en détail ce que fait le code que vous avez écrit? et comment puis-je l'adapter à un logiciel en le fermant une foi la photo est prise? Quand je l'ai essayé sur mon application il a lancé la calculatrice et m'a fermé la fenêtre access. Merci encore une foi, et vraiment désolé pour le dérangement |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() |
Si Access a été fermé, c'est que tu as donné le focus (cliqué sur la fenêtre) de l'application.
Or, le processus, tel qu'il est écrit, doit garder le focus afin que le SendKeys agisse sur la calculatrice et non sur l'application. correspond à Alt+F4 qui est la combinaison de la fermeture d'une fenêtre pour quasiment tous les programmes Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Amine BenhaddiÉtudiant Inscription : juillet 2011 Messages : 5 ![]() |
Ah oui je vois, merci beaucoup.
Mais je peux ajouter une condition a la fermeture? Genre pour un logiciel de prise de photos, il ferme directement après avoir pris une photo? c'est pour éviter que l'utilisateur prend 2 photos alors qu'il ne faut en prendre qu'une pour chaque enregistrement. vous voyez le problème? |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() |
Je ne connais pas ton logiciel... Je ne peux pas t'aider à ce niveau.
Il t'appartient de déterminer dans la config de ton logiciel que seule 1 photo puisse être prise mais ça m'étonnerait que ce soit possible. Avec le SendKeys(), tu peux piloter le jeu de raccourcis idoines pour prendre la photo au même titre que dans l'exemple précédent, une opération arithmétique est effectuée dans la calculatrice. Si effectivement tu arrives à piloter cela - en admettant que les créateurs du soft aient prévus la possiblité de prendre une photo sans utiliser la souris - tu dois pouvoir automatiser le processus. Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Amine BenhaddiÉtudiant Inscription : juillet 2011 Messages : 5 ![]() |
Pour le logiciel c'est un logiciel qui n'a pas comme paramètres de prendre une photo (Debut Video Capture Software).
Je peux trouver un logiciel Open source? pour le modifier? Sinon, Comment peut-on faire pause avec VBA pendant une période déterminée, et est ce qu'il existe des méta-caractères pour ce langage? |
|
|
00
|
|
|
#8 |
![]() ![]() ![]() |
Le VBA est plus puisssant qu'il n'y paraît et ce grâce à l'implémentation possible des API Windows.
Par exemple, pour ton besoin, tu peux envisager d'utiliser la fonction WaitForSingleObject()... Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Amine BenhaddiÉtudiant Inscription : juillet 2011 Messages : 5 ![]() |
Je vois et j'avoue que je suis nul en VBA s'il vous plait vous pouvez me recommander un site ou je trouverai des cours de ce type? Merci beaucoup vous m'avez trop aider
|
|
|
00
|
|
|
#10 |
![]() ![]() ![]() |
Oh, euh, j'en connais bien un, humm, bon aller je te le donne...
Clique ici pour y accéder. Tu verras, il y a plein de conseils, de tutos et de personnes bénévoles fort sympatiques qui sont prêtes à t'aider. Sinon, dans ma signature, il y un ouvrage sur VBA qui est pas mal. Argy
__________________
Ils comptent sur vous... Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment. Web Site ‡ @Mail Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007 Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010 MDB Viewer : Visionneuse Access v4.0 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com