CreateHardwareEventMoniker fonction)
[cette fonction est disponible par le biais de Windows XP avec Service Pack 2 (SP2) et Windows Server 2003. Il peut être modifié ou non disponible dans les versions ultérieures de Windows.]
Crée un moniker qui représente un composant matériel et son gestionnaire d’événements associé. La lecture automatique utilise cette fonction pour permettre aux applications d’utiliser des événements de lecture automatique.
Syntaxe
HRESULT CreateHardwareEventMoniker(
_In_ REFCLSID clsid,
_In_ LPCTSTR pszEventHandler,
_Out_ IMoniker **ppmoniker
);
Paramètres
-
CLSID [ dans]
-
Type : REFCLSID
ID de la classe à laquelle le moniker est lié.
-
pszEventHandler [ dans]
-
Type : LPCTSTR
Nom du gestionnaire d’événements.
-
ppmoniker [ à]
-
Type : IMoniker**
Adresse d’une variable pointeur qui reçoit le pointeur d’interface IMoniker .
Valeur de retour
Type : HRESULT
Si cette fonction est correctement exécutée, elle retourne la valeur _ OK. Sinon, elle retourne un code d’erreur HRESULT .
Notes
Utilisez CreateHardwareEventMoniker lors de l’inscription d’applications en cours d’exécution afin que ces applications aient accès aux événements de lecture automatique. Pour utiliser des événements de lecture automatique dans des applications en cours d’exécution, vous devez d’abord créer un nouveau composant qui implémente l’interface IHWEventHandler . Initialisez cette interface avec la valeur InitCmdLine de l’entrée du gestionnaire particulier sous la clé des gestionnaires , car la lecture automatique n’appelle pas la méthode Initialize .
Vous devez appeler CreateHardwareEventMoniker pour obtenir un moniker qui représente votre composant et son gestionnaire d’événements. Ensuite, utilisez la valeur retournée dans le paramètre ppmoniker pour inscrire votre composant dans la table ROT (Running Object Table) comme indiqué dans l’exemple.
Notez que CreateHardwareEventMoniker n’est pas défini dans un fichier d’en-tête. Pour l’utiliser dans votre code, vous devez obtenir un handle vers le fichier Shsvcs.dll par le biais d’un appel à LoadLibrary. Vous utilisez ensuite ce handle dans un appel à GetProcAddress pour obtenir une instance de la fonction CreateHardwareEventMoniker .
L’appel à IRunningObjectTable :: Register exige que vous entriez les informations AppID suivantes dans le registre.
HKEY_CLASSES_ROOT
AppID
MyApp.exe
(Default) = MyApplication
AppID [REG_SZ] = {Your GUID here}
HKEY_CLASSES_ROOT
AppID
{The same GUID here}
(Default) = MyApplication
RunAs = Interactive User
Spécifications
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge |
Windows [Applications de bureau XP uniquement] |
| Serveur minimal pris en charge |
Windows Serveur 2003 [ applications de bureau uniquement] |
| En-tête |
|
| DLL |
|