Écriture d’un fournisseur de méthodes
Un fournisseur de méthodes permet à WMI d’accéder aux méthodes d’une classe. Par exemple, une classe qui représente une application peut contenir une méthode qui met fin à l’application.
Le fait de changer l’ordre des paramètres d’entrée et de sortie d’une méthode lors de la mise à jour d’un fournisseur de méthodes existant peut entraîner l’échec des applications qui appellent la méthode. L’ordre des paramètres d’entrée ou de sortie est établi par la valeur du qualificateur ID de chaque paramètre. Le premier paramètre a une valeur d’ID de zéro. Ajoutez de nouveaux paramètres d’entrée à la fin des paramètres existants au lieu de les insérer dans la séquence déjà établie.
La procédure suivante montre comment implémenter un fournisseur de méthodes.
Pour implémenter un fournisseur de méthodes
Concevez et inscrivez votre fournisseur de classes auprès de WMI.
Les fournisseurs de classes s’inscrivent auprès de WMI en créant une instance de __Win32Provider et une classe __MethodProviderRegistration. Pour plus d’informations, consultez Inscription d’un fournisseur de méthodes.
Implémentez l’interface IWbemProviderInit pour votre fournisseur.
Notes
L’utilisation du modèle de multithreading « Both » est vivement recommandé pour les fournisseurs de méthodes.
Implémentez la méthode IWbemServices::ExecMethodAsync pour votre fournisseur.
L’interface IWbemServices est l’interface principale pour un fournisseur de méthodes. Pour plus d’informations, consultez Implémentation de l’interface primaire pour un fournisseur de méthodes.
Si nécessaire, ajoutez du code supplémentaire pour votre fournisseur.
Pendant la conception de votre fournisseur, vous devrez probablement appeler des interfaces WMI. Pour plus d’informations, consultez Appel d’une méthode et Maintenance des niveaux de sécurité dans un fournisseur.
Quand il s’agira de récupérer des informations pour un client, vous aurez peut-être besoin d’accéder aux niveaux de sécurité de ce client. Pour plus d’informations, consultez Emprunt d’identité d’un client.
Remplacez le fournisseur préexistant par votre nouveau code.
Cette étape n’est pas nécessaire si vous n’avez pas de fournisseur préexistant à écraser. Pour plus d’informations, consultez Mise à jour d’un fournisseur.