Änderungen an der Konfigurations-Manager-Cmdlet-Bibliothek für Current Branch 1710

Hinweis

System Center Configuration Current Branch 1706 ist die Baseline für diese Änderungen. Weitere Informationen finden Sie unter Änderungen an der Konfigurations-Manager-Cmdlet-Bibliothek für Current Branch 1706.

Wichtige Änderungen

Aktualisierungen der Dokumentationsbibliothek

Die neueste Dokumentation zur Cmdlet-Bibliothek finden Sie in der ConfigurationManager-Modulreferenz.

Entfernte Cmdlets

Die folgenden Cmdlets werden nicht mehr unterstützt und wurden entfernt:

  • Invoke-CMAmtProvisioningDiscovery
  • New-CMAmtProvisioningAccount
  • Set-CMPowerControl

Veraltete Cmdlets

  • Invoke-CMEndpointProtectionScan und Save-CMEndpointProtectionDefinition wurden durch Invoke-CMClientActionersetzt.

Deaktivieren Sie die automatische Erstellung von PSDrive

Wenn das Modul ConfigurationManager.psd1 geladen wird, versucht PowerShell automatisch, eine Verbindung mit dem letzten SMS-Anbieter herzustellen, auf den mit der Konfigurations-Manager-Konsole zugegriffen wurde. In einigen Szenarien ist dieses Verhalten möglicherweise nicht erwünscht. Es wurde ein benutzerspezifischer Registrierungsschlüssel hinzugefügt, der dieses Verhalten deaktivieren und die manuelle Laufwerkerstellung erfordern kann. Verwenden Sie dazu den Registrierungsschlüssel: HKEY_CURRENT_USER\Software\Microsoft\ConfigMgr10\PowerShell und legen Sie den Wert auf den Wert DisableCMDriveAutoCreate DWORD 1 (automatische Laufwerkerstellung ist deaktiviert) oder 0 (Standardverhalten) fest. Durch das Löschen DisableCMDriveAutoCreate wird auch das Standardverhalten aktiviert.

Hinweis

Wenn die automatische Laufwerkerstellung deaktiviert ist, meldet die Konfigurations-Manager-Konsole möglicherweise einen Fehler beim Starten eines PowerShell-Fensters.

Bekannte Probleme

Dies sind bekannte Probleme mit der Cmdlet-Bibliothek, die in dieser Version nicht behoben werden.

Get-CMAadConditionalAccessPolicy und Set-CMAadConditionalAccessPolicy

Für diese Cmdlets ist eine 64-Bit-PowerShell-Umgebung erforderlich.

Problemumgehung

  • Keine

Import-CMSecurityRole

Das Cmdlet schlägt möglicherweise mit einem DirectoryNotFoundException-Fehler beim Suchen der Datei SecuredRoles.xsdfehl.

Problemumgehung

Stellen Sie sicher, dass dies Import-Module für die Datei und nicht für den ConfigurationManager.psd1 logischen Pfad oder Modulnamen aufgerufen wird.

Get-CMSiteUpdateInstallStatus

Das Cmdlet schlägt möglicherweise mit einem WqlQueryException-Fehler fehl.

Problemumgehung

  • Verwenden Sie Invoke-CMWmiQuery, um die SMS_CM_UpdatePackTopLevelMonitoring Klasse direkt abzufragen.
Beispiel
# Note: The PackageGuid value can be determined by running Get-CMSiteUpdateInstallStatus -Verbose and viewing the query details.
Invoke-CMWmiQuery "SELECT * FROM SMS_UpdatePackTopLevelMonitoring WHERE PackageGuid='...' ORDER BY StageId ASC"

Set-CMSoftwareUpdatePoint

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

Problemumgehung

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

Neue Cmdlets

Dies sind neu hinzugefügte Cmdlets für diese Version, mit denen neue Funktionen hinzugefügt oder die Funktionalität vorhandener Cmdlets erweitert wird.

Cmdlets für die Gerätezuordnung

Get-CMResultantCollection ruft die Sammlungen ab, die einem Gerät zugeordnet sind. Get-CMResultantDeployment werden Bereitstellungen für ein Gerät abgerufen.

Klassenverwaltung des Clientinventars

Es wurden neue Cmdlets hinzugefügt, um das Ändern von Inventarklassen zu unterstützen, die für Clientinventar verwendet werden.

  • Get-CMInventoryClass
  • New-CMInventoryReportClass

Tasksequenzen

Es wurden neue Cmdlets hinzugefügt, um das Ändern von Tasksequenzschritten zu unterstützen.

  • Tasksequenzbefehle (Get, New, Remove und Set verbs supported)
    • CMTaskSequenceStepApplyOperatingSystem
    • CMTaskSequenceStepApplyWindowsSetting

Ressourcennachverfolgung und -wiederherstellung (BETA)

Es wurden neue Cmdlets hinzugefügt, um die Verfolgung von SMS-Anbieterobjekten zu unterstützen, die von der PowerShell-Laufzeit verwendet werden, und um diese Ressourcen zu sauber, wenn sie nicht mehr benötigt werden.

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

Bei Start-CMObjectTracking der Ausführung verfolgt die PowerShell-Laufzeit Objekte nach IResultObject , die von Cmdlets der Cmdlet-Bibliothek erstellt wurden. Cmdlets, die nicht manuell bereinigt .Dispose() werden, können zurückgefordert werden, indem sie für ein einzelnes Objekt verwendet Disconnect-CMTrackedObject werden.

Beispiel

# Reclaim all tracked objects
$o | Disconnect-CMTrackedObject```), or ```Disconnect-CMTrackedObject -All

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

Stop-CMObjectTracking Kann verwendet werden, um die Objektverfolgung zu deaktivieren. Beachten Sie, dass zuvor zugeordnete Objekte aktiv bleiben.

Nicht beanspruchte Ressourcen können dazu führen, dass der SMS-Anbieter Fehler wegen Kontingentverletzung auslöst. Diese Probleme treten in der Regel bei der Arbeit mit sehr großen Gruppen von SMS-Anbieterobjekten oder in Umgebungen mit langer Laufzeit auf

Hinweis

Dies ist ein experimentelles Feature und kann in einer zukünftigen Version geändert oder entfernt werden. Dieses Feature ist optional und standardmäßig nicht aktiviert.

Cmdletänderungen

Die folgenden Änderungen wurden an vorhandenen Cmdlets für diese Version vorgenommen. Änderungen können neue Funktionen, Fehlerbehebungen oder veraltete Funktionen sein und fehlerhaft sein. 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.

Cmdlets für Konformitätseinstellungen und -regeln

Fehler, die behoben wurden

Der Wert "RuleDescription" gilt möglicherweise nicht für die Regel. (Cmdlets, die die Erstellung oder Änderung von Regeln unterstützen)

Wert für "Standard"-Registrierungsschlüssel kann nicht festgelegt werden (Add/Set-CMComplianceSettingRegistryKeyValue, New-CMDetectionClauseRegistryKeyValue).

NullReferenceException kann ausgelöst werden (New-CMComplianceRuleAssembly)

Fehlende Datentypunterstützung (Add-CMComplientSettingREgistryKeyValue)

Add-CMApplicationCatalogWebsitePoint

Fehler, die behoben wurden

Verbesserte Fehlerbehandlung und Berichterstellung.

Add/Set-CMDataWarehouseServicePoint

Nicht unterbrechende Änderungen

DataWarehouseSqlPort unterstützt Portwerte von 1-65535. Der Parameter "DaysOfWeek" unterstützt jetzt den Wert .Daily

Add/Set-CMExchangeServer

Fehler, die behoben wurden

Der Parameterwert "EmailAddress" gilt möglicherweise nicht für die Exchange-Serverkonfiguration.

Add-CMMsiDeploymentType

Fehler, die behoben wurden

Der ContentLocation-Parameter ist erforderlich, wenn die Skripterkennung verwendet wird. Neue Parameter "UninstallContentLocation" und "UninstallOption" wurden hinzugefügt.

Nicht unterbrechende Änderungen

Verbesserte Validierung des ProductCode-Parameters .

Add-CMScriptDeploymentType

Nicht unterbrechende Änderungen

Verbesserte Validierung des ProductCode-Parameters . Neue Parameter "UninstallContentLocation" und "UninstallOption" wurden hinzugefügt.

Get-CMDeploymentTypeDependencyGroup

Nicht unterbrechende Änderungen

Das Cmdlet unterstützt jetzt pipelined-Werte aus Get-CMDeploymentType.

Get-CMSiteStatusMessage

Fehler, die behoben wurden

Beim Filtern mit dem Parameter "Schweregrad " werden nicht alle Nachrichten zurückgegeben.

Invoke-CMClientAction (ehemals Invoke-CMClientNotification)

Nicht unterbrechende Änderungen

ActionType-Parameter , der alle Clientbenachrichtigungstypen akzeptiert.

Hinweis

RequestScriptExecution wird zurzeit nicht unterstützt.

Veraltete Funktionen

NotificationType wurde durch ActionType ersetzt

Neue CM*Bereitstellung

Fehler, die behoben wurden

Das Cmdlet ermöglicht die Kombination von CollectionId-, CollectionName- und Collection-Parametern , was zu undefiniertem Verhalten führen kann.

New-CMBootableMedia

Fehler, die behoben wurden

Medien können nicht als Sitebasiert erstellt werden.

New-CMWirelessProfile

Fehler, die behoben wurden

Das Cmdlet kann in einer 64-Bit-PowerShell-Umgebung nicht ausgeführt werden.

Das Cmdlet gibt möglicherweise einen Fehler zurück, wenn ein Wert für den ClientCertificate-Parameter angegeben wird.

Remove-CMCorpOwnedDevice

Fehler, die behoben wurden

Das Gerät kann nicht entfernt werden, wenn ein pipelineförmiges Objekt verwendet wird.

Der Gerätename wird bei Verwendung von WhatIf oder Confirm nicht gemeldet.

Remove-CMStateMigrationPoint

Wichtige Änderungen

Eine zusätzliche Bestätigung ist erforderlich, wenn Benutzerdaten auf dem Zustandsmigrationspunkt gespeichert sind. Hinweis: Force wird diese Bestätigung umgehen.

Save-CMSoftwareUpdate

Nicht unterbrechende Änderungen

Die Parameter "RetryCount " und "RetryDelaySec " wurden hinzugefügt, um Downloads nach einem Fehler erneut zu versuchen.

Set-CMAccessAccount

Fehler, die behoben wurden

PassThru gibt möglicherweise kein aktualisiertes Objekt zurück.

Set-CMAntimalwarePolicy

Fehler, die behoben wurden

Die Platzhalterzeichen dürfen mit dem Parameter AddExcludedFilePath nicht verwendet werden.

Konfiguration FallbackOrder für eine bestimmte Richtlinie nicht möglich

Nicht unterbrechende Änderungen

Neue Parameter für die Verwaltung von Bedrohungslisten wurden hinzugefügt: AddThreat, RemoveThreat und CleanThreat. AddThreat akzeptiert eine Hashtabelle, wobei der Schlüssel der Name und der Wert vom Typ ist Microsoft.ConfigurationManagement.Cmdlets.EP.Commands.DefaultActionMediumAndLowType.

Veraltete Funktionen

Die Parameter ThreatName und OverrideAction wurden durch AddThreat, RemoveThreat und CleanThreat ersetzt.

Set-CMClientSettingComputerAgent

Veraltete Funktionen

HealthAttestationUrl-Parameter , da er nicht mehr vom Produkt verwendet wird.

Set-CMClientSettingHardwareInventory

Nicht unterbrechende Änderungen

Die Parameter AddInventoryReportClass, CleanInventoryReportClass und RemoveInventoryReportClass unterstützen das Ändern des von Clients erfassten Hardwareinventars.

Set-CMMsiDeploymentType

Nicht unterbrechende Änderungen

Verbesserte Validierung des ProductCode-Parameters .

Set-CMScriptDeployment

Fehler, die behoben wurden

Anwendungsobjekt im SMS-Anbieter wird möglicherweise nicht automatisch entsperrt, wenn das Cmdlet fehlschlägt, wodurch weitere Änderungen verhindert werden, bis die Sperre abläuft.

Set-CMScriptDeploymentType

Nicht unterbrechende Änderungen

Verbesserte Validierung des ProductCode-Parameters .

Set-CMSoftwareUpdatePointComponent

Nicht unterbrechende Änderungen

Neuer ContentFileOption-Parameter zum Konfigurieren des Updatedownloadverhaltens hinzugefügt.

Set-CMSiteMaintenanceTask

Nicht unterbrechende Änderungen

Verbesserte Fehlerberichterstattung

Set-CMWirelessProfile

Fehler, die behoben wurden

Das Cmdlet kann in einer 64-Bit-PowerShell-Umgebung nicht ausgeführt werden.

Bei Verwendung der Objektpipeline kann der Fehler "MismatchedPSTypeName" ausgelöst werden.

ProxyAddress und ProxyPort werden nicht mit denselben Regeln validiert wie die Konfigurations-Manager-Konsole.

Die Angabe von ProxyAddress ohne ProxyPort kann dazu führen, dass eine ungültige Konfiguration erstellt wird.

SecurityAuthentication kann mit Konfigurationen geändert werden, die dies nicht unterstützen.

EapType muss mit SecurityAuthentication kombiniert werden, auch wenn sich letzteres nicht ändert.

Nicht unterbrechende Änderungen

Parameter "RootCertificate", "ClientCertificate" und "RememberCredentials " wurden hinzugefügt.

Verbesserte Funktionalität zum Konfigurieren einer MSCHAPv2-Drahtlosrichtlinie.

Sync-CMSoftwareUpdate

Nicht unterbrechende Änderungen

Für das Cmdlet müssen keine Parameter mehr angegeben werden.

Hinweis

Wenn keine Parameter definiert sind, -ForceSync $true ist dies impliziert.