New-CMPackageDeployment

将旧包部署到集合。

语法

New-CMPackageDeployment
   [-AllowFallback <Boolean>]
   [-AllowSharedContent <Boolean>]
   [-DeployPurpose <DeployPurposeType>]
   [-FastNetworkOption <FastNetworkOptionType>]
   [-Package] <IResultObject>
   [-PersistOnWriteFilterDevice <Boolean>]
   -ProgramName <String>
   [-RerunBehavior <RerunBehaviorType>]
   [-RunFromSoftwareCenter <Boolean>]
   [-Schedule <IResultObject[]>]
   [-ScheduleEvent <ScheduleEventType>]
   [-SendWakeupPacket <Boolean>]
   [-SlowNetworkOption <SlowNetworkOptionType>]
   [-SoftwareInstallation <Boolean>]
   [-StandardProgram]
   [-SystemRestart <Boolean>]
   [-UseUtcForAvailableSchedule <Boolean>]
   [-UseUtcForExpireSchedule <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-AllowFallback <Boolean>]
   [-AllowSharedContent <Boolean>]
   [-DeployPurpose <DeployPurposeType>]
   [-FastNetworkOption <FastNetworkOptionType>]
   -PackageName <String>
   [-PersistOnWriteFilterDevice <Boolean>]
   -ProgramName <String>
   [-RerunBehavior <RerunBehaviorType>]
   [-RunFromSoftwareCenter <Boolean>]
   [-Schedule <IResultObject[]>]
   [-ScheduleEvent <ScheduleEventType>]
   [-SendWakeupPacket <Boolean>]
   [-SlowNetworkOption <SlowNetworkOptionType>]
   [-SoftwareInstallation <Boolean>]
   [-StandardProgram]
   [-SystemRestart <Boolean>]
   [-UseUtcForAvailableSchedule <Boolean>]
   [-UseUtcForExpireSchedule <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-AllowFallback <Boolean>]
   [-AllowSharedContent <Boolean>]
   [-DeployPurpose <DeployPurposeType>]
   [-FastNetworkOption <FastNetworkOptionType>]
   -PackageId <String>
   [-PersistOnWriteFilterDevice <Boolean>]
   -ProgramName <String>
   [-RerunBehavior <RerunBehaviorType>]
   [-RunFromSoftwareCenter <Boolean>]
   [-Schedule <IResultObject[]>]
   [-ScheduleEvent <ScheduleEventType>]
   [-SendWakeupPacket <Boolean>]
   [-SlowNetworkOption <SlowNetworkOptionType>]
   [-SoftwareInstallation <Boolean>]
   [-StandardProgram]
   [-SystemRestart <Boolean>]
   [-UseUtcForAvailableSchedule <Boolean>]
   [-UseUtcForExpireSchedule <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-AllowFallback <Boolean>]
   [-AllowSharedContent <Boolean>]
   [-DeployPurpose <DeployPurposeType>]
   [-FastNetworkOption <FastNetworkOptionType>]
   [-PersistOnWriteFilterDevice <Boolean>]
   [-Program] <IResultObject>
   [-RerunBehavior <RerunBehaviorType>]
   [-RunFromSoftwareCenter <Boolean>]
   [-Schedule <IResultObject[]>]
   [-ScheduleEvent <ScheduleEventType>]
   [-SendWakeupPacket <Boolean>]
   [-SlowNetworkOption <SlowNetworkOptionType>]
   [-SoftwareInstallation <Boolean>]
   [-StandardProgram]
   [-SystemRestart <Boolean>]
   [-UseUtcForAvailableSchedule <Boolean>]
   [-UseUtcForExpireSchedule <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-DeployPurpose <DeployPurposeType>]
   [-DeviceProgram]
   -PackageName <String>
   -ProgramName <String>
   [-RecurUnit <RecurUnitType>]
   [-RecurValue <Int32>]
   [-Rerun <Boolean>]
   [-UseUtc <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-DeployPurpose <DeployPurposeType>]
   [-DeviceProgram]
   -PackageId <String>
   -ProgramName <String>
   [-RecurUnit <RecurUnitType>]
   [-RecurValue <Int32>]
   [-Rerun <Boolean>]
   [-UseUtc <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-DeployPurpose <DeployPurposeType>]
   [-DeviceProgram]
   [-Package] <IResultObject>
   -ProgramName <String>
   [-RecurUnit <RecurUnitType>]
   [-RecurValue <Int32>]
   [-Rerun <Boolean>]
   [-UseUtc <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-CMPackageDeployment
   [-DeployPurpose <DeployPurposeType>]
   [-DeviceProgram]
   [-Program] <IResultObject>
   [-RecurUnit <RecurUnitType>]
   [-RecurValue <Int32>]
   [-Rerun <Boolean>]
   [-SendWakeupPacket <Boolean>]
   [-UseUtc <Boolean>]
   [-DistributeCollectionName <String>]
   [-DistributeContent]
   [-DistributionPointGroupName <String>]
   [-DistributionPointName <String>]
   [-AvailableDateTime <DateTime>]
   [-Comment <String>]
   [-DeadlineDateTime <DateTime>]
   [-UseMeteredNetwork <Boolean>]
   [-Collection <IResultObject>]
   [-CollectionId <String>]
   [-CollectionName <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

使用此 cmdlet 将包部署到集合中的资源。 可以按 ID、名称或传递对象来指定集合。

对于无法使用此 cmdlet 配置的其他部署设置,请使用 Set-CMPackageDeployment

有关详细信息,请参阅 Configuration Manager 中的包和程序

注意

从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1:按 ID 部署包

此命令创建一个具有 ID 的包 的部署,该包XYZ00001 到 ID XYZ0003F集合。

$pkgId = "XYZ00001"
$collId = "XYZ0003F"
New-CMPackageDeployment -StandardProgram -PackageId $pkgId -ProgramName "ScanState" -CollectionID $collId -Comment "Use USMT to scan for data" -DeployPurpose Available

示例 2:在截止时间内根据需要部署包

第一个命令将截止时间的变量设置为 10 天后晚上 8:00。 第二个命令基于每天重复的截止时间创建计划对象。 第三个命令使用该计划创建包部署。

[datetime]$DeadlineTime = (Get-Date -Hour 20 -Minute 0 -Second 0).AddDays(10)

$NewScheduleDeadline = New-CMSchedule -Start $DeadlineTime -Nonrecurring

$pkgId = "XYZ00001"
$progName = "Run"
$collId = "XYZ0003F"

New-CMPackageDeployment -StandardProgram -PackageId $pkgId -ProgramName $progName -DeployPurpose Required -CollectionId $collId -FastNetworkOption DownloadContentFromDistributionPointAndRunLocally -SlowNetworkOption DownloadContentFromDistributionPointAndLocally -RerunBehavior RerunIfFailedPreviousAttempt -Schedule $NewScheduleDeadline

参数

-AllowFallback

允许客户端使用默认站点边界组中的分发点。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AllowSharedContent

允许客户端使用相邻边界组中的分发点。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AvailableDateTime

指定此部署 何时可用

使用 -DeadlineDateTime 指定部署 过期时间,使用 -Schedule 指定部署分配或 截止时间

若要获取 DateTime 对象,请使用 Get-Date cmdlet。

类型:DateTime
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Collection

指定集合对象作为此包部署的目标。 若要获取此对象,请使用 Get-CMCollection cmdlet。

类型:IResultObject
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CollectionId

指定集合 ID 作为此包部署的目标。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CollectionName

指定集合名称作为此包部署的目标。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:True

-Comment

为此包部署指定可选注释。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

添加此参数以在运行 cmdlet 之前提示确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DeadlineDateTime

使用此参数可指定部署 何时过期

使用 -AvailableDateTime 指定部署 何时可用,使用 -Schedule 指定部署分配或 截止时间

若要获取 DateTime 对象,请使用 Get-Date cmdlet。

类型:DateTime
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DeployPurpose

指定此部署是可供用户安装,还是需要在截止时间安装。

类型:DeployPurposeType
接受的值:Available, Required
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DeviceProgram

如果要部署的包的程序是设备类型程序,请指定此参数。

否则,请使用 StandardProgram 参数。 标准程序类型适用于具有 Configuration Manager 客户端的计算机。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DistributeCollectionName

站点将内容分发到与此集合名称关联的分发点组。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DistributeContent

添加此参数以在创建此部署时分发包内容。 在将内容分发到客户端可以访问的分发点之前,客户端无法安装包。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DistributionPointGroupName

站点将内容分发到此分发点组。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DistributionPointName

站点将内容分发到此分发点。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FastNetworkOption

指定客户端使用当前边界组中的分发点时的行为:

  • 从分发点运行程序
  • 从分发点下载内容并在本地运行

如果未指定此参数,则默认使用 DownloadContentFromDistributionPointAndRunLocally 此参数。 此选项更安全,因为客户端在运行程序之前会验证内容哈希。

类型:FastNetworkOptionType
接受的值:RunProgramFromDistributionPoint, DownloadContentFromDistributionPointAndRunLocally
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Package

指定要部署的程序的包对象。 若要获取此对象,请使用 Get-CMPackage cmdlet。

类型:IResultObject
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-PackageId

指定要部署的程序的包的 ID。 此 ID 是标准包 ID,例如 XYZ007E3

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-PackageName

指定要部署的程序的包的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-PersistOnWriteFilterDevice

配置客户端在 Windows Embedded 设备上处理写入筛选器的方式。

  • $true:在截止时间或维护时段内提交更改。 需要重启。
  • $false:在覆盖层上应用内容,稍后提交。
类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Program

指定要部署的程序对象。 若要获取此对象,请使用 Get-CMProgram cmdlet。

类型:IResultObject
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-ProgramName

指定要部署的包中的程序的名称。

类型:String
别名:StandardProgramName, DeviceProgramName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-RecurUnit

为定期部署指定单位。 使用 RecurValue 参数指定此单位的值。

类型:RecurUnitType
接受的值:Minutes, Hours, Days
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RecurValue

指定部署的重复频率。

此参数取决于 RecurUnit 参数中指定的单位类型:

  • 小时:此值可以介于 和 之间123
  • :介于 和 之间131
  • 分钟数:介于 和 之间159
类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Rerun

指示部署是否重新运行:

  • $True:部署再次针对 RerunBehavior 参数中指定的客户端运行。 此值为默认值。
  • $False:部署不会再次运行。
类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RerunBehavior

指定程序是否在计算机上重新运行。

  • NeverRerunDeployedProgram:即使部署失败或更改文件,也不会重新运行。
  • AlwaysRerunProgram:按计划重新运行,即使部署成功也是如此。 可以将此值用于定期部署。 此值为默认值。
  • RerunIfFailedPreviousAttempt:如果部署在上一次尝试中失败,则按计划重新运行。
  • RerunIfSucceededOnPreviousAttempt:仅当上一次尝试成功时重新运行。
类型:RerunBehaviorType
接受的值:NeverRerunDeployedProgram, AlwaysRerunProgram, RerunIfFailedPreviousAttempt, RerunIfSucceededOnPreviousAttempt
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RunFromSoftwareCenter

允许用户独立于分配运行程序。

类型:Boolean
别名:AllowUsersRunIndependently
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Schedule

使用此参数可以指定部署分配或 截止时间

使用 -AvailableDateTime 指定部署 何时可用,使用 -DeadlineDateTime 指定部署 到期时间

指定计划对象的数组。 计划对象定义部署的强制分配计划。 若要创建计划对象,请使用 New-CMSchedule cmdlet。

类型:IResultObject[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ScheduleEvent

指定确定包部署何时运行的事件类型。

类型:ScheduleEventType
接受的值:AsSoonAsPossible, LogOn, LogOff
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SendWakeupPacket

指示是否在部署开始前将唤醒数据包发送到计算机。 如果此值为 $True,则 Configuration Manager 将计算机从睡眠状态唤醒。 如果此值为 $False,则不会将计算机从睡眠状态唤醒。 对于要唤醒的计算机,请先配置 LAN 唤醒。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SlowNetworkOption

指定客户端使用来自相邻边界组或默认站点边界组的分发点时的行为:

  • 不运行程序
  • 从分发点下载内容并在本地运行
  • 从分发点运行程序

如果未指定此参数,则默认使用 DoNotRunProgram 此参数。

类型:SlowNetworkOptionType
接受的值:DoNotRunProgram, DownloadContentFromDistributionPointAndLocally, RunProgramFromDistributionPoint
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SoftwareInstallation

达到安装截止时间时,将此参数 $true 设置为 以允许包在维护时段外安装。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-StandardProgram

将此参数用于标准程序类型。 此类型适用于具有 Configuration Manager 客户端的计算机。

如果要部署的包的程序是设备类型程序,请使用 DeviceProgram 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SystemRestart

达到安装截止时间时,将此参数设置为 以 $true 允许系统在维护时段外重新启动(如有必要)。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseMeteredNetwork

指示是否允许按流量计费的 Internet 连接上的客户端在安装截止时间后下载内容,这可能会产生更多成本。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseUtc

指示客户端是否使用协调世界时 (UTC) 来确定程序的可用性。 UTC 时间使部署同时可用于所有计算机。 如果未指定此参数或将其设置为 $false,则客户端会使用其本地时间。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseUtcForAvailableSchedule

指示客户端是否使用协调世界时 (UTC) 来确定程序的可用性。 UTC 时间使部署同时可用于所有计算机。 如果未指定此参数或将其设置为 $false,则客户端会使用其本地时间。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseUtcForExpireSchedule

指示客户端是否使用协调世界时 (UTC) 来确定程序何时过期。 UTC 时间使所有计算机的部署同时过期。 如果未指定此参数或将其设置为 $false,则客户端会使用其本地时间。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 该 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object