Partager via


__Win32Provider class

La classe système __Win32Provider enregistre des informations sur l’implémentation physique d’un fournisseur dans WMI. Les fournisseurs qui ne définissent pas la propriété HostingModel sont chargés, par défaut, pour s’exécuter dans un processus Wmiprvse.exe en tant que NetworkServiceHostOrSelfHost.

La syntaxe suivante est simplifiée à partir de code au format MOF (Managed Object Format) et inclut toutes les propriétés héritées. Les propriétés sont répertoriées dans l’ordre alphabétique, et non dans l’ordre MOF.

Syntaxe

class __Win32Provider : __Provider
{
  string   ClientLoadableCLSID;
  string   CLSID;
  sint32   Concurrency;
  string   DefaultMachineName;
  boolean  Enabled;
  string   HostingModel;
  sint32   ImpersonationLevel = 0;
  sint32   InitializationReentrancy;
  datetime InitializationTimeoutInterval;
  boolean  InitializeAsAdminFirst;
  string   Name;
  datetime OperationTimeoutInterval;
  boolean  PerLocaleInitialization = FALSE;
  boolean  PerUserInitialization = FALSE;
  boolean  Pure = TRUE;
  string   SecurityDescriptor;
  boolean  SupportsExplicitShutdown;
  boolean  SupportsExtendedStatus;
  boolean  SupportsQuotas;
  boolean  SupportsSendStatus;
  boolean  SupportsShutdown;
  boolean  SupportsThrottling;
  datetime UnloadTimeout;
  uint32   Version;
};

Membres

La classe __Win32Provider possède ces types de membres :

Propriétés

La classe __Win32Provider a ces propriétés.

ClientLoadableCLSID

Type de données : chaîne

Type d'accès : lecture/écriture

Identificateur de classe que WMI utilise pour déterminer s’il faut charger ou non un fournisseur de hautes performances dans le processus client ou le processus WMI. Si le fournisseur et le client résident sur le même ordinateur, WMI charge le fournisseur en cours de traitement sur le client à l’aide de ClientLoadableCLSID comme identificateur de classe. Lorsque le fournisseur et le client se trouvent sur des ordinateurs différents, WMI charge le fournisseur en cours de traitement sur WMI. WMI utilise également ClientLoadableCLSID pour prendre en charge les opérations d’actualisation.

Pour plus d’informations, consultez Inscription d’un fournisseur de High-Performance.

CLSID

Type de données : chaîne

Type d'accès : lecture/écriture

GUID qui représente l’identificateur de classe (CLSID) de l’objet COM du fournisseur. Cet objet COM doit contenir une implémentation de l’interface IWbemProviderInit .

Concurrency

Type de données : sint32

Type d’accès : lecture/écriture

Non utilisé.

DefaultMachineName

Type de données : chaîne

Type d'accès : lecture/écriture

Identifie l’ordinateur sur lequel démarrer le fournisseur. Si le fournisseur s’exécute sur l’ordinateur local, il est NULL.

Activé

Type de données : booléen

Type d'accès : lecture/écriture

Si la valeur est TRUE, cette instance est activée et peut être utilisée pour effectuer des demandes clientes.

HostingModel

Type de données : chaîne

Type d'accès : lecture/écriture

Cette propriété est composée de valeurs provenant des propriétés MSFT_ProvidersHostingGroup et HostingSpecification. La valeur de cette propriété spécifie la façon dont WMI charge le fournisseur et le compte de sécurité sous lequel il s’exécute. Pour plus d’informations sur la définition de la propriété HostingModel , consultez Hébergement et sécurité du fournisseur et Inscription d’un fournisseur.

ImpersonationLevel

Type de données : sint32

Type d'accès : lecture/écriture

Réservé. La valeur par défaut est zéro (0).

InitializationReentrancy

Type de données : sint32

Type d'accès : lecture/écriture

Ensemble d’indicateurs qui fournissent des informations sur la sérialisation. La valeur par défaut est zéro (0).

0

Toute l’initialisation de ce fournisseur doit être sérialisée.

1

Toutes les initialisations de ce fournisseur dans le même espace de noms doivent être sérialisées.

2

Aucune sérialisation d’initialisation n’est nécessaire.

InitializationTimeoutInterval

Type de données : datetime

Type d’accès : lecture/écriture

Non utilisé.

InitializeAsAdminFirst

Type de données : booléen

Type d'accès : lecture/écriture

TBD

Nom

Type de données : chaîne

Type d'accès : lecture/écriture

Qualificateurs : Clé

Nom du fournisseur.

OperationTimeoutInterval

Type de données : datetime

Type d’accès : lecture/écriture

Non utilisé.

PerLocaleInitialization

Type de données : booléen

Type d'accès : lecture/écriture

Si la valeur est TRUE, le fournisseur est initialisé pour chaque paramètre régional lorsqu’un utilisateur se connecte au même espace de noms plusieurs fois à l’aide de paramètres régionaux différents. La valeur par défaut est FALSE.

PerUserInitialization

Type de données : booléen

Type d'accès : lecture/écriture

Si la valeur est TRUE, le fournisseur est initialisé une fois pour chaque utilisateur NTN Manager (NTLM) qui effectue des requêtes au fournisseur. Si la valeur est FALSE (valeur par défaut), le fournisseur est initialisé une seule fois pour tous les utilisateurs.

Pure

Type de données : booléen

Type d'accès : lecture/écriture

Si la valeur est TRUE, le fournisseur accepte de se préparer à décharger en appelant IUnknown::Release sur tous les points d’interface en suspens lorsque WMI appelle la méthode Release de son interface principale. Les fournisseurs qui doivent rester clients de WMI après qu’ils ne fonctionnent pas en tant que fournisseurs doivent définir Pure sur FALSE. Le paramètre par défaut est TRUE. Pour plus de détails, consultez la section Notes de .

SecurityDescriptor

Type de données : chaîne

Type d'accès : lecture/écriture

Descripteur de sécurité (SD) dans le langage SDDL (Security Descriptor Definition Language) qui détermine l’ensemble des utilisateurs qui peuvent appeler avec succès IWbemDecoupledRegistrar:Register pour le fournisseur découplé. Pour plus d’informations, consultez la rubrique Security Descriptor Definition Language dans la section Sécurité du Kit de développement logiciel (SDK) Windows. Ce descripteur de sécurité est utilisé uniquement pour les fournisseurs découplés et n’affecte pas les autres fournisseurs. Pour plus d’informations, consultez Incorporation d’un fournisseur dans une application.

WMI effectue des vérifications d’accès pour les fournisseurs découplés qui utilisent les interfaces IWbemProviderInit et IWbemObjectSink. Si le descripteur de sécurité est NULL, seules les applications ou services qui s’exécutent sous les comptes LocalSystem, NetworkService et LocalService peuvent exécuter un fournisseur découplé.

La chaîne suivante montre un fournisseur découplé à exécuter uniquement par les administrateurs intégrés. "O:BAG:BAD:(A;;0x1;;;BA)"

Pour plus d’informations sur la définition de la propriété SecurityDescriptor , consultez Maintenance de la sécurité WMI.

SupportsExplicitShutdown

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

SupportsExtendedStatus

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

SupportsQuotas

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

SupportsSendStatus

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

SupportsShutdown

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

SupportsThrottling

Type de données : booléen

Type d’accès : lecture/écriture

Non utilisé.

UnloadTimeout

Type de données : datetime

Type d'accès : lecture/écriture

Format de date et d’heure qui spécifie la durée pendant laquelle WMI permet au fournisseur de rester inactif avant son déchargement. En règle générale, les fournisseurs demandent que WMI n’attende pas plus de cinq minutes.

Pour la version actuelle de WMI, la valeur de cette propriété est ignorée. WMI décharge le fournisseur en fonction de la valeur de délai d’attente dans une classe interne de l’espace de noms \root. Il est recommandé aux fournisseurs de définir UnloadTimeout. Pour plus d'informations, voir Décharger un fournisseur.

Version

Type de données : uint32

Type d'accès : lecture/écriture

Version du fournisseur. Les versions prises en charge sont 1 et 2. La version 2 renforce les vérifications de validité pour toutes les inscriptions de propriétés associées, en particulier la propriété ImpersonationLevel .

Notes

La classe __Win32Provider est dérivée de __Provider.

La plupart des fournisseurs peuvent accepter les valeurs par défaut de la propriété InitializationReentrancy . Toutefois, si un fournisseur peut prendre en charge l’initialisation simultanée pour des utilisateurs distincts, cette propriété peut être définie sur 1 (un). Si l’initialisation sérialisée est nécessaire, InitializationReentrancy reste 0 (zéro). Dans les deux cas, PerUserInitialization est défini sur TRUE.

Un fournisseur pur ou un fournisseur qui définit la propriété Pure sur TRUE, existe uniquement pour les demandes de service provenant d’applications et de WMI. La plupart des fournisseurs sont des fournisseurs purs. Un fournisseur non pure est l’exception. Les fournisseurs non-clients passent au rôle de client une fois qu’ils ont terminé les demandes de maintenance.

Un fournisseur non pure est un fournisseur push qui commence à émettre des requêtes et effectue des demandes de WMI une fois l’initialisation terminée. Un fournisseur d’envois (push) n’a pas de responsabilités, sauf à mettre à jour le référentiel CIM avec des données au moment de l’initialisation. Après la mise à jour du dépôt, un fournisseur push peut attendre d’être déchargé ou passer au rôle de client. Le fournisseur push qui attend d’être déchargé est un fournisseur pur. Le fournisseur d’envois (push) qui participe aux activités du client n’est pas pur.

WMI doit être en mesure de distinguer les fournisseurs purs des fournisseurs non purs afin de pouvoir déterminer quand il est sûr de s’arrêter. WMI doit attendre que toutes les opérations impliquant des fournisseurs non purs se terminent avant de pouvoir s’arrêter en toute sécurité.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows Vista
Serveur minimal pris en charge
Windows Server 2008
Espace de noms
Tous les espaces de noms WMI

Voir aussi

__Provider

Classes système WMI

Inscription d’un fournisseur