instance of __Win32Provider as $P { Name = "EVIProvider"; Clsid = "{C336AB33-1AF6-11d3-865E-00C04F63049B}"; }; instance of Win32PseudoProvider as $PEVENT { Name = "EVIEventProvider"; }; instance of __InstanceProviderRegistration { Provider = $P; SupportsPut = TRUE; SupportsGet = FALSE; SupportsDelete = FALSE; SupportsEnumeration = FALSE; QuerySupportLevels = NULL; }; class EVIEvent : __ExtrinsicEvent { }; [dynamic,provider("EVIProvider")] class EVIInstance { [key] string Name; // can be null though. EVIEvent Event; }; instance of __EventProviderRegistration { Provider = $PEVENT; EventQueryList = { "SELECT * FROM EVIEvent" }; };