9 Known Issues with PowerShell and SCCM ConfigMgr

Microsoft has released SCCM 2012 R2 CU1. Along with ConfigMgr 2012 R2 CU1 release, Microsoft released kb/2932274.  The KB article  describes the Windows PowerShell issues that are fixed in Cumulative Update 1 (CU1) for SCCM 2012 R2.

KB2932274 also contains very useful information about the know issues with PowerShell (even after installing SCCM 2012 R2 CU1). There are 9 documented known issues with Powershell. Hope, we don’t have to maintain another list of known issues which are unknown at this moment.

  1. Install-CMClient will not target all computers in a collection when the -CollectionID parameter is used.  To work around this issue, retrieve a set of devices by using Get-CMDevice -CollectionID, and pass each instance into Install -CMDevice -Device. For example, run the following command: Get-CMDevice -CollectionName MyCollection | foreach { Install-CMClient -Device $_ -IncludeDomainController $false -AlwaysInstallClient $false -ForceReinstall $false -SiteCode PSS } 
  2. Start-CMDistributionPointUpgrade does not work with secondary sites. To work around this issue, perform the task by using the Administrator Console.
  3. Save-CMSoftwareUpdate cmdlet does not work in a 64-bit Windows PowerShell environment. To work around this issue, use a 32-bit version of Windows PowerShell or ISE.
  4.  New-CMVirtualEnvironmentGroup result does not show in the Administrator Console.  To work around this issue, perform the task by using the Administrator Console.
  5.  Set-CMSite -Comment parameter causes cmdlets to fail.  To work around this issue, perform the task by using the Administrator Console.
  6.  Remove-CMDeploymentType will not fail when you try to remove a deployment type that does not exist.  To work around this issue, use Get-CMDeploymentType to validate if the deployment type exists before you try to remove it.
  7.  New-CMSecondarySite creates a distribution point that cannot be configured through the Administrator Console when you use a self-signed certificate.  To work around this issue, use any of the following procedures instead of the New-CMSecondarySite cmdlet: Configure the secondary site by using a certification authority issued certificate. Use Set-CMDistributionPoint to configure the distribution point after the secondary site is installed. Remove the secondary site’s distribution point, and add a new one after the secondary site is installed.
  8. Some cmdlets may stop working after you use the New-CMTaskSequence cmdlet.  To work around this issue, restart Windows PowerShell.
  9. Start-CMApplicationDeployment fails when it is used with Windows Store applications because the expectation is that the content exists on a distribution point. To work around this issue, perform the task by using the Administrator Console.

2 thoughts on “9 Known Issues with PowerShell and SCCM ConfigMgr”

  1. Hi Anoop,

    I want to push a powershell script through SCCM, which will delete the wallpaper from c:\install\optional\wallpaper.This script will delete the existing wallpaper and rename the present wallpaper with deleted one.

    When I am trying to do that it will delete the wallpapaer but wont rename the existing wallpaper with deleted one.Running the powershell script manually will work perfectly.

    Till now I tried below

    • We modified the package instead of MSI we went for Script Installer and found the script was executing this time but it was only deleting the wallpaper and it was not replacing the file.

    • After some debugging and checking the log file we found only certain part of the script was running and it was not executing the registry portion which was not working.

    • We modified the script and tested out by replacing the content from CCMCACHE folder(By replacing the file with new one in ccmcache folder the content which downloaded) and retried running the application from the software center and found this time it was working perfectly.

    • We distributed the new script to the distribution point replacing the old one.

    • Then we went to test machine and found the script was not downloading itself checked the logs and found it didn’t detected the application changed the detection method but didn’t worked.

    • Then we created a new application this time creating a dependencies file(running two packages in the same file and both were same script).

    • In the dependencies file we given a command “powershell.exe set-execution policy allsigned” and in the second part we just executed the power shell script.

    • This time application detected and popped up the plain PowerShell window but didn’t executed the script.

    It will be great if you can provide some tips to troubleshoot.


Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.