web analytics


How to query Programs with On any plafrom enabled

Posted by:

To query Programs with “On any plafrom” enabled

  1. Set up a connection to the Root\SMS namespace
  2. Query SMS_Program WMI class
  3. Check if the Flag is enabled or not.

Run the Get-CMProgramsWithAnyPlatform.ps1 with the following parameters:

Get-CMProgramsWithAnyPlatform.ps1 -SiteServer Localhost -SiteCode XXX -OutPut c:\Temp\CMPrograms.csv


Example Output


You can download the code example from here

About the Author:

Kaido Järvemets is a developer, consultant, trainer specializing in Microsoft System Center Configuration Manager and PowerShell Solutions at Coretech. Kaido frequently speaks at European conferences and had his US debut as speaker at MMS April 2013. Kaido is well-known in the Configuration Manager communities where he’s a key player in the PowerShell game. Kaido host one of the most complete Configuration Manager PowerShell library’s in the world with hundreds of free code samples ready to download and implement – www.cm12sdk.net. Kaido has been awarded Microsoft Most Valuable Professional (MVP) in Microsoft Enterprise Client Management for his work with Configuration Manager from 2011 – to present. Kaido is the founder of System Center User Group Estonia in 2011.


  1. Jack  March 8, 2013

    This is great – with one small exception; of course my exception relates to SCCM 2007, not ’12.

    The SMS_Program class does not contain “PackageName” – instead, that would be acquired from SMS_Package

    I’m not that good at PowerShell (yet) – so any idea how I’d make this work so it listed the package name from that other class? Thanks!


Add a Comment