Export (0) Print
Expand All
0 out of 1 rated this helpful - Rate this topic

ManagementScope Class

Represents a scope (namespace) for management operations.


Namespace:  System.Management
Assembly:  System.Management (in System.Management.dll)
public class ManagementScope : ICloneable

The ManagementScope type exposes the following members.

Public methodManagementScope()Initializes a new instance of the ManagementScope class, with default values. This is the default constructor.
Public methodManagementScope(ManagementPath)Initializes a new instance of the ManagementScope class representing the specified scope path.
Public methodManagementScope(String)Initializes a new instance of the ManagementScope class representing the specified scope path.
Public methodManagementScope(ManagementPath, ConnectionOptions)Initializes a new instance of the ManagementScope class representing the specified scope path, with the specified options.
Public methodManagementScope(String, ConnectionOptions)Initializes a new instance of the ManagementScope class representing the specified scope path, with the specified options.
Public propertyIsConnectedGets a value indicating whether the ManagementScope is currently bound to a WMI server and namespace.
Public propertyOptionsGets or sets options for making the WMI connection.
Public propertyPathGets or sets the path for the ManagementScope.
Public methodCloneReturns a copy of the object.
Public methodConnectConnects this ManagementScope to the actual WMI scope.
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Explicit interface implemetationPrivate methodICloneable.CloneCreates a new object that is a copy of the current instance.

The following example initializes a new ManagementScope with a specific path and then connects the scope object to a WMI namespace. The example connects to a namespace on a remote computer.

using System;
using System.Management;
public class RemoteConnect 
    public static void Main() 
        /*// Build an options object for the remote connection
        //   if you plan to connect to the remote
        //   computer with a different user name
        //   and password than the one you are currently using

             ConnectionOptions options = 
                 new ConnectionOptions();

             // and then set the options.Username and 
             // options.Password properties to the correct values
             // and also set 
             // options.Authority = "ntlmdomain:DOMAIN";
             // and replace DOMAIN with the remote computer's
             // domain.  You can also use Kerberos instead
             // of ntlmdomain.

        // Make a connection to a remote computer. 
        // Replace the "FullComputerName" section of the
        // string "\\\\FullComputerName\\root\\cimv2" with
        // the full computer name or IP address of the 
        // remote computer.
        ManagementScope scope = 
            new ManagementScope(

        // Use this code if you are connecting with a  
        // different user name and password: 
        // ManagementScope scope =  
        //    new ManagementScope( 
        //        "\\\\FullComputerName\\root\\cimv2", options);
        // scope.Connect(); 

        //Query system for Operating System information
        ObjectQuery query = new ObjectQuery(
            "SELECT * FROM Win32_OperatingSystem");
        ManagementObjectSearcher searcher = 
            new ManagementObjectSearcher(scope,query);

        ManagementObjectCollection queryCollection = searcher.Get();
        foreach ( ManagementObject m in queryCollection)
            // Display the remote computer information
            Console.WriteLine("Computer Name : {0}", 
            Console.WriteLine("Windows Directory : {0}", 
            Console.WriteLine("Operating System: {0}",  
            Console.WriteLine("Version: {0}", m["Version"]);
            Console.WriteLine("Manufacturer : {0}", 

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
© 2014 Microsoft. All rights reserved.