CreateHardwareEventMoniker, fonction
[Cette fonction est disponible via Windows XP avec Service Pack 2 (SP2) et Windows Server 2003. Il peut être modifié ou indisponible dans les versions ultérieures de Windows.]
Crée un moniker représentant 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 [in]
-
Type : REFCLSID
ID de la classe à laquelle le moniker est lié.
-
pszEventHandler [in]
-
Type : LPCTSTR
Nom du gestionnaire d’événements.
-
ppmoniker [out]
-
Type : IMoniker**
Adresse d’une variable pointeur qui reçoit le pointeur d’interface IMoniker .
Valeur retournée
Type : HRESULT
Si cette fonction réussit, elle retourne S_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 composant qui implémente l’interface IHWEventHandler . Initialisez cette interface avec la valeur InitCmdLine de l’entrée du gestionnaire particulier sous la clé Handlers , 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 d’objets en cours d’exécution (ROT) 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 pour le fichier Shsvcs.dll via un appel à LoadLibrary. Vous utilisez ensuite ce handle dans un appel à GetProcAddress pour obtenir un instance de la fonction CreateHardwareEventMoniker.
L’appel à IRunningObjectTable::Register nécessite que vous entrez 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 XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
En-tête |
|
DLL |
|