Comunicazione con l'applicazione
In genere, un provider fornisce dati per conto di un'applicazione. Ad esempio, un server potrebbe creare una DLL di prestazioni per fornire i dati del contatore. La comunicazione tra un'applicazione e il relativo provider differisce per le applicazioni in modalità utente e in modalità kernel. I provider eseguono in modalità utente. A causa di questo, le applicazioni in modalità utente, ad esempio le applicazioni di stampa e visualizzazione, possono usare qualsiasi tecnica per la comunicazione tra processi, ad esempio pipe denominate, mapping di file o RPC. Tuttavia, le applicazioni in modalità kernel devono fornire un'interfaccia IOCTL che restituisce i dati sulle prestazioni al provider.
Avviso
Non usare COM come meccanismo IPC. Il sistema non può garantire lo stato di inizializzazione COM del thread che chiama l'interfaccia. Pertanto, la DLL potrebbe non essere in grado di inizializzare correttamente COM e raccogliere i dati.