classe __Win32Provider

La classe di sistema __Win32Provider registra informazioni sull'implementazione fisica di un provider in WMI. I provider che non impostano la proprietà HostingModel vengono caricati, per impostazione predefinita, per eseguire in un processo di Wmiprvse.exe come NetworkServiceHostOrSelfHost.

La sintassi seguente è semplificata dal codice MOF (Managed Object Format) e include tutte le proprietà ereditate. Le proprietà sono elencate nell'ordine alfabetico, non nell'ordine MOF.

Sintassi

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;
};

Members

La classe __Win32Provider include questi tipi di membri:

Proprietà

La classe __Win32Provider ha queste proprietà.

ClientLoadableCLSID

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

Identificatore di classe usato da WMI per determinare se caricare un provider ad alte prestazioni nel processo client o nel processo WMI. Se sia il provider che il client si trovano nello stesso computer, WMI carica il provider nel client usando ClientLoadableCLSID come identificatore di classe. Quando il provider e il client si trovano in computer diversi, WMI carica il provider in-process in WMI. WMI usa anche ClientLoadableCLSID per supportare le operazioni di aggiornamento.

Per altre informazioni, vedere Registrazione di un provider di High-Performance.

CLSID

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

GUID che rappresenta l'identificatore di classe (CLSID) dell'oggetto COM del provider. Questo oggetto COM deve contenere un'implementazione dell'interfaccia IWbemProviderInit .

Concorrenza

Tipo di dati: sint32

Tipo di accesso: Lettura/scrittura

Non usato.

DefaultMachineName

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

Identifica il computer in cui avviare il provider. Se il provider viene eseguito nel computer locale è NULL.

Enabled

Tipo di dati: booleano

Tipo di accesso: Lettura/scrittura

Se TRUE, questa istanza è abilitata e può essere usata per completare le richieste client.

HostingModel

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

Questa proprietà è costituita da valori delle proprietà HostingGroup e HostingSpecification MSFT_Providers. Il valore di questa proprietà specifica il modo in cui WMI carica il provider e l'account di sicurezza in esecuzione. Per altre informazioni sull'impostazione della proprietà HostingModel , vedere Hosting provider e sicurezza eregistrazione di un provider.

ImpersonationLevel

Tipo di dati: sint32

Tipo di accesso: Lettura/scrittura

Riservato. Il valore predefinito è zero (0).

InizializzazioneReentrancy

Tipo di dati: sint32

Tipo di accesso: Lettura/scrittura

Set di flag che forniscono informazioni sulla serializzazione. Il valore predefinito è zero (0).

0

Tutte le inizializzazione di questo provider devono essere serializzate.

1

Tutte le inizializzazioni di questo provider nello stesso spazio dei nomi devono essere serializzate.

2

Non è necessaria alcuna serializzazione di inizializzazione.

InitializationTimeoutInterval

Tipo di dati: datetime

Tipo di accesso: Lettura/scrittura

Non usato.

InitializeAsAdminFirst

Tipo di dati: booleano

Tipo di accesso: Lettura/scrittura

TBD

Nome

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

Qualificatori: Chiave

Nome provider.

OperationTimeoutInterval

Tipo di dati: datetime

Tipo di accesso: Lettura/scrittura

Non usato.

PerLocaleInitialization

Tipo di dati: booleano

Tipo di accesso: Lettura/scrittura

Se TRUE, il provider viene inizializzato per ogni impostazione locale quando un utente si connette allo stesso spazio dei nomi più di una volta usando impostazioni locali diverse. Il valore predefinito è FALSE.

PerUserInitialization

Tipo di dati: booleano

Tipo di accesso: Lettura/scrittura

Se TRUE, il provider viene inizializzato una volta per ogni utente NT LAN Manager (NTLM) che effettua richieste al provider. Se FALSE (impostazione predefinita), il provider viene inizializzato una sola volta per tutti gli utenti.

Puro

Tipo di dati: booleano

Tipo di accesso: Lettura/scrittura

Se TRUE, il provider accetta di prepararsi a scaricare chiamando IUnknown::Release in tutti i punti di interfaccia in sospeso quando WMI chiama il metodo Release dell'interfaccia primaria. I provider che devono rimanere client di WMI dopo che non funzionano come provider devono impostare Pure su FALSE. L'impostazione predefinita è TRUE. Per altre informazioni, vedere la sezione Osservazioni di questo argomento.

SecurityDescriptor

Tipo di dati: stringa

Tipo di accesso: Lettura/scrittura

Descrittore di sicurezza (SD) in Security Descriptor Definition Language (SDDL) che determina il set di utenti che possono chiamare correttamente IWbemDecoupledRegistrar:Register per il provider disaccoppiato. Per altre informazioni, vedere l'argomento Security Descriptor Definition Language nella sezione Sicurezza di Windows SDK. Questo descrittore di sicurezza viene usato solo per i provider disaccoppiati e non influisce su altri provider. Per altre informazioni, vedere Incorporazione di un provider in un'applicazione.

WMI esegue i controlli di accesso per i provider disaccoppiati che usano le interfacce IWbemProviderInit e IWbemObjectSink . Se il descrittore di sicurezza è NULL, solo le applicazioni o i servizi eseguiti in LocalSystem, NetworkService, Gli account LocalService possono eseguire un provider disaccoppiato.

La stringa seguente mostra un provider disaccoppiato che deve essere eseguito solo dagli amministratori predefiniti." O:BAG:BAD:(A;;0 x1;;; BA)"

Per altre informazioni sull'impostazione della proprietà SecurityDescriptor , vedere Gestione della sicurezza WMI.

SupportsExplicitShutdown

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

SupportsExtendedStatus

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

SupportsQuotas

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

SupportsSendStatus

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

SupportsShutdown

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

SupportsThrottling

Tipo di dati: booleano

Tipo di accesso: lettura/scrittura

Non usato.

UnloadTimeout

Tipo di dati: datetime

Tipo di accesso: lettura/scrittura

Formato di data e ora che specifica per quanto tempo WMI consente al provider di rimanere inattive prima che venga scaricato. In genere, i provider richiedono che WMI attenda non più di cinque minuti.

Per la versione corrente di WMI, il valore di questa proprietà viene ignorato. WMI scarica il provider in base al valore di timeout in una classe interna nello spazio dei nomi \root. È consigliabile che i provider impostino UnloadTimeout. Per altre informazioni, vedere Scaricamento di un provider.

Versione

Tipo di dati: uint32

Tipo di accesso: lettura/scrittura

Versione del provider. Le versioni supportate sono 1 e 2. La versione 2 rafforza i controlli di validità per tutte le registrazioni di proprietà associate, in particolare la proprietà ImpersonationLevel .

Commenti

La classe __Win32Provider deriva da __Provider.

La maggior parte dei provider può accettare i valori predefiniti per la proprietà InitializationReentrancy . Tuttavia, se un provider può supportare l'inizializzazione simultanea per utenti separati, questa proprietà può essere impostata su 1 (uno). Se è necessaria l'inizializzazione serializzata, InitializationReentrancy rimane 0 (zero). In entrambi i casi , PerUserInitialization è impostato su TRUE.

Un provider puro o un provider che imposta la proprietà Pure su TRUE esiste solo per le richieste di servizio da applicazioni e WMI. La maggior parte dei provider sono provider puri. Un provider non di acquisto è l'eccezione. I provider non di acquisto passano al ruolo del client dopo aver completato le richieste di manutenzione.

Un esempio di provider non di acquisto è un provider di push che inizia a eseguire query e effettua richieste di WMI dopo il completamento dell'inizializzazione. Un provider di push non ha responsabilità, ad eccezione dell'aggiornamento del repository CIM con i dati in fase di inizializzazione. Dopo l'aggiornamento del repository, un provider di push può attendere il caricamento o passare al ruolo del client. Il provider di push che attende di essere scaricato è un provider puro. Il provider di push che partecipa alle attività client non è possibile.

WMI deve essere in grado di distinguere provider puri da provider non puri in modo che possa determinare quando è sicuro arrestare. WMI deve attendere il completamento di tutte le operazioni che coinvolgono provider non puri prima che possa essere arrestato in modo sicuro.

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Spazio dei nomi
Tutti gli spazi dei nomi WMI

Vedi anche

__Provider

Classi di sistema WMI

Registrazione di un provider