Änderungen an der Configuration Manager Cmdlet-Bibliothek für Version 1902

Gilt für: Configuration Manager (aktueller Branch)

Hinweis

Configuration Manager Current Branch Version 1810 ist die Baseline für diese Änderungen. Weitere Informationen finden Sie unter Configuration Manager Änderungen der Cmdlet-Bibliothek für Version 1810.

Wichtige Änderungen

Neue Cmdlets

Get-CMBoundaryGroupSiteSystem

Verwenden Sie dieses Cmdlet, um das Standortsystem in der angegebenen Begrenzungsgruppe abzurufen.

Get-CMBoundaryGroupSiteSystem -Id $boundaryGroup.GroupID 

Get-CMDistributionPointDriveInfo

Verwenden Sie dieses Cmdlet, um Informationen zum Verteilungspunktlaufwerk abzurufen.

$dp = Get-CMDistributionPoint -SiteSystemServerName $ReferenceSiteSystemServerName 
$dp | Get-CMDistributionPointDriveInfo     

Invoke-CMAnalyzePackage

Verwenden Sie dieses Cmdlet, um ein bestimmtes Paket zu analysieren.

Invoke-CMAnalyzePackage -PackageName $packageName 

Invoke-CMConvertPackage

Verwenden Sie dieses Cmdlet, um ein bestimmtes Paket in eine Anwendung zu konvertieren.

Invoke-CMConvertPackage -PackageName $packageName

New-CMScript

Verwenden Sie dieses Cmdlet, um ein neues PowerShell-Skript zu erstellen. Es werden nur Skripts unterstützt, die keinen Parameter enthalten.

New-CMScript -ScriptName "CMScript" -ScriptText 'Write-Host "New Script"'
New-CMScript -ScriptName "ImportScript" -ScriptFile \\abc\importedscript.ps1

Set-CMClientSettingDeliveryOptimization

Verwenden Sie dieses Cmdlet, um Clienteinstellungen für die Übermittlungsoptimierungsfunktion festzulegen.

[Default] Set-CMClientSettingDeliveryOptimization -DefaultSetting -Enable $true
[Customized] Set-CMClientSettingDeliveryOptimization -Name $ReferenceClientDeviceSettingName -Enable $true

Set-CMClientSettingWindowsAnalytics

Verwenden Sie dieses Cmdlet, um Clienteinstellungen für das Windows Analytics-Feature festzulegen.

[Default] Set-CMClientSettingWindowsAnalytics -DefaultSetting -Enable $true -CommercialIdKey $commercialIdKey -Win10Telemetry EnhancedLimited -EnableEarlierTelemetry $true -IEDataCollectionOption AllZones
[Customized] Set-CMClientSettingWindowsAnalytics -Name $ReferenceClientDeviceSettingName -Enable $true -CommercialIdKey $commercialIdKey -Win10Telemetry EnhancedLimited -EnableEarlierTelemetry $true -IEDataCollectionOption AllZones

Entfernte Cmdlets

Keine

Veraltete Cmdlets

Keine

Bekannte Probleme

Die folgenden Elemente sind bekannte Probleme mit der Cmdlet-Bibliothek, die in dieser Version nicht behoben wurden.

Get-CMAadConditionalAccessPolicy und Set-CMAadConditionalAccessPolicy

Diese Cmdlets erfordern eine 64-Bit-PowerShell-Umgebung.

Problemumgehung

  • Keine

Import-CMSecurityRole

Das Cmdlet schlägt möglicherweise mit einem DirectoryNotFoundException-Fehler fehl, der die Datei SecuredRoles.xsdauffindt.

Problemumgehung

  • Rufen Sie Import-Module für die ConfigurationManager.psd1 Datei und nicht für den logischen Pfad oder Modulnamen auf.

Set-CMSoftwareUpdatePoint

Änderungen am Zeitplan werden möglicherweise nicht in der Configuration Manager-Konsole angezeigt, obwohl das zugrunde liegende SMS-Anbieterobjekt geändert wurde.

Problemumgehung

  • Beenden Sie die Configuration Manager-Konsole, und starten Sie sie neu.

Ressourcennachverfolgung und -wiederherstellung (Beta)

Diese Version fügt neue Cmdlets hinzu, um die Nachverfolgung von SMS-Anbieterobjekten zu unterstützen, die von der PowerShell-Runtime verwendet werden, und um diese Ressourcen zu bereinigen, wenn sie nicht mehr benötigt werden.

  • Disconnect-CMTrackedObject
  • Start-CMObjectTracking
  • Stop-CMObjectTracking

Wenn Sie ausführen Start-CMObjectTracking, verfolgt die PowerShell-Runtime Objekte nach IResultObject , die von Cmdlet-Bibliotheks-Cmdlets erstellt wurden. Für Cmdlets, die nicht manuell mit .Dispose()bereinigt werden, können Sie sie mithilfe von Disconnect-CMTrackedObject für ein einzelnes Objekt freigeben.

Beispiel

# Reclaim a single tracked object
$o | Disconnect-CMTrackedObject

# Reclaim all tracked objects
Disconnect-CMTrackedObject -All

Sobald ein Objekt freigegeben wurde, kann es nicht mehr wiederverwendet oder über die Objektpipeline an ein anderes Cmdlet übergeben werden.

Stop-CMObjectTracking kann verwendet werden, um die Objektnachverfolgung zu deaktivieren. Zuvor zugeordnete Objekte bleiben aktiv.

Nicht beanspruchte Ressourcen können dazu führen, dass der SMS-Anbieter Kontingentverletzungsfehler verursacht. Diese Kontingentprobleme treten in der Regel auf, wenn sie mit großen Mengen von SMS-Anbieterobjekten oder in Umgebungen mit langer Ausführungsdauer arbeiten.

Hinweis

Dieses Feature ist experimentell und kann in einer zukünftigen Version geändert oder entfernt werden. Es ist aktiviert und nicht standardmäßig aktiviert.

Cmdlet-Änderungen

Die folgenden Änderungen wurden an vorhandenen Cmdlets in dieser Version vorgenommen. Änderungen können neue Funktionen, Fehlerbehebungen oder veraltete Funktionen sein. Einige Änderungen können nicht geändert werden. Wenn Sie eines der in diesem Abschnitt aufgeführten Cmdlets oder Featurebereiche verwenden, überprüfen Sie die Änderungen sorgfältig, um zu verstehen, wie sie sich auf Ihre Verwendung auswirken können.

Add-CMDeviceAffinityToUser

Behobene Fehler

  • Add/Remove-CMDeviceAffinityToUser -UserId/-UserName muss "-DeviceId/-DeviceName" zusammen verwenden.

Unterbrechungsfreie Änderungen

  • Parameterüberprüfung für -DeviceID und -DeviceName hinzugefügt. Benutzer sollten mindestens einen von ihnen angeben.

Add-CMDeviceCollectionDirectMembershipRule

Behobene Fehler

  • Wenn dieselbe Ressource mit dem Befehl "Add-CMDeviceCollectionDirectMembershipRule" in PowerShell derselben Sammlung hinzugefügt wird, wird eine leere Warnung "WARNING: " angezeigt, und es wird kein Fehler ausgegeben, dass ein Objekt mit dem angegebenen Namen bereits vorhanden ist.

Unterbrechungsfreie Änderungen

  • Eine fehlende Ressource wurde hinzugefügt.

Add-CMDistributionPoint

Unterbrechungsfreie Änderungen

  • Parameter "-EnableLedbat" zum Aktivieren/Deaktivieren von LEDBAT auf DP hinzugefügt

Add-CMScriptDeploymentType

Behobene Fehler

  • Add-CMScriptDeploymentType standardmäßig nicht an der Benutzeroberfläche ausgerichtet

Unterbrechungsfreie Änderungen

  • Initialisierungscode so geändert, dass er an der Benutzeroberfläche ausgerichtet ist (Geschätzte Installationszeit = 0, Anmeldeanforderung=nur, wenn ein Benutzer angemeldet ist).

Approve-CMApprovalRequest

Unterbrechungsfreie Änderungen

  • Neuer Parameter InstallActionBehavior hinzugefügt (verfügt über zwei Optionen: InstallNow, InstallNonBusinessHours). Der Administrator kann angeben, ob die Anwendung sofort nach der Genehmigung oder außerhalb der Geschäftszeiten installiert werden soll. Es ist ein optionaler Parameter und ist standardmäßig gleich "InstallNow".

Get-CMDevice

Behobene Fehler

  • Get-CMDevice fehlende SMSAssignedSites-Eigenschaft – dies war vor 1806 verfügbar.

Unterbrechungsfreie Änderungen

  • Zwei neue Switchparameter wurden hinzugefügt, damit der Kunde die Klasse der Ausgabe angeben kann:

    • -ReturnCollectionMember: erzwingt die Rückgabeinstanz der sms-Sammlungsmember-Klasse.
    • -ReturnResource: erzwingt die Rückgabeinstanz SMS_Resource Klasse.

    Wenn Sie den Standardparameter ohne ReturnCollectionMember/ReturnResource verwenden, entspricht das Verhalten 1802/1810: Die zurückgegebene Instanz könnte sich in verschiedenen Klassen mit unterschiedlichen angegebenen Parametern befinden.

Get-CMPackage

Behobene Fehler

  • Get-CMPackage benötigt einen -Fast-Switch

Unterbrechungsfreie Änderungen

  • Parameter "-Fast" hinzugefügt, um schnelle Abfragen zu unterstützen.

Import-CMDriver

Behobene Fehler

  • Set-CMDriver -SupportedPlatformName schlägt für Arrays fehl.

Unterbrechungsfreie Änderungen

  • Ein Arraywertproblem für den SupportPlatformName-Parameter wurde behoben.

Invoke-CMScript

Behobene Fehler

  • Invoke-CMScript Cmdlet erwartet ein Objekt, das nicht abgerufen werden kann.

Unterbrechungsfreie Änderungen

  • Die Typüberprüfung wurde korrigiert.

New-CMActiveDirectoryForest

Behobene Fehler

  • Erstellen einer Active Directory-Gesamtstruktur: Der Benutzer funktioniert nicht über PowerShell, nur wenn er über die GRAFISCHE Benutzeroberfläche erstellt wird.

Unterbrechungsfreie Änderungen

  • Das Konto wurde in ein globales Konto importiert, nachdem der Benutzer die Anmeldeinformationen festgelegt hat.
  • Der neue Parameter -Password zum Erstellen von Anmeldeinformationen mit Kennwort wurde hinzugefügt.

New-CMApplication

Behobene Fehler

  • Der Benutzer kann keinen leeren Owner- oder SupportContact-Parameter mit dem cmdlet New-CMApplication angeben.

Unterbrechungsfreie Änderungen

  • Lassen Sie $null für Besitzer/SupportContact beim Erstellen einer neuen Anwendung zu, der Standardwert wäre aktueller Benutzer.
  • Neue Parameter für Besitzer/SupportContact hinzugefügt, um Arrayeingaben zu unterstützen.

New-CMApplicationDeployment

Unterbrechungsfreie Änderungen

  • Der neue Parameter ReplaceToastNotificationWithDialog (Boolean) wurde hinzugefügt. Der Administrator kann angeben, ob Popupbenachrichtigungen durch Dialogfeld ersetzt werden sollen, wenn die erforderliche Software auf dem Clientcomputer verfügbar wird. Es ist ein optionaler Parameter und standardmäßig false.

New-CMCoManagementPolicy

Unterbrechungsfreie Änderungen

  • Unterstützung für neue Workloads hinzugefügt (DCWorkloadEnabled, O365WorkloadEnabled, ClientAppsWorkloadEnabled).

New-CMDetectionClauseWindowsInstaller

Behobene Fehler

  • Fehler bei Add/Set-CMMsiDeploymentType -AddDetectionClause "Ungültiger Ausdruck: Entweder der Datentyp des Operanden stimmt nicht überein, oder der Operator ist für den Datentyp ungültig".

Unterbrechungsfreie Änderungen

  • Die Logik der Datentypinitialisierung wurde geändert, um sicherzustellen, dass sie korrekt ist, wenn Sie den Schalter Existenz angeben.

New-CMOperatingSystemImageUpdateSchedule

Unterbrechungsfreie Änderungen

  • Neuer Parameter hinzugefügt, um änderungen abzugleichen, die beim Erstellen des Zeitplan-Assistenten in der Benutzeroberfläche vorgenommen wurden:
    • -RemoveSupersededUpdates

New-CMOperatingSystemUpgradeUpdateSchedule

Unterbrechungsfreie Änderungen

  • Neuer Parameter hinzugefügt, um änderungen abzugleichen, die beim Erstellen des Zeitplan-Assistenten in der Benutzeroberfläche vorgenommen wurden:
    • -RemoveSupersededUpdates

New-CMPackageDeployment

Behobene Fehler

  • New-CMPackageDeployment weist inkonsistente Warnungen auf

Unterbrechungsfreie Änderungen

  • Das Standardverhalten der SlowNetwork-Option wurde so geändert, dass es an der Benutzeroberfläche ausgerichtet ist.

New-CMStatusFilterRule

Behobene Fehler

  • New-CMStatusFilterRule funktioniert nicht wie erwartet
  • Es kann keine neue Statusfilterregel mit der Eigenschaft "Paket-ID.

Unterbrechungsfreie Änderungen

  • Es wurde eine weitere Bedingung für die Eigenschafts-ID/Wert-Überprüfung hinzugefügt, um die Groß-/Kleinschreibung ohne Angabe von -PropertyID zu entsperren.
  • Logik hinzugefügt, um die Benutzereinstellungseigenschafts-ID = "Paket-ID" zuzulassen, wenn die Quelle "Client" ist.

New-CMTaskSequenceDeployment

Behobene Fehler

  • Ablaufzeit einer Tasksequenzbereitstellung kann nicht festgelegt werden
  • New-CMTaskSequenceDeployment können $result das Objekt von diesem Cmdlet nicht abrufen.

Unterbrechungsfreie Änderungen

  • Der Alias "DeploymentExpireDateTime" wurde dem Parameter "-DeadlineDateTime" hinzugefügt, um dem Cmdlet Set- zu entsprechen.
  • Der using-Block wurde entfernt. Das Bereitstellungsobjekt sollte nicht verworfen werden.

New-CMTaskSequenceMedia

Unterbrechungsfreie Änderungen

  • Ein neuer Parameter wurde hinzugefügt, um den Änderungen zu entsprechen, die der Benutzeroberfläche für die Erstellung von Tasksequenzmedien hinzugefügt wurden:
    • -TemporaryFolder (Alias "TemporaryDirectory", "StagingArea")

New-CMTSStepRunPowerShellScript

Breaking Changes

  • Hinzugefügte Parametersätze: RunScriptFromSource, RunScriptFromPackage.
  • Die Parameter PackageID und PackageName sind nicht mehr obligatorisch, da Benutzer alternativ den neuen Parameter SourceScript eingeben können.

Unterbrechungsfreie Änderungen

  • Neue Parameter wurden hinzugefügt, um änderungen zu entsprechen, die am Schritt "Power Shell-Skript ausführen" in der Benutzeroberfläche des Tasksequenz-Editors vorgenommen wurden:
    • -SourceCode
    • -WorkingDirectory
    • -OutputVariableName
    • -Timeout
    • -Nutzername
    • -Passwort
    • -SuccessCodes

Remove-CMDeviceAffinityFromUser

Behobene Fehler

  • Add/Remove-CMDeviceAffinityToUser -UserId/-UserName muss "-DeviceId/-DeviceName" zusammen verwenden.

Unterbrechungsfreie Änderungen

  • Parameterüberprüfung für -DeviceID und -DeviceName hinzugefügt. Benutzer sollten mindestens einen von ihnen angeben.

Set-CMActiveDirectoryForest

Behobene Fehler

  • Erstellen einer Active Directory-Gesamtstruktur: Der Benutzer funktioniert nicht über PowerShell, nur wenn er über die GRAFISCHE Benutzeroberfläche erstellt wird.

Unterbrechungsfreie Änderungen

  • Das Konto wurde in ein globales Konto importiert, nachdem der Benutzer die Anmeldeinformationen festgelegt hat.
  • Der neue Parameter -Password zum Erstellen von Anmeldeinformationen mit Kennwort wurde hinzugefügt.

Set-CMApplicationDeployment

Unterbrechungsfreie Änderungen

  • Der neue Parameter ReplaceToastNotificationWithDialog (Boolean) wurde hinzugefügt. Der Administrator kann angeben, ob Popupbenachrichtigungen durch Dialogfeld ersetzt werden sollen, wenn die erforderliche Software auf dem Clientcomputer verfügbar wird. Es ist ein optionaler Parameter und standardmäßig false.

Set-CMClientSetting

Unterbrechungsfreie Änderungen

  • Der neue Parameter ReplaceToastNotificationWithDialog (Boolean) wurde hinzugefügt. Der Administrator kann angeben, ob Popupbenachrichtigungen durch dialog ersetzt werden sollen, wenn ein Neustart des Computers erforderlich ist. Es ist ein optionaler Parameter und standardmäßig false.

Set-CMClientSettingComputerRestart

Unterbrechungsfreie Änderungen

  • Der neue Parameter ReplaceToastNotificationWithDialog (Boolean) wurde hinzugefügt. Der Administrator kann angeben, ob Popupbenachrichtigungen durch dialog ersetzt werden sollen, wenn ein Neustart des Computers erforderlich ist. Es ist ein optionaler Parameter und standardmäßig false.

Set-CMComplianceRuleExistential

Behobene Fehler

  • Set-CMComplianceRuleExistential -Rule funktioniert nicht, um den Regelwert festzulegen.
  • Set-CMComplianceRuleExistential -ExpectedValue lässt das Festlegen auf negative Zahl nicht zu, ohne dass der Select-Parameter [-Existence Occurs] erfolgreich festgelegt wurde.

Unterbrechungsfreie Änderungen

  • Die Funktion WarnIgnoredParameter wurde geändert, um sicherzustellen, dass sie IsBoundParameterUsed mit dem Parameter silent='true' aufruft, um Blockierungsfehler zu vermeiden, wenn das untergeordnete Cmdlet den Basisparameter als nicht öffentlichen Parameter überschreibt.
  • Die Validierung für das erwartete Ergebnis wurde an einen gemeinsamen Ort verschoben.

Set-CMDiscoveryMethod

Behobene Fehler

  • Set-CMDiscoveryMethod verfügt nicht über einen Parameter zum Konfigurieren des Ermittlungskontos.

Unterbrechungsfreie Änderungen

  • Der neue Parameter -UserName wurde hinzugefügt, um das Ermittlungskonto für das neue Hinzufügen von ADContainer für die AD-System-/Benutzerermittlung anzugeben.

Set-CMDistributionPoint

Unterbrechungsfreie Änderungen

  • Parameter "-EnableLedbat" zum Aktivieren/Deaktivieren von LEDBAT auf DP hinzugefügt

Set-CMDriver

Behobene Fehler

  • Set-CMDriver -SupportedPlatformName schlägt für Arrays fehl.

Unterbrechungsfreie Änderungen

  • Ein Arraywertproblem für den SupportPlatformName-Parameter wurde behoben.
  • Neue Parameter für SupportedPlatform hinzugefügt: -AddSupportedPlatformName; -RemoveSupportedPlatformName; -ClearSupportedPlatform

Veraltete Funktionen

  • Veralteter Parameter: -SupportedPlatformName

Set-CMManagementPoint

Breaking Changes

  • Die Parameterüberprüfung wurde so geändert, dass sie an der Benutzeroberfläche ausgerichtet ist, und Code zum Zurücksetzen des Clientverbindungstyps beim Aktivieren/Deaktivieren des Cloudgateways hinzugefügt. Dies ist ein Breaking Change, da der Benutzer die Aktivierung des Cloudgateways (-EnableCloudGateway) ohne SSL blockieren würde.

Behobene Fehler

  • Set-CMManagementPoint -EnableCloudGateway zuerst MP als HTTPS/EnableCloudGateway true und dann MP auf HTTP festgelegt, sollte EnableCloudGateway nicht überprüft werden.

Set-CMStatusFilterRule

Behobene Fehler

  • Set-CMStatusFilterRule funktioniert nicht mit dem Festlegen der Paket-ID

Unterbrechungsfreie Änderungen

  • Benutzern das Festlegen der Eigenschaft erlauben, ohne quelle erneut anzugeben. Der Unterschied bei der Benutzeroberfläche besteht darin, dass der Benutzer -PropertyID und -PropertyValue zusammen angeben muss.
  • Code hinzugefügt, um eine leere Warnmeldung zu vermeiden, wenn das Objekt nicht vorhanden ist.

Set-CMTSStepRunPowerShellScript

Unterbrechungsfreie Änderungen

  • Neue Parameter wurden hinzugefügt, um änderungen zu entsprechen, die am Schritt "Power Shell-Skript ausführen" in der Benutzeroberfläche des Tasksequenz-Editors vorgenommen wurden:
    • -SourceCode
    • -WorkingDirectory
    • -OutputVariableName
    • -Timeout
    • -Nutzername
    • -Passwort
    • -SuccessCodes

Set-CMWindowsFirewallPolicy

Behobene Fehler

  • Set/Remove-CMWindowsFirewallPolicy -InputObject muss den richtigen Typ aus New-CMWindowsFirewallPolicy eingeben.

Unterbrechungsfreie Änderungen

  • Die Typüberprüfung wurde korrigiert.