The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

CmdletProvider::ShouldProcess Method (String^, String^, String^)


Updated: April 27, 2016

Applies To: Windows PowerShell

Confirms the operation with the user. This variant of the overloaded method sends a description of the action to be taken, a query asking if the action should be taken, and a caption to the user for confirmation before an action is performed.

Namespace:   System.Management.Automation.Provider
Assembly:  System.Management.Automation (in System.Management.Automation.dll)

bool ShouldProcess(
	String^ verboseDescription,
	String^ verboseWarning,
	String^ caption


Type: System::String^

A description of the action to be performed. This description is displayed to the user for ActionPreference.Continue.

Type: System::String^

A query of whether the action should be performed, usually in the form of a question. This query is displayed to the user for ActionPreference.Inquire.

Type: System::String^

The caption for the confirmation message. This caption may or may not be displayed by the host.

Return Value

Type: System::Boolean

A Boolean value that indicates true when the user wants the provider to perform the operation. If false is returned, the operation should not be performed and the provider should move to the next resource.

Exception Condition

The pipeline is stopped. The pipeline was terminated either before the call was made or while the call was in progress. In general, the provider should allow the caller of the processing record method to catch this exception.

Also, if the pipeline was terminated because of ActionPreference.Stop or ActionPreference.Inquire, the command failure will ultimately be ActionPreferenceStopException.

To call this method, the provider must specify that it supports calls to the ShouldProcess(String^, String^, String^) method when the CmdletProvider attribute is declared.

When the provider calls the ShouldProcess(String^, String^, String^) method, the Windows PowerShell runtime handles any command-line settings or preference variables when it determines what is shown to the user or what should be returned.

Windows PowerShell provides two methods that the Windows PowerShell provider can call to confirm an operation with the user: ShouldProcess and ShouldContinue. The second method, the ShouldContinue method, is used to get a confirmation from the user in cases where the change is significant or when you want to provide yes-to-all and no-to-all options to the user. In addition, in contrast to ShouldProcess calls, a call to ShouldContinue is not affected by command-line settings or preference variables; the query is always displayed to the user.

For more information aboutWindows PowerShell providers, see Windows PowerShell Providers [ps].

Return to top

Community Additions