FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
Récupération d'un événement Windows dans un service
Récupération d'un événement Windows dans un service
Débuté par Georges BONNEVIAL, 30 mai 2013 10:11 - 2 réponses
Connectez-vous…
Georges BONNEVIAL
#1
Posté le 30 mai 2013 - 10:11
Bonjour,
Est-il possible de récupérer un événement Windows tel que "WM_USER+1300"
par exemple, dans un service Windows crée à partir de Windev.
Je viens de faire un test sans succès , sachant que j'ai utilisé
l'instance() de mon service dans la commande PostMessage()
Merci de votre retour
Cordialement,
Georges BONNEVIAL
Signaler
0
0
Christophe GUITTON
#2
Membre enregistré
13 messages
Posté le 28 mars 2024 - 09:45
Bonjour,
Je me permets de relancer ce sujet.
Aujourd'hui, j'utilise le code ci-dessous pour détecter la connexion de nos produits sur le PC dans une application.
Je souhaiterais faire la même chose dans un service.
Et cela ne fonctionne pas.
Jamais je ne passe dans ma fonction liée à l'évènement.
//On surveille l’événement de connexion d'un produit
Evénement(HID_base1.informe, "*.*",WM_DEVICECHANGE)
Merci pour vos commentaires et votre aide.
--
Christophe
Signaler
0
0
=JBO=
#3
Membre enregistré
511 messages
Popularité : +18 (18 votes)
Posté le 29 mars 2024 - 16:28
Bonjour Christophe,
Comme il s'agit d'un service, il est possible que le mécanisme de diffusion de message Windows ne soit pas opérant.
Avez-vous essayé de déclarer explicitement le Handle de la fenêtre qui doit traiter les notifications (message WM_DEVICECHANGE) ?
Pour ça il faut exécuter une API Windows : RegisterDeviceNotificationA ou RegisterDeviceNotificationW.
https://learn.microsoft.com/fr-fr/windows/win32/api/winuser/nf-winuser-registerdevicenotificationa
(le paramètre NotificationFilter est peut être le point le plus technique)
Et ensuite vous "branchez" l'événement en indiquant le nom de la fenêtre.
Si vous n'arrivez pas à faire fonctionner les événements, apparemment il y a une autre fonctionnalité plus "moderne" qui n'a pas besoin de Handle et qui utilise une procédure de rappel (callback) à la place de la gestion d'événement :
API Windows : CM_Register_Notification.
https://learn.microsoft.com/fr-fr/windows/win32/api/cfgmgr32/nf-cfgmgr32-cm_register_notification
Mais à investiguer en dernier ressort.
--
Pour me contacter par courrier électronique, cliquez sur le lien ci-dessous (protection antispam):
http://cerbermail.com/…
Message modifié, 29 mars 2024 - 16:29
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte