ManagementEnumeratorAttribute Class
The ManagementEnumerator attribute marks a method that returns all the instances of a WMI class.
Note: the WMI .NET libraries are now considered in final state, and no further development, enhancements, or updates will be available for non-security related issues affecting these libraries. The MI APIs should be used for all new development.
Assembly: System.Core (in System.Core.dll)
System::Attribute
System.Management.Instrumentation::ManagementMemberAttribute
System.Management.Instrumentation::ManagementNewInstanceAttribute
System.Management.Instrumentation::ManagementEnumeratorAttribute
| Name | Description | |
|---|---|---|
![]() | ManagementEnumeratorAttribute() | Initializes a new instance of the T:System.Management.ManagementEnumeratorAttribute class. |
| Name | Description | |
|---|---|---|
![]() | Name | Gets or sets the name of the management attribute.(Inherited from ManagementMemberAttribute.) |
![]() | Schema | Gets or sets a value that defines the type of output that the method that is marked with the ManagementEnumerator attribute will output. |
![]() | TypeId |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | This API supports the product infrastructure and is not intended to be used directly from your code. Returns a value that indicates whether this instance is equal to a specified object.(Inherited from Attribute.) |
![]() | GetHashCode() | Returns the hash code for this instance.(Inherited from Attribute.) |
![]() | GetType() | |
![]() | IsDefaultAttribute() | When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.(Inherited from Attribute.) |
![]() | Match(Object^) | When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.(Inherited from Attribute.) |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() ![]() | _Attribute::GetIDsOfNames(Guid%, IntPtr, UInt32, UInt32, IntPtr) | Maps a set of names to a corresponding set of dispatch identifiers.(Inherited from Attribute.) |
![]() ![]() | _Attribute::GetTypeInfo(UInt32, UInt32, IntPtr) | Retrieves the type information for an object, which can be used to get the type information for an interface.(Inherited from Attribute.) |
![]() ![]() | _Attribute::GetTypeInfoCount(UInt32%) | Retrieves the number of type information interfaces that an object provides (either 0 or 1).(Inherited from Attribute.) |
![]() ![]() | _Attribute::Invoke(UInt32, Guid%, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) | Provides access to properties and methods exposed by an object.(Inherited from Attribute.) |
The method must be static and public. It must return a collection of all instances of the WMI class. The collection can be of any type convertible to IEnumerable.
The following example shows how to use the Enumerator attribute to mark a method that is used to enumerate instances of a class. In this case, the Enumerate method uses the Process class to retrieve all of the processes running on the computer.
[C#]
[ManagementEnumerator]
public static IEnumerable Enumerate()
{
Process[] rgProcesses = Process.GetProcesses();
for (int i = 0; i < rgProcesses.Length; i++)
{
yield return new ProcessProvider(rgProcesses[i]);
}
}
Available since 3.5
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.



