Edit

Share via


Set-CMTaskSequenceDeploymentType

Configure a task sequence deployment type on an application.

Syntax

ByAppName (Default)

Set-CMTaskSequenceDeploymentType
    -InstallTaskSequenceId <String>
    -ApplicationName <String>
    -DeploymentTypeName <String>
    [-AddDetectionClause <DetectionClause[]>]
    [-DetectionClauseConnector <Hashtable[]>]
    [-EstimatedRuntimeMins <Int32>]
    [-ForceScriptDetection32Bit <Boolean>]
    [-GroupDetectionClauses <String[]>]
    [-InstallationBehaviorType <InstallationBehaviorType>]
    [-LogonRequirementType <LogonRequirementType>]
    [-MaximumRuntimeMins <Int32>]
    [-ProductCode <String>]
    [-RebootBehavior <PostExecutionBehavior>]
    [-RemoveDetectionClause <String[]>]
    [-RequireUserInteraction <Boolean>]
    [-ScriptFile <String>]
    [-ScriptLanguage <ScriptLanguage>]
    [-ScriptText <String>]
    [-SlowNetworkDeploymentMode <ContentHandlingMode>]
    [-UninstallTaskSequenceId <String>]
    [-UserInteractionMode <UserInteractionMode>]
    [-AddRequirement <Rule[]>]
    [-NewName <String>]
    [-PassThru]
    [-RemoveLanguage <String[]>]
    [-RemoveRequirement <Rule[]>]
    [-AddLanguage <String[]>]
    [-Comment <String>]
    [-Force]
    [-DisableWildcardHandling]
    [-ForceWildcardHandling]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByAppValue

Set-CMTaskSequenceDeploymentType
    -InstallTaskSequenceId <String>
    -Application <IResultObject>
    -DeploymentTypeName <String>
    [-AddDetectionClause <DetectionClause[]>]
    [-DetectionClauseConnector <Hashtable[]>]
    [-EstimatedRuntimeMins <Int32>]
    [-ForceScriptDetection32Bit <Boolean>]
    [-GroupDetectionClauses <String[]>]
    [-InstallationBehaviorType <InstallationBehaviorType>]
    [-LogonRequirementType <LogonRequirementType>]
    [-MaximumRuntimeMins <Int32>]
    [-ProductCode <String>]
    [-RebootBehavior <PostExecutionBehavior>]
    [-RemoveDetectionClause <String[]>]
    [-RequireUserInteraction <Boolean>]
    [-ScriptFile <String>]
    [-ScriptLanguage <ScriptLanguage>]
    [-ScriptText <String>]
    [-SlowNetworkDeploymentMode <ContentHandlingMode>]
    [-UninstallTaskSequenceId <String>]
    [-UserInteractionMode <UserInteractionMode>]
    [-AddRequirement <Rule[]>]
    [-NewName <String>]
    [-PassThru]
    [-RemoveLanguage <String[]>]
    [-RemoveRequirement <Rule[]>]
    [-AddLanguage <String[]>]
    [-Comment <String>]
    [-Force]
    [-DisableWildcardHandling]
    [-ForceWildcardHandling]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByAppId

Set-CMTaskSequenceDeploymentType
    -InstallTaskSequenceId <String>
    -ApplicationId <Int32>
    -DeploymentTypeName <String>
    [-AddDetectionClause <DetectionClause[]>]
    [-DetectionClauseConnector <Hashtable[]>]
    [-EstimatedRuntimeMins <Int32>]
    [-ForceScriptDetection32Bit <Boolean>]
    [-GroupDetectionClauses <String[]>]
    [-InstallationBehaviorType <InstallationBehaviorType>]
    [-LogonRequirementType <LogonRequirementType>]
    [-MaximumRuntimeMins <Int32>]
    [-ProductCode <String>]
    [-RebootBehavior <PostExecutionBehavior>]
    [-RemoveDetectionClause <String[]>]
    [-RequireUserInteraction <Boolean>]
    [-ScriptFile <String>]
    [-ScriptLanguage <ScriptLanguage>]
    [-ScriptText <String>]
    [-SlowNetworkDeploymentMode <ContentHandlingMode>]
    [-UninstallTaskSequenceId <String>]
    [-UserInteractionMode <UserInteractionMode>]
    [-AddRequirement <Rule[]>]
    [-NewName <String>]
    [-PassThru]
    [-RemoveLanguage <String[]>]
    [-RemoveRequirement <Rule[]>]
    [-AddLanguage <String[]>]
    [-Comment <String>]
    [-Force]
    [-DisableWildcardHandling]
    [-ForceWildcardHandling]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByDTValue

Set-CMTaskSequenceDeploymentType
    -InstallTaskSequenceId <String>
    -InputObject <IResultObject>
    [-AddDetectionClause <DetectionClause[]>]
    [-DetectionClauseConnector <Hashtable[]>]
    [-EstimatedRuntimeMins <Int32>]
    [-ForceScriptDetection32Bit <Boolean>]
    [-GroupDetectionClauses <String[]>]
    [-InstallationBehaviorType <InstallationBehaviorType>]
    [-LogonRequirementType <LogonRequirementType>]
    [-MaximumRuntimeMins <Int32>]
    [-ProductCode <String>]
    [-RebootBehavior <PostExecutionBehavior>]
    [-RemoveDetectionClause <String[]>]
    [-RequireUserInteraction <Boolean>]
    [-ScriptFile <String>]
    [-ScriptLanguage <ScriptLanguage>]
    [-ScriptText <String>]
    [-SlowNetworkDeploymentMode <ContentHandlingMode>]
    [-UninstallTaskSequenceId <String>]
    [-UserInteractionMode <UserInteractionMode>]
    [-AddRequirement <Rule[]>]
    [-NewName <String>]
    [-PassThru]
    [-RemoveLanguage <String[]>]
    [-RemoveRequirement <Rule[]>]
    [-AddLanguage <String[]>]
    [-Comment <String>]
    [-Force]
    [-DisableWildcardHandling]
    [-ForceWildcardHandling]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Applies to version 2006 and later. Use this cmdlet to configure a task sequence deployment type on an application. For more information, see Task sequence deployment type.

This cmdlet has similar syntax as the MSI deployment type cmdlet Set-CMMsiDeploymentType. The primary differences are the following parameters:

  • -InstallTaskSequenceId <string> (required): the ID of the task sequence to install the app

  • -UninstallTaskSequenceId <string> (optional): the ID of the task sequence to uninstall the app

These two parameters relate to the deployment type task sequence options. They replace the -InstallCommand and -UninstallCommand parameters on the MSI cmdlet.

Examples

Example 1: Modify a task sequence deployment type

This command changes the name of the deployment type from Complex install to Advanced install. It adds English (United States) (en-US) and Chinese (Simplified) (zh-CN) as supported languages. It specifies that the installation will take approximately 14 minutes to complete, and will only run when no users are signed into Windows.

Set-CMMSiDeploymentType -ApplicationName "CBI" -DeploymentTypeName "Complex install" -NewName "Advanced install" -AddLanguage "en-US","zh-CN" -Comment "New Deployment Type-updated" -EstimatedRuntimeMins 14 -LogonRequirementType OnlyWhenNoUserLoggedOn

For other examples with requirement rules and detection methods, see Set-CMScriptDeploymentType and Add-CMMsiDeploymentType.

Parameters

-AddDetectionClause

Specify an array of detection method clauses for this deployment type. To create a detection clause, use one of the following cmdlets:

Save the output of these cmdlets into a variable. Then specify those variables as an array for this parameter. For example, -AddDetectionClause $clauseFile1,$clauseFile2,$clauseFile3.

You can also use Get-CMDeploymentTypeDetectionClause to get an existing detection clause from another application.

Parameter properties

Type:

DetectionClause[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:AddDetectionClauses

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-AddLanguage

Specify an array of language tags that the deployment type supports. For example, to add Russian (Russia), specify the tag ru-RU.

For more information and a list of language tags, see Windows Language Code Identifier (LCID) Reference.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:AddLanguages, Languages, Language

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-AddRequirement

Specify an array of requirement objects for the deployment type. To create a requirement rule object, use one of the following cmdlets:

Starting in version 2111, you can use the Get-CMDeploymentTypeRequirement cmdlet to copy rules from another deployment type.

Parameter properties

Type:

Rule[]

Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Application

Specify an application object for this deployment type. To get this object, use the Get-CMApplication cmdlet.

Parameter properties

Type:IResultObject
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

ByAppValue
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ApplicationId

Specify the ID of the application for this deployment type.

Parameter properties

Type:Int32
Default value:None
Supports wildcards:False
DontShow:False
Aliases:CI_ID, CIId

Parameter sets

ByAppId
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ApplicationName

Specify the name of the application for this deployment type.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

ByAppName
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Comment

Specify an optional description for the deployment type.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:AdministratorComment

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:cf

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DeploymentTypeName

Specify the name of the deployment type to configure.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

ByAppName
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False
ByAppValue
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False
ByAppId
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DetectionClauseConnector

When you use the GroupDetectionClauses parameter to group detection clauses, use this parameter to specify the connector.

The following example defines the OR connector: @{"LogicalName"=$clauseFile3.Setting.LogicalName;"Connector"="OR"}

Parameter properties

Type:

Hashtable[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:DetectionClauseConnectors

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DisableWildcardHandling

This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-EstimatedRuntimeMins

Specify the estimated installation time, in minutes, of this deployment type for the application. Software Center displays this estimate to the user before the application installs.

Parameter properties

Type:Int32
Default value:None
Supports wildcards:False
DontShow:False
Aliases:EstimatedInstallationTimeMinutes, EstimatedInstallationTimeMins, EstimatedRunTimeMinutes

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Force

Forces the command to run without asking for user confirmation.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:ForceForUnknownPublisher

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ForceScriptDetection32Bit

If you use a custom script to detect the presence of this deployment type, set this parameter to $true to run the script as a 32-bit process on 64-bit clients.

Parameter properties

Type:Boolean
Default value:None
Supports wildcards:False
DontShow:False
Aliases:Force32BitDetectionScript

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ForceWildcardHandling

This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-GroupDetectionClauses

When you configure rules to detect the presence of this deployment type, use this parameter to group clauses. To create a detection clause, use one of the following cmdlets:

Save the output of these cmdlets into a variable. Then use the following format to group clauses: $clause2.Setting.LogicalName, $clause3.Setting.LogicalName.

Tip

In the Configuration Manager console, when you select the Group action, the clauses show parentheses before and after the grouped clauses.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:GroupDetectionClausesByLogicalName

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-InputObject

Specify a deployment type object to configure. To get this object, use the Get-CMDeploymentType cmdlet.

Parameter properties

Type:IResultObject
Default value:None
Supports wildcards:False
DontShow:False
Aliases:DeploymentType

Parameter sets

ByDTValue
Position:Named
Mandatory:True
Value from pipeline:True
Value from pipeline by property name:False
Value from remaining arguments:False

-InstallationBehaviorType

Specify the installation behavior for this deployment type:

  • InstallForUser: The client only installs the application for the user to whom you deploy the application.
  • InstallForSystem: The client installs the application only once. It's available to all users.
  • InstallForSystemIfResourceIsDeviceOtherwiseInstallForUser: If you deploy the application to a device, the client installs it for all users. If you deploy the application to a user, the client only installs it for that user.

Parameter properties

Type:InstallationBehaviorType
Default value:None
Accepted values:InstallForUser, InstallForSystem, InstallForSystemIfResourceIsDeviceOtherwiseInstallForUser
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-InstallTaskSequenceId

The ID of the task sequence to install the app.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-LogonRequirementType

Specify the requirement for a signed-in user:

  • OnlyWhenNoUserLoggedOn: Only when no user is signed into Windows.

  • OnlyWhenUserLoggedOn: Only when a user is signed in. This option is the default.

  • WhetherOrNotUserLoggedOn: Whether or not a user is signed in.

    Note

    The value WhereOrNotUserLoggedOn is deprecated. It's replaced by WhetherOrNotUserLoggedOn.

If you set InstallationBehaviorType to InstallForUser, then you can't set this parameter.

Parameter properties

Type:LogonRequirementType
Default value:None
Accepted values:OnlyWhenUserLoggedOn, WhereOrNotUserLoggedOn, WhetherOrNotUserLoggedOn, OnlyWhenNoUserLoggedOn
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-MaximumRuntimeMins

Specify the maximum allowed run time of the deployment program for this application. Set an integer value in minutes.

Parameter properties

Type:Int32
Default value:None
Supports wildcards:False
DontShow:False
Aliases:MaximumAllowedRunTimeMinutes, MaximumAllowedRunTimeMins, MaximumRunTimeMinutes

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-NewName

Specify a new name to rename this deployment type.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:NewDeploymentTypeName

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-PassThru

Add this parameter to return an object that represents the item with which you're working. By default, this cmdlet may not generate any output.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ProductCode

If the application uses Windows Installer technology, specify an MSI product code to set as the detection method. When you use this parameter, it overwrites any existing detection methods.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-RebootBehavior

Specify the post-installation behavior:

  • BasedOnExitCode: Determine behavior based on return codes.

  • NoAction: No specific action.

  • ProgramReboot: The software install program might force a device restart.

  • ForceReboot: Configuration Manager client will force a mandatory device restart.

For more information on these behaviors, see Create applications in Configuration Manager.

Parameter properties

Type:PostExecutionBehavior
Default value:None
Accepted values:BasedOnExitCode, NoAction, ForceReboot, ProgramReboot
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-RemoveDetectionClause

Specify an array of detection method clauses to remove.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:RemoveDetectionClauses

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-RemoveLanguage

Specify an array of supported languages to remove from this deployment type.

Parameter properties

Type:

String[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:RemoveLanguages

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-RemoveRequirement

Specify an array of requirement rules to remove from this deployment type.

Parameter properties

Type:

Rule[]

Default value:None
Supports wildcards:False
DontShow:False
Aliases:RemoveRequirements

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-RequireUserInteraction

Set this parameter to $true to allow users to view and interact with the deployment type installation.

Parameter properties

Type:Boolean
Default value:None
Supports wildcards:False
DontShow:False
Aliases:RequiresUserInteraction

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ScriptFile

Specify the script file to use to detect this deployment type. Also use the ScriptLanguage parameter.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ScriptLanguage

If you use the ScriptFile or ScriptText parameters, use this parameter to specify the script language.

Parameter properties

Type:ScriptLanguage
Default value:None
Accepted values:PowerShell, VBScript, JavaScript
Supports wildcards:False
DontShow:False
Aliases:ScriptType

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-ScriptText

Specify the text of a script to detect this deployment type. Also use the ScriptLanguage parameter.

For more information, see About custom script detection methods.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:ScriptContent, Script

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-SlowNetworkDeploymentMode

When a client uses a distribution point from a neighbor boundary group or the default site boundary group, specify the deployment option:

  • DoNothing: Don't download content
  • Download: Download content from the distribution point and run locally

Parameter properties

Type:ContentHandlingMode
Default value:None
Accepted values:DoNothing, Download
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-UninstallTaskSequenceId

The ID of the task sequence to uninstall the app.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False
Aliases:ContentLocation, UninstallId

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-UserInteractionMode

Specify the installation program visibility:

  • Normal: The deployment type runs in the normal mode based on system and program defaults. This mode is the default.
  • Minimized: The deployment type runs minimized on client devices. Users might see the installation activity in the notification area or taskbar.
  • Maximized: The deployment type runs maximized on client devices. Users see all installation activity.
  • Hidden: The deployment type runs hidden on client devices. Users see no installation activity.

Parameter properties

Type:UserInteractionMode
Default value:None
Accepted values:Normal, Minimized, Maximized, Hidden
Supports wildcards:False
DontShow:False
Aliases:InstallationProgramVisibility

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet doesn't run.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:wi

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Outputs

System.Object