System.Management.Automation Namespace
Updated: April 27, 2016
Applies To: Windows PowerShell
The System.Management.Automation namespace is the root namespace for Windows PowerShell. It contains classes, enumerations, and interfaces. For example, cmdlet developers will use the Cmdlet and PSCmdlet base classes to implement custom cmdlet classes, and host application developers will use the PowerShell class to create runspaces and invoke commands.
| Class | Description | |
|---|---|---|
![]() | ActionPreferenceStopException | ActionPreferenceStopException indicates that the command stopped due to the ActionPreference.Stop or Inquire policy. |
![]() | AliasAttribute | Declares an alternative name for a parameter. |
![]() | AliasInfo | Provides information about a mapping between a command name and a real command. |
![]() | AllowEmptyCollectionAttribute | Allows an empty collection as the argument to a mandatory collection parameter. |
![]() | AllowEmptyStringAttribute | Allows an empty string as the argument to a mandatory string parameter. |
![]() | AllowNullAttribute | Allows a NULL as the argument to a mandatory parameter. |
![]() | ApplicationFailedException | Defines the exception that is thrown if a native command fails. |
![]() | ApplicationInfo | Provides information for applications that are not directly executable by Monad. |
![]() | ArgumentCompleterAttribute | This attribute is used to specify an argument completer for a parameter to a cmdlet or function. For example: [Parameter()] [ArgumentCompleter(typeof(NounArgumentCompleter))] public string Noun { get; set; } |
![]() | ArgumentTransformationAttribute | Serves as a base class for attributes that perform argument transformations. |
![]() | ArgumentTransformationMetadataException | Defines the exception thrown for all ArgumentTransformation attributes. |
![]() | AuthorizationManager | Defines the base class for an authorization manager of a Runspace. An authorization manager helps a host control and restrict the execution of commands. For each of the command types listed in the CommandTypes enumeration, the engine requests permission from the AuthorizationManager to run the command. Extending this class requires that you override the ShouldRun method with the logic specific to your needs. The base class gives permission to run every command. The default Microsoft.PowerShell.PSAuthorizationManager provides a customized and much more complete authorization policy. |
![]() | BackgroundDispatcher | A simple implementation of IBackgroundDispatcher. |
![]() | BreakException | Class for breakpoint exceptions. Introduced in Windows PowerShell 4.0. |
![]() | Breakpoint | Holds the information for a given breakpoint. |
![]() | BreakpointUpdatedEventArgs | Define the arguments for a BreakpointUpdated event. This class is introduced in Windows PowerShell 2.0. |
![]() | CallStackFrame | A call stack item returned by the Get-PSCallStack cmdlet. This class is introduced in Windows PowerShell 2.0. |
![]() | ChildItemCmdletProviderIntrinsics | Exposes the child items of provider data stores to the cmdlet base class. |
![]() | ClassOps | Support methods for PowerShell classes. |
![]() | Cmdlet | Serves as a base class for derived cmdlets that do not depend on the Windows PowerShell runtime and that can be called directly from within another cmdlet. |
![]() | CmdletAttribute | Identifies a .NET Framework class as a cmdlet, and defines the verb and noun name pair used to invoke the cmdlet. |
![]() | CmdletBindingAttribute | Identifies a function as an advanced function that acts in a way that is similar to a cmdlet. This attribute is used by script developers when writing functions in place of writing compiled cmdlets. This class is introduced in Windows PowerShell 2.0. |
![]() | CmdletCommonMetadataAttribute | Serves as a base class for attributes that specify cmdlet functionality, such as the Cmdlet and CmdletBinding attribute. This class is introduced in Windows PowerShell 2.0. |
![]() | CmdletInfo | Provides information about a cmdlet, such as its definition (usage pattern), noun and verb name, and other information. |
![]() | CmdletInvocationException | The exception that is thrown when a cmdlet encounters a terminating error. |
![]() | CmdletProviderInvocationException | The exception that is thrown when a provider encounters a terminating error that originated with a provider. |
![]() | CmdletProviderManagementIntrinsics | Provides access to information about the providers of a runspace. |
![]() | CmsMessageRecipient | Represents a message recipient for the Cms cmdlets. |
![]() | CommandBreakpoint | Defines a breakpoint on a command. |
![]() | CommandCompletion | Provides a set of possible completions for a given partial input. Introduced in Windows PowerShell 3.0. |
![]() | CommandInfo | Serves as a base class for information classes that describe cmdlets, functions, scripts, and other types of commands. |
![]() | CommandInvocationIntrinsics | Provides access to methods that cmdlets can use to build and run scripts. |
![]() | CommandLookupEventArgs | Provides data for the events associated with command lookup methods in the CommandInvocationIntrinsics class. Introduced in Windows PowerShell 3.0. |
![]() | CommandMetadata | Provides access to the metadata that describes a command, such as the name, type, and parameters of the command. This class is introduced in Windows PowerShell 2.0. |
![]() | CommandNotFoundException | Exception thrown when a command cannot be found. |
![]() | CommandParameterInfo | Provides information about a parameter for a particular parameter set. |
![]() | CommandParameterSetInfo | Provides information about a parameter set of a cmdlet. |
![]() | CompletionCompleters | Contains methods that enable strings to be completed through tab expansion or Intellisense. Introduced in Windows PowerShell 3.0. |
![]() | CompletionResult | Possible types of CompletionResults. |
![]() | ConfigurationInfo | Provides information about a configuration that is stored in session state. Introduced in Windows PowerShell 4.0. |
![]() | ContainerParentJob | Represents a top-level container job. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | ContentCmdletProviderIntrinsics | Exposes the content of data store items to the cmdlet base class. |
![]() | ContinueException | Flow control ContinueException. |
![]() | ConvertThroughString | Enables a type that only has conversion from string to be converted from all other types through string. |
![]() | CredentialAttribute | Defines the attribute used to generate a PSCredential object. Typically this attribute is used by parameters of type PSCredential so that a string can also be passed as an argument to the parameter. |
![]() | CustomControl | Defines a custom control format. |
![]() | CustomControlBuilder | Provides methods for building the entries in a CustomControl. |
![]() | CustomControlEntry | Represents one entry in the definition of a CustomControl. |
![]() | CustomEntryBuilder | Provides a definition of the custom entry. |
![]() | CustomItemBase | The base class for items in CustomControlEntry objects. |
![]() | CustomItemExpression | Describes a custom item expression control. |
![]() | CustomItemFrame | Defines how the data is displayed, such as shifting the data to the left or right. |
![]() | CustomItemNewline | Adds a blank line to the display of the control. |
![]() | CustomItemText | Specifies text that is added to the data that is displayed by the control, such as a label, brackets to enclose the data, and spaces to indent the data. |
![]() | CustomPSSnapIn | Serves as a base class for snap-ins that are used to register a list of cmdlets and providers. (Be aware that Windows PowerShell 2.0 introduced support for modules, which is the preferred method to add cmdlets and providers.) |
![]() | DataAddedEventArgs | Event arguments passed to DataAdded handlers of a PSDataCollection<'T> buffer. This class is introduced in Windows PowerShell 2.0. |
![]() | DataAddingEventArgs | Provides data for the DataAdding event. Introduced in Windows PowerShell 3.0. |
![]() | Debugger | Base class for all PowerShell debuggers. This class is introduced in Windows PowerShell 2.0. |
![]() | DebuggerCommandResults | Defines a set of results that are produced when the Windows PowerShell debugger attempts to evaluate a debugging command. |
![]() | DebuggerStopEventArgs | Defines the arguments for the DebuggerStop event. This class is introduced in Windows PowerShell 2.0. |
![]() | DebugRecord | Describes a debug message that was sent to the debug stream and information about the command that sent the message. This class is introduced in Windows PowerShell 2.0. |
![]() | DebugSource | Contains debugger script and script file information. This element is introduced in Windows PowerShell 5.0. |
![]() | DefaultParameterDictionary | Contains a versionable dictionary of default parameters. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | DisplayEntry | Represents an entry in a format display unit. This class is introduced in Windows PowerShell 2.0. |
![]() | DriveManagementIntrinsics | Provides access to information for monitoring and managing the Windows PowerShell drives that are used by providers. |
![]() | DriveNotFoundException | The exception that is thrown when a drive that is referenced by an operation could not be found. |
![]() | DscLocalConfigurationManagerAttribute | Indication the configuration is for local configuration manager, also known as meta configuration. This element is introduced in Windows PowerShell 5.0. |
![]() | DscPropertyAttribute | When specified on a property or field of a DSC Resource, the property can or must be specified in a configuration, unless it is marked NotConfigurable, in which case it is returned by the Get() method of the resource. |
![]() | DscResourceAttribute | Indicates the class defines a DSC resource. This element is introduced in Windows PowerShell 5.0. |
![]() | DscResourceInfo | Contains a DSC resource information. |
![]() | DscResourcePropertyInfo | Contains a DSC resource property information. |
![]() | DynamicClassImplementationAssemblyAttribute | Used to mark a dynamic assembly as one that implements a set of classes defined in a PowerShell script. This element is introduced in Windows PowerShell 5.0. |
![]() | EngineIntrinsics | Exposes the Engine APIs for a particular instance of the engine. |
![]() | EntrySelectedBy | Each control (table, list, wide, or custom) may have multiple entries. If there are multiple entries, there must be a default entry with no condition, all other entries must have EntrySelectedBy specified. This is useful when you need a single view for grouping or otherwise just selecting the shape of formatting, but need distinct formatting rules for each instance. For example, when listing files, you may want to group based on the parent path, but select different entries depending on if the item is a file or directory. |
![]() | ErrorCategoryInfo | Contains auxiliary information about an ErrorRecord. |
![]() | ErrorDetails | Provides additional error information for an error record, such as a more detailed replacement error message. |
![]() | ErrorRecord | Describes a terminating or nonterminating error that occurred during the processing of a command. |
![]() | ExitException | Implements the exit keyword. |
![]() | ExtendedTypeDefinition | Represents any additional .NET Framework type definitions for an object. This class is introduced in Windows PowerShell 2.0. |
![]() | ExtendedTypeSystemException | Exception thrown when an extended type system (ETS) runtime error occurs. |
![]() | ExternalScriptInfo | Provides information about Windows PowerShell scripts that are directly executable by Windows PowerShell but are not built into the runspace configuration. |
![]() | FilterInfo | Provides information about a filter that is stored in the session state. |
![]() | FlagsExpression<'T> | Takes as input a collection of strings and builds an expression tree. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | FlowControlException | FlowControlException, base class for flow control exceptions. |
![]() | FormatViewDefinition | Represents the formatting view for a .NET Framework type. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | ForwardedEventArgs | Provides access to a deserialized PSEventArgs object that describes an event that was raised from within a remote runspace and forwarded to the current runspace. This class is introduced in Windows PowerShell 2.0. |
![]() | FunctionInfo | Contains information about a Windows PowerShell function that is available in the session state. |
![]() | GettingValueExceptionEventArgs | Represents the arguments for events that are triggered when the GetValue method of a PSObjectPropertyDescriptor object throws an exception. |
![]() | GetValueException | Exception thrown by the Windows PowerShell runtime if the member does not support a getter, such as a write only property. |
![]() | GetValueInvocationException | The exception thrown by the underlying getter of a referenced member when it recognizes that an error has occurred while getting the value of an extended member (property, method, or parameterized property) of an object. |
![]() | HaltCommandException | The exception thrown when the cmdlet or provider wants to terminate the running command without the error condition being considered an error. |
![]() | HiddenAttribute | Specify that the member is hidden for the purposes of cmdlets like Get-Member and that the member is not displayed by default by Format-* cmdlets. |
![]() | HostInformationMessage | Class that holds informational messages to represent output created by the Write-Host cmdlet. |
![]() | HostUtilities | Implements utility methods that might be used by Hosts. |
![]() | IncompleteParseException | The exception that is thrown when an incomplete parsing error occurs while parsing Windows PowerShell script text. |
![]() | InformationalRecord | Serves as a base class for debug, verbose, and warning record classes. This class is introduced in Windows PowerShell 2.0. |
![]() | InformationRecord | Defines a data structure used to represent informational context destined for the host or user. |
![]() | InvalidJobStateException | The exception that is thrown when the state of the Job object is different from the expected state. This class is introduced in Windows PowerShell 2.0. |
![]() | InvalidPowerShellStateException | Exception that is thrown when the state of the PowerShell object is different from the expected state. For example, this exception is thrown if you invoke the pipeline and then try to add a command to the pipeline. This class is introduced in Windows PowerShell 2.0. |
![]() | InvocationInfo | Provides information about invoked commands, such as the name of the command, the string used to invoke the command, and where the command is in the pipeline. |
![]() | ItemCmdletProviderIntrinsics | Exposes the provider items to the cmdlet base class. This class cannot be inherited. |
![]() | ItemNotFoundException | The exception that is thrown when an item cannot be found for a specified path that contains no wildcard characters. |
![]() | Job | Serves as a base class for objects that represents a background job. A background job runs a command that can contain a command or expression. The job is run asynchronously within its own runspace. This class is introduced in Windows PowerShell 2.0. |
![]() | Job2 | Represents a new base class for a job that provides extended state management functionality. Introduced in Windows PowerShell 3.0. |
![]() | JobDataAddedEventArgs | Provides data for the PSChildJobProxy.JobDataAdded event. Introduced in Windows PowerShell 3.0. |
![]() | JobDefinition | Contains the definition of a job that is defined in a job store. Introduced in Windows PowerShell 3.0. |
![]() | JobFailedException | The exception that is thrown when there is a failure of a job that can map errors and exceptions to specific lines in their input. Introduced in Windows PowerShell 3.0. |
![]() | JobIdentifier | Represents an object that must be created by Windows PowerShell to allow the reuse of an identifier for a job. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | JobInvocationInfo | Defines the parameters that are passed to a job so that the job can be instantiated without having to specify the parameters explicitly. Introduced in Windows PowerShell 3.0. |
![]() | JobManager | Manages the job source adapters for the invocation and management of specific job types. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | JobRepository | Manages and provides information about the list of current active jobs. This class is introduced in Windows PowerShell 2.0. |
![]() | JobSourceAdapter | Represents the base functionality for a job store that contains the jobs of a specific type. Introduced in Windows PowerShell 3.0. |
![]() | JobStateEventArgs | Provides data for the Job.StateChanged event. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | JobStateInfo | Provides information about the state of a job and, if the last state change was due to an error, the reason for the job being in its current state. This class is introduced in Windows PowerShell 2.0. |
![]() | LanguagePrimitives | Provides script language semantics that can be used when consuming objects. |
![]() | LineBreakpoint | Defines a breakpoint on a specific line within a script file. This class is introduced in Windows PowerShell 2.0. |
![]() | ListControl | Represents a control that displays content in a list format. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | ListControlBuilder | Builds a list control. |
![]() | ListControlEntry | Represents a single element in a list control. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | ListControlEntryItem | Represents an item of an entry for a list control entry. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | ListEntryBuilder | Represents a list entry. |
![]() | LoopFlowException | The base class for loop control exceptions. |
![]() | MetadataException | The exception thrown when errors occur while processing metadata. In this case, the term "metadata" refers to the attributes declared in cmdlets and providers. |
![]() | MethodException | The exception thrown when Windows PowerShell detects that an error has occurred while invoking a method. |
![]() | MethodInvocationException | The exception thrown when the referenced method detects that an error has occurred while invoking the method. |
![]() | ModuleIntrinsics | Encapsulates the basic module operations for a PowerShell engine instance. |
![]() | OutputTypeAttribute | Specifies the types that are returned by a cmdlet, script, or function. This class is introduced in Windows PowerShell 2.0. |
![]() | PagingParameters | Represents the parameters for the paging support that are enabled by the CmdletCommonMetadataAttribute.SupportsPaging property. Introduced in Windows PowerShell 3.0. |
![]() | ParameterAttribute | Defines the Parameter attribute that is used to identify a cmdlet or function parameter. For more information about the syntax and parameters used to declare the Parameter attribute for cmdlets, see ParameterAttribute Declaration. |
![]() | ParameterBindingException | The exception that is thrown if the specified value cannot be bound to a parameter of a command. |
![]() | ParameterMetadata | Describes the metadata for cmdlet, script, and function parameters. This class is introduced in Windows PowerShell 2.0. |
![]() | ParameterSetMetadata | Represents the metadata for a parameter that belongs to a parameter set. A parameter can have different metadata for each parameter set that it belongs to. This class is introduced in Windows PowerShell 2.0. |
![]() | ParentContainsErrorRecordException | The exception that is thrown when an ErrorRecord object is contained in a parent exception that implements the IContainsErrorRecord interface. This prevents the ErrorRecord property of the parent exception and the ErrorRecord object from containing mutual references to one another. |
![]() | ParseException | The exception that is thrown when an error occurs while parsing a script. |
![]() | ParsingMetadataException | The exception that is thrown for all parameter-binding exceptions that are related to metadata attributes. |
![]() | PathInfo | Provides information about a Windows PowerShell path. |
![]() | PathInfoStack | Represents a stack of locations. This class cannot be inherited. |
![]() | PathIntrinsics | Exposes the path manipulation and location APIs to the Cmdlet base class. |
![]() | PipelineClosedException | Exception thrown when an attempt is made to write to an asynchronous pipeline source that is already closed. |
![]() | PipelineDepthException | The exception that is thrown when the number of commands participating in a pipeline (object streaming) exceeds the configured maximum. This class is introduced in Windows PowerShell 2.0. |
![]() | PipelineStoppedException | The exception that is thrown when a cmdlet or a Windows PowerShell provider attempts to write to the pipeline or perform a number of other Windows PowerShell operations after the pipeline has been terminated. The pipeline could have been terminated before the call was made or during the call. |
![]() | PowerShell | Provides methods that are used to create a pipeline of commands and invoke those commands either synchronously or asynchronously within a runspace. This class also provides access to the output streams that contain data that is generated when the commands are invoked. This class is primarily intended for host applications that programmatically use Windows PowerShell to perform tasks. This class is introduced in Windows PowerShell 2.0. |
![]() | PowerShellStreams<'TInput, 'TOutput> | Contains properties and methods for storing and retrieving streams that are sent to or received from Windows PowerShell. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | ProgressRecord | Represent the status of an ongoing operation at a point in time. |
![]() | PropertyCmdletProviderIntrinsics | Exposes the Windows PowerShell provider properties to the cmdlet base class. This class cannot be inherited. |
![]() | PropertyNotFoundException | The exception that is thrown when a property cannot be found. Introduced in Windows PowerShell 3.0. |
![]() | ProviderCmdlet | Defines the cmdlet names that a provider can use when declaring the OutputType attribute. The OutputType attribute declares what .NET Framework types are returned by a cmdlet. This class is introduced in Windows PowerShell 2.0. |
![]() | ProviderInfo | Provides information about a loaded Windows PowerShell provider. |
![]() | ProviderIntrinsics | Exposes the providers to the Cmdlet base class. The methods of this class use the providers to perform operations. This class cannot be inherited. |
![]() | ProviderInvocationException | The exception that is thrown when a provider encounters an error. |
![]() | ProviderNameAmbiguousException | The exception thrown when two or more providers have the same name, and a request is made (such as running the Add-PsDrive cmdlet to add a drive) without using the module (or snap-in) qualified name of the provider. |
![]() | ProviderNotFoundException | The exception that is thrown when a provider that is referenced by an operation cannot be found. |
![]() | ProxyCommand | Represents a command that is based on another command and is created dynamically by the Windows PowerShell runtime. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSAdaptedProperty | Represents an extended adapted property of a PSObject object. This class is introduced in Windows PowerShell 2.0. |
![]() | PSAliasProperty | Represents an alias to another extended property of a PSObject object. |
![]() | PSArgumentException | The exception thrown when a parameter contains an argument that is not valid. |
![]() | PSArgumentNullException | The exception thrown when a non-null value is expected and a parameter contains a null value. |
![]() | PSArgumentOutOfRangeException | The exception thrown when a parameter contains an argument that is outside the range expected by the Windows PowerShell runtime. |
![]() | PSChildJobProxy | Represents a job class that is used for the children of PSJobProxy jobs. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | PSClassInfo | Contains PowerShell class information. |
![]() | PSClassMemberInfo | Contains a class field information |
![]() | PSCmdlet | Serves as a base class for derived cmdlets that depend on access to the Windows PowerShell runtime, and therefore execute within a runspace. |
![]() | PSCodeMethod | Serves as an additional code method for a PSObject object. |
![]() | PSCodeProperty | Represents an extended code property of a PSObject object. |
![]() | PSCommand | Defines a pipeline that can be run by a PowerShell object. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSControl | Serves as a base class for control elements that are used to define how content is displayed, such as list and table controls. This class is introduced in Windows PowerShell 2.0. |
![]() | PSControlGroupBy | Allows specifying a header for groups of related objects being formatted, can be specified on any type of PSControl. |
![]() | PSCredential | Represents a set of security credentials, such as a user name and a password. |
![]() | PSCustomObject | Serves as a placeholder object that is used when the PSObject() constructor, which has no parameters, is used. |
![]() | PSDataCollection<'T> | A thread safe buffer that is used by Windows PowerShell host applications to provide input data when invoking a pipeline of commands asynchronously. This class is introduced in Windows PowerShell 2.0. |
![]() | PSDataStreams | Provides access to the data streams of a PowerShell object. These data streams include the debug, error, progress, verbose, and warning data streams, but do not include the output data stream. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSDebugContext | Provides information about why Windows PowerShell entered the debugger. This class is introduced in Windows PowerShell 2.0. |
![]() | PSDefaultValueAttribute | Specifies a default value and/or help comment for a command parameter. This attribute does not have any semantic meaning; it is simply an aid to tools to make it simpler to know the actual default value of a command parameter (which may or may not have any correlation with, for example, the backing store of the parameter's property or field. Introduced in Windows PowerShell 3.0. |
![]() | PSDriveInfo | Provides information about a Windows PowerShell drive that is used to access stored data through a provider. |
![]() | PSDynamicMember | Represents a dynamic member. Introduced in Windows PowerShell 3.0. |
![]() | PSEngineEvent | Defines the constants that represent Windows PowerShell engine events. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEvent | Represents a .NET Framework event on an object that can be surfaced by using the Get-Member cmdlet. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventArgs | Provides data for the eventing functionality provided by Windows PowerShell. This class can be used to subscribe to and receive events. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventArgsCollection | Represents the events received by the Event Manager. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventHandler | Serves as a base class for deriving an event handler for PSEvent objects. These objects represent events that are generated by Windows PowerShell. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventJob | Represents an action that can be taken as a background job when an event arrives. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventManager | Represents the base functionality of a Windows PowerShell event manager that handles subscribing to and receiving events that are raised by Windows PowerShell. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventSubscriber | Represents a subscriber to those events that are generated by Windows PowerShell. This object is returned by the Get-EventSubscriber cmdlet. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventUnsubscribedEventArgs | Provides data for the Unsubscribed event. Introduced in Windows PowerShell 3.0. |
![]() | PSInstaller | Serves as a base class for the EngineInstaller and PSSnapInInstaller classes. |
![]() | PSInvalidCastException | The exception thrown when an error occurs during type conversions. |
![]() | PSInvalidOperationException | The exception thrown when an operation that is not valid is requested. |
![]() | PSInvocationSettings | Specifies the settings that can be used by the PowerShell object when the pipeline is invoked. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSInvocationStateChangedEventArgs | Provides the event arguments passed to PowerShell object state change handlers. This class is introduced in Windows PowerShell 2.0. |
![]() | PSInvocationStateInfo | Provides information about the current state of the invocation process, such as what the current state is and, if a failure occurred, the reason for the last state change. This class is introduced in Windows PowerShell 2.0. |
![]() | PSJobProxy | Represents the class that handles the hosting and executing of workflows in Windows PowerShell. This class cannot be inherited. Introduced in Windows PowerShell 3.0. |
![]() | PSJobStartEventArgs | Arguments for the script job start callback event. |
![]() | PSListModifier | |
![]() | PSListModifier<'T> | |
![]() | PSMemberInfo | Serves as a base class for extended member classes that provide information, such as the PSEvent, PSMethodInfo, and PSPropertyInfo classes. Extended members are those members that are added to a PSObject object. |
![]() | PSMemberInfoCollection<'T> | Serves as a collection of members in a PSObject or PSMemberSet object. |
![]() | PSMemberSet | Serves as a set of members. |
![]() | PSMethod | Defines a method that provides access to a method of the base object or made accessible through an adapter. These methods are referred to as Windows PowerShell methods. |
![]() | PSMethodInfo | Serves as a base class for all extended member classes that act like methods, such as the PSScriptMethod and PSCodeMethod classes. |
![]() | PSModuleInfo | Provides information about a module, such as the name of the module file, the path to the module file, what elements are exported from the module, and more. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSNoteProperty | Represents an extended note property of a PSObject object. |
![]() | PSNotImplementedException | Exception thrown when a requested operation is not implemented. |
![]() | PSNotSupportedException | Exception thrown when a requested operation is not supported. |
![]() | PSObject | Encapsulates a base object of type Object or type PSCustomObject to allow for a consistent view of any object within the Windows PowerShell environment. |
![]() | PSObjectDisposedException | The exception thrown when a target object has already been disposed. |
![]() | PSObjectPropertyDescriptor | Provides information about a property of an adapted object or a PSObject object. |
![]() | PSObjectTypeDescriptionProvider | Retrieves a PSObjectTypeDescriptor object that provides information about the properties of an object of type PSObject. |
![]() | PSObjectTypeDescriptor | Provides information about the properties of a PSObject object. |
![]() | PSParameterizedProperty | Provides access to parameterized properties of a base object. |
![]() | PSParseError | Provides information about a syntax error that was detected while parsing a script into tokens. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSParser | Provides a mechanism to parse a script into a collection of tokens. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSPrimitiveDictionary | Provides a hash table that contains keys that are case-insensitive strings and values that can be serialized and deserialized during Windows PowerShell remoting handshakes. This class is introduced in Windows PowerShell 2.0. |
![]() | PSProperty | Serves as a base property for a Windows PowerShell property or an adapter property of a PSObject object. |
![]() | PSPropertyAdapter | Represents an adapter that is used to expose the properties of objects. This class is introduced in Windows PowerShell 2.0. |
![]() | PSPropertyInfo | Serves as a base class for all extended members of a PSObject object that behave like properties. This can include alias, code, note, and script properties. |
![]() | PSPropertySet | Represents a set of properties. |
![]() | PSReference | Defines an object that is a value or variable reference in the Windows PowerShell scripting language. |
![]() | PSScriptMethod | Represents a method that runs a script when it is called. These methods are referred to as script methods and are used to extend objects. |
![]() | PSScriptProperty | Represents an extended script property of a PSObject object. |
![]() | PSSecurityException | Represents a Windows PowerShell exception that is related to security. |
![]() | PSSerializer | Provides public functionality for serializing a System.Management.Automation.PSObject. Introduced in Windows PowerShell 3.0. |
![]() | PSSessionTypeOption | Contains the base functionality for defining the options of a configuration type. Introduced in Windows PowerShell 3.0. |
![]() | PSSnapIn | Serves as a base class for Windows PowerShell snap-ins that are used to register all the cmdlets and providers in an assembly. (Be aware that Windows PowerShell 2.0 introduced support for modules, which is the preferred method to add cmdlets and providers.) |
![]() | PSSnapInInfo | Provides information about a Windows PowerShell snap-in. Snap-ins are used to add and cmdlets or Windows PowerShell provider to a session. |
![]() | PSSnapInInstaller | Serves as a base class for classes used to create Windows PowerShell snap-ins. This class is included in this SDK for completeness only. The members of this class cannot be used directly, nor should this class be used to derive other classes. |
![]() | PSSnapInSpecification | Represents the properties of a Windows PowerShell snap-in specification. Introduced in Windows PowerShell 3.0. |
![]() | PSToken | Represents a token generated from a Windows PowerShell script. This class is introduced in Windows PowerShell 2.0. |
![]() | PSTraceSource | Represents a TraceSource object that is used by the Windows PowerShell runtime to produce trace output. |
![]() | PSTransaction | Represents an active transaction. Windows PowerShell creates a PSTransaction object when the New-Transaction cmdlet is called the first time. (Windows PowerShell supports only one active transaction.) This object is returned by the Get-Transaction cmdlet. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | PSTransactionContext | Provides a mechanism to reset the current Windows PowerShell transaction. This class is introduced in Windows PowerShell 2.0. |
![]() | PSTransportOption | Contains the base functionality that defines the options for the underlying transport layer. Introduced in Windows PowerShell 3.0. |
![]() | PSTypeConverter | Defines a base class that is used to implement a type converter for a specific target class. |
![]() | PSTypeName | Serves as a container for a type, typically a .NET Framework type. This class is introduced in Windows PowerShell 2.0. |
![]() | PSTypeNameAttribute | Specifies the PSTypeName of a cmdlet or function parameter. Introduced in Windows PowerShell 3.0. |
![]() | PSVariable | Represents a variable used in the Windows PowerShell language. |
![]() | PSVariableIntrinsics | Provides access to variable information for the session. |
![]() | PSVariableProperty | Represents an extended variable property of a PSObject object. This class is introduced in Windows PowerShell 2.0. |
![]() | ReadOnlyPSMemberInfoCollection<'T> | Serves as a read-only collection of members. |
![]() | RedirectedException | Exception that is used in the ErrorRecord object for an object that is added to the error stream. |
![]() | RemoteCommandInfo | Represents a command that was invoked on another runspace, typically on a remote computer. This class is introduced in Windows PowerShell 2.0. |
![]() | RemoteException | The exception that is thrown for an error that comes from a remote instance of Windows PowerShell. |
![]() | Repository<'T> | Contains the objects of active elements, such asJob and RemoteRunspaceInfo objects. This class is introduced in Windows PowerShell 2.0. |
![]() | RunspaceInvoke | Allows the execution of commands from a CLR language. |
![]() | RunspacePoolStateInfo | Provides information about the current state of the runspace pool, such as what the current state is and, if a failure occurred, the reason for the last state change. This class is introduced in Windows PowerShell 2.0. |
![]() | RunspaceRepository | Provides information about the state of the remote runspaces that are available to the local runspace. This class is introduced in Windows PowerShell 2.0. |
![]() | RuntimeDefinedParameter | Represents a dynamic parameter that is constructed at runtime. The Windows PowerShell runtime adds this parameter to the parameter list of a cmdlet or function when some pre-defined condition is met, such as a specific argument is supplied for some other parameter. |
![]() | RuntimeDefinedParameterDictionary | Represents a collection of parameters that can be constructed at run time. |
![]() | RuntimeException | Serves as a base class for Windows PowerShell exceptions that might occur while a command is running. |
![]() | ScriptBlock | Represents a precompiled block of script text that can be used as a single unit. |
![]() | ScriptBlockMemberMethodWrapper | Represents a method wrapper around a script block. Used in code generation. This element is introduced in Windows PowerShell 5.0. |
![]() | ScriptBlockToPowerShellNotSupportedException | The exception that is thrown when the conversion of a ScriptBlock object to a PowerShell object is not allowed. This class is introduced in Windows PowerShell 2.0. |
![]() | ScriptCallDepthException | The exception thrown when the number of session state objects of a specific type and in a specific scope exceeds the configured maximum number allowed. |
![]() | ScriptInfo | Provides information about those scripts that are directly executable by Windows PowerShell. |
![]() | ScriptRequiresException | The exception that is thrown when a script cannot run because the requirements that are specified by the script's #requires statements are not met. |
![]() | SecurityDescriptorCmdletProviderIntrinsics | Provides the Windows PowerShell provider security functionality to the cmdlet base class. This class cannot be inherited. |
![]() | SessionState | Provides access to data that describes the current operating environment of a Windows PowerShell runspace or module. The properties of this class retrieve objects that can then be used to either monitor or modify the session state data. |
![]() | SessionStateException | The exception that is thrown when an error occurs while working with session state elements such as variables, aliases, functions, filters, drives, and providers. |
![]() | SessionStateKeeper | Every Runspace in one process contains SessionStateInternal per module (module SessionState). Every RuntimeType is associated to only one SessionState in the Runspace, which creates it: it's ever global state or a module state. In the former case, module can be imported from the different runspaces in the same process. And so runspaces will share RuntimeType. But in every runspace, Type is associated with just one SessionState. We want type methods to be able access $script: variables and module-specific methods. To achive it, we preserve reference to SessionState that creates type in the private field 'SessionStateFieldName'. Later, we use it to call scriptBlocks captured in ScriptBlockMemberMethodWrapper with the right sessionState. |
![]() | SessionStateOverflowException | The exception that is thrown when the number of session state objects exceeds the maximum number allowed for this type in this scope. |
![]() | SessionStateUnauthorizedAccessException | The exception that is thrown when a change to a session state object cannot be completed because the object is read-only, because the object is a constant, or because the object that is declared as a constant cannot be removed or made a nonconstant. |
![]() | SettingValueExceptionEventArgs | Represents the arguments for events that are triggered by exceptions thrown by the SetValue method of a PSObjectPropertyDescriptor object. |
![]() | SetValueException | The exception thrown by Windows PowerShell when it recognizes that an error has occurred while setting the value of an ETS member (property, method, or parameterized property). |
![]() | SetValueInvocationException | The exception that is thrown by the underlying setter of a referenced member when it recognizes that an error has occurred while setting the value of an ETS member (property, method, or parameterized property). |
![]() | Signature | Represents a digital signature on a signed file. This class cannot be inherited. |
![]() | SteppablePipeline | Represents an object that processes one or more commands in a separate pipeline. This class is introduced in Windows PowerShell 2.0. |
![]() | SupportsWildcardsAttribute | Specifies that a parameter supports wildcards. Introduced in Windows PowerShell 3.0. |
![]() | TableControl | Represents a control that displays content in a table format. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | TableControlBuilder | A helper class for defining table controls |
![]() | TableControlColumn | Represents a column of data in a row of a table control. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | TableControlColumnHeader | Represents a column header in a table control. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | TableControlRow | Represents the content of a row in a table control. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | TableRowDefinitionBuilder | A helper class for defining table controls. |
![]() | TerminateException | Used by the debugger to terminate the execution of the current command. |
![]() | ValidateArgumentsAttribute | Serves as the base class for all validation attributes that validate cmdlet parameter arguments. |
![]() | ValidateCountAttribute | Defines an attribute that uses maximum and minimum limits to validate the number of arguments that a cmdlet parameter accepts. (This attribute can also be used by Windows PowerShell functions.) This class cannot be inherited. |
![]() | ValidateDriveAttribute | Validates that the path has an approved root drive. |
![]() | ValidateEnumeratedArgumentsAttribute | Serves as a base class for validation attributes that validate each element of an argument of a parameter. |
![]() | ValidateLengthAttribute | Defines an attribute that uses minimum and maximum limits to validate the number of characters in a cmdlet parameter argument. (This attribute can also be used by Windows PowerShell functions.) This class cannot be inherited. |
![]() | ValidateNotNullAttribute | Validates that the argument of an optional parameter is not null. This class cannot be inherited. |
![]() | ValidateNotNullOrEmptyAttribute | Validates that the argument of an optional parameter is not null, an empty string, or an empty collection. This class cannot be inherited. |
![]() | ValidatePatternAttribute | Defines an attribute that uses a regular expression to validate the character pattern of a cmdlet parameter argument. (This attribute can also be used by Windows PowerShell functions.) |
![]() | ValidateRangeAttribute | Defines an attribute that uses minimum and maximum values to validate a cmdlet parameter argument. (This attribute can also be used by Windows PowerShell functions.) This class cannot be inherited. |
![]() | ValidateScriptAttribute | Defines an attribute that uses a script to validate a parameter of any Windows PowerShell function. (This attribute cannot be used to validate the argument of a cmdlet parameter.) This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | ValidateSetAttribute | Defines an attribute that uses a set of values to validate a cmdlet parameter argument. |
![]() | ValidateUserDriveAttribute | Validates that the path parameter is a User drive |
![]() | ValidationMetadataException | The exception thrown when an error occurs while validating input for any validation attribute. |
![]() | VariableBreakpoint | Defines a breakpoint on a variable. This class is introduced in Windows PowerShell 2.0. |
![]() | VariablePath | Represents a variable path that can query the scope and the drive of the variable reference. Introduced in Windows PowerShell 3.0. |
![]() | VerboseRecord | Describes a verbose message sent to the verbose stream, plus information about the command that sent the message. This class is introduced in Windows PowerShell 2.0. |
![]() | VerbsCommon | |
![]() | VerbsCommunications | Defines the communication verb names that can be used to name cmdlets. |
![]() | VerbsData | |
![]() | VerbsDiagnostic | |
![]() | VerbsLifecycle | |
![]() | VerbsOther | Defines canonical verb names that do not fit into a specific verb name category such as the common, communications, data, lifecycle, or security verb names. |
![]() | VerbsSecurity | Defines the security verbs that can be used to name cmdlets. |
![]() | WarningRecord | Describes a warning message sent to the warning stream, plus information about the command that sent the message. This class is introduced in Windows PowerShell 2.0. |
![]() | WideControl | Represents a control that displays content in a wide column format. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | WideControlBuilder | Creates a default WideControl. |
![]() | WideControlEntryItem | Represents an entry in a wide column control. This class cannot be inherited. This class is introduced in Windows PowerShell 2.0. |
![]() | WildcardPattern | Represents a wildcard pattern that is used for matching. This class cannot be inherited. |
![]() | WildcardPatternException | The exception that is thrown when a wildcard pattern is not valid. |
![]() | WorkflowInfo | Provides information about a workflow that is stored in session state. Introduced in Windows PowerShell 3.0. |
| Structure | Description | |
|---|---|---|
![]() | SwitchParameter | Defines a type of parameter that is evaluated based on its presence on the command line. Cmdlets and functions can define switch parameters that are evaluated by the Windows PowerShell runtime when the parameters of the command are bound. |
| Interface | Description | |
|---|---|---|
![]() | IArgumentCompleter | A type specified by the ArgumentCompleterAttribute must implement this interface. |
![]() | IBackgroundDispatcher | Exposes functionality that can be used to execute a method on a thread pool thread while correctly managing system state, such as flowing ETW activities from the current thread to the thread pool thread. Introduced in Windows PowerShell 3.0. |
![]() | ICommandRuntime | This interface is used when you are calling the Invoke to explicitly invoke a cmdlet from within another cmdlet. It provides a mechanism for overriding the behavior of the methods called by the cmdlet you are invoking, such as the ShouldProcess and WriteObject methods. |
![]() | ICommandRuntime2 | This interface defines the set of functionality that must be implemented to directly execute an instance of a Cmdlet. ICommandRuntime2 extends the ICommandRuntime interface by adding support for the informational data stream. |
![]() | IContainsErrorRecord | Provides a mechanism for adding an error record to an exception. |
![]() | IDynamicParameters | Provides a mechanism for a cmdlet to retrieve parameters that can be added dynamically by the Windows PowerShell runtime. |
![]() | IJobDebugger | Interface to expose a job debugger. This element is introduced in Windows PowerShell 5.0. |
![]() | IModuleAssemblyCleanup | Used by modules to provide a hooko to the engine for cleanup on removal w.r.t. compiled assembly being removed. |
![]() | IModuleAssemblyInitializer | Provides startup initialization and compiled assembly loading for modules and snap-ins. Introduced in Windows PowerShell 3.0. |
![]() | IResourceSupplier | Provides a mechanism for obtaining a resource string based on a base name and resource identifier. |
| Delegate | Description | |
|---|---|---|
![]() | GetSymmetricEncryptionKey | Represents a method that is used in PSCredential to return the encryption key and initialization vector for a symmetric encryption algorithm. Introduced in Windows PowerShell 3.0. |
![]() | PSEventReceivedEventHandler | Represents the delegate called by events that are raised by the Windows PowerShell Event Manager. This class is introduced in Windows PowerShell 2.0. |
![]() | PSEventUnsubscribedEventHandler | Represents the method that handles the Unsubscribed event of a PSEventSubscriber. Introduced in Windows PowerShell 3.0. |
| Enumeration | Description | |
|---|---|---|
![]() | ActionPreference | Defines the Action Preference options. These options determine what will happen when a particular type of event occurs. For example, setting shell variable ErrorActionPreference to "Stop" will cause the command to stop when an otherwise non-terminating error occurs. |
![]() | Alignment | Specifies possible alignment enumerations for display cells. |
![]() | BreakpointUpdateType | Kinds of breakpoint updates. |
![]() | CommandOrigin | Defines the dispatch origin of a command. |
![]() | CommandTypes | Defines the types of commands that Windows PowerShell can execute. |
![]() | CompletionResultType | Represents the possible types of completion results from an Intellisense selection or a tab expansion. Introduced in Windows PowerShell 3.0. |
![]() | ConfirmImpact | Defines the impact level of the action performed by the cmdlet. For example, cmdlets may have a high, medium, or low risk of losing data. |
![]() | CopyContainers | Determines how the source container of a copy operation will be used. |
![]() | DebuggerResumeAction | Possible actions for the debugger after hitting a breakpoint/step. |
![]() | DebugModes | Specifies the debugger mode for the Windows PowerShell. Introduced in Windows PowerShell 4.0. |
![]() | DisplayEntryValueType | Defines the type of the display entry, such as a script block or property. This class is introduced in Windows PowerShell 2.0. |
![]() | DSCResourceRunAsCredential | To specify RunAs behavior for the class. |
![]() | ErrorCategory | Errors reported by Monad will be in one of these categories. |
![]() | ImplementedAsType | Enumerated values for DSC resource implementation type. |
![]() | JobState | Defines the state of the job, such as has the job started, is it running, or has it been stopped. This class is introduced in Windows PowerShell 2.0. |
![]() | JobThreadOptions | Specifies the various thread options that can be used for a thread-based job. Introduced in Windows PowerShell 3.0. |
![]() | ModuleAccessMode | Defines how a module can be accessed when adding or removing the module, such as a read-only or read-write module. This class is introduced in Windows PowerShell 2.0. |
![]() | ModuleType | Defines the type of module, which is based on the type of root module file. This class is introduced in Windows PowerShell 2.0. |
![]() | PowerShellStreamType | Specifies the stream to which job data is added. Introduced in Windows PowerShell 3.0. |
![]() | ProgressRecordType | Specifies whether an activity of a progress report is in progress or completed. |
![]() | PSCredentialTypes | Defines the types of Windows PowerShell credentials. |
![]() | PSCredentialUIOptions | Defines the options that are available, such as different validation options, when prompting for credentials. |
![]() | PSInvocationState | Defines the states of a PowerShell pipeline. This class is introduced in Windows PowerShell 2.0. |
![]() | PSLanguageMode | Defines what elements of the Windows PowerShell language are available to external commands of a runspace. This enumeration is used when creating a runspace that restricts which language elements are available. For example, if NoLanguage is specified for a runspace, then scripts that need to be evaluated are not allowed within the runspace. This class is introduced in Windows PowerShell 2.0. |
![]() | PSMemberTypes | |
![]() | PSMemberViewTypes | Defines the methods and properties of the PSObject that are accessible. This class is introduced in Windows PowerShell 2.0. |
![]() | PSModuleAutoLoadingPreference | Specifies the preference options for the module auto-loading feature. Introduced in Windows PowerShell 3.0. |
![]() | PSTokenType | Defines the types of tokens that can be generated from Windows PowerShell scripts. This class is introduced in Windows PowerShell 2.0. |
![]() | PSTraceSourceOptions | Defines the types of tracing that are enabled. For example, tracing can be enabled to trace methods, properties, errors, and more. |
![]() | PSTransactionStatus | Defines the status of a Windows PowerShell transaction, such as whether it is currently active or whether the actions of the transaction have been accepted or rejected. This class is introduced in Windows PowerShell 2.0. |
![]() | RemoteStreamOptions | Defines the data streams that are updated with the invocation information for remote calls. This class is introduced in Windows PowerShell 2.0. |
![]() | RemotingBehavior | Controls or overrides the remoting behavior, during invocation, of a command that supports ambient remoting. Introduced in Windows PowerShell 3.0. |
![]() | RemotingCapability | Defines the various types of remoting behavior available to a cmdlet when used in a context that supports ambient or automatic remoting. Introduced in Windows PowerShell 3.0. |
![]() | ResolutionPurpose | Defines the purpose for resolution of a CmsMessageRecipient. |
![]() | ReturnContainers | Defines the type of containers that are returned. |
![]() | RollbackSeverity | Defines the error condition that causes Windows PowerShell to roll back a transaction automatically. This class is introduced in Windows PowerShell 2.0. |
![]() | RunspaceMode | Defines the runspace modes for a nested pipeline. Introduced in Windows PowerShell 3.0. |
![]() | ScopedItemOptions | Defines how session state data can be used. |
![]() | SessionCapabilities | Defines the capabilities provided by a session, such as can it be used for implicit and interactive remoting. This class is introduced in Windows PowerShell 2.0. |
![]() | SessionStateCategory | Defines the type of session state element that was being accessed when an error occurred. |
![]() | SessionStateEntryVisibility | Defines the visibility of a session state entry to request from outside the session state. This class is introduced in Windows PowerShell 2.0. |
![]() | ShouldProcessReason | Defines any special circumstances surrounding the call to the Cmdlet.ShouldProcess, ICommandRuntime.ShouldProcess, or CmdletProvider.ShouldProcess method. For example, one circumstance may be because the WhatIf parameter was specified at the command line. |
![]() | SignatureStatus | Defines the status of a signature for a file. |
![]() | SignatureType | Defines the valid types of signatures. |
![]() | SigningOption | Defines the options that control what data is embedded in the signature blob. |
![]() | SplitOptions | Defines the options available for the –split operator that is used to separate one or more strings into substrings. This class is introduced in Windows PowerShell 2.0. |
![]() | VariableAccessMode | Defines the access modes that can be used to trigger a variable breakpoint. This class is introduced in Windows PowerShell 2.0. |
![]() | WhereOperatorSelectionMode | Controls the matching behaviour of the Where() operator. Introduced in Windows PowerShell 4.0. |
![]() | WildcardOptions | Defines the options that are available to modify how wildcard patterns are matched. |




