SCCM 2012 provides a few ways to manage applications by architecture. In this guide, we will create architecture device collections and custom application requirements, and we will cover deployment scoping.

One wrong way and two right ways exist to manage application architecture in SCCM 2012. Although you can make the wrong way work, doing things correctly and planning ahead will save you a ton of reconfiguration time later. To do this, let’s start by creating two custom device collections.

Creating x86 and x64 device collections in SCCM 2012

Being able to see the architecture breakdown of your environment is made incredibly simple through the use of two device collections. Launch the Configuration Manager console and navigate to Device Collections. Create a new device collection and name it All x64 Clients. Set the limiting collection to All Desktop and Server Clients and click Next.

Under Membership Rules, add a new Query Rule. Name the query after your collection and edit the query statement. Select Criteria and click Add. Under Where, choose Computer System as the attribute class and System Type as the attribute. Click the Value button and select x64-based PC.

Query rule that filters only x64-based computers

Query rule that filters only x64-based computers

If you plan to deploy settings, updates, or applications to this collection and you want a faster installation time, enable Use incremental updates for this collection. As a best practice, do not create more than 200 incremental update collections. Repeat this process and create an x86 device collection.

In our environment, applications are deployed to collections that query AD security groups. If you have an application that is only a 64-bit (or 32-bit) application, you can use these architecture device collections as your limiting collection in the deployment.

The device collection for this application is limited to only members in the All x64 Clients collection

The device collection for this application is limited to only members in the All x64 Clients collection.

Creating application deployment requirements in SCCM 2012

Requirements for application deployments allow granular filtering. You can allow an application to install if a device meets certain hardware specifications, has a certain operating system installed, or meets some other custom query.

Many administrators will filter to a certain OS architecture by selecting an operating system condition. This allows one to add both the x86 and x64 versions of an application to the same SCCM deployment.

Two deployment types allow multi-architecture installs from a single SCCM deployment.

Two deployment types allow multi-architecture installs from a single SCCM deployment.

SCCM evaluates each deployment type until one evaluates as true. Further evaluations then cease. Because of this, each deployment type would have a device requirement configured for it. In the screenshot below, the application is filtered to All Windows 8 (x64) and All Windows 8.1 (x64) clients.

Filtering by OS architecture directly in the application.

Filtering by OS architecture directly in the application

Filtering this way means extra work later. Any time a new OS is released, you have to change the requirements for every application that relies on this method. Creating a custom application requirement enables you to make OS changes in one location and have the changes applied to any application that needs them.

In the Configuration Manager console, select Software Library – Application Management – Global Conditions. Create a global condition and name it OS Architecture x64. Change the condition type to Expression and add a new clause. Set the category to Device, set the condition to Operating system, and select all of the 64-bit operating systems.

Creating a new custom global condition for 32-bit operating systems.

Creating a new custom global condition for 32-bit operating systems

Repeat this process for 32-bit applications. You should now have two custom global conditions listed under all Global Conditions.

When you edit the requirements window for any application, you can see your new condition by changing the Category to Custom and selecting your OS Architecture condition.

A custom 64-bit global condition in the application requirement window.

A custom 64-bit global condition in the application requirement window

Although you could technically create one condition and set the value to either true or false, I prefer two separate conditions. This allows me to easily read the requirement section without evaluating a statement. As you can see, using device collections and global conditions makes multi-architecture applications easy to manage!

  1. Avatar
    Earl S Chambers 9 years ago

    I am very new to SCCM 2007 and recently was thrown into SCCM 2012 R2. Every SCCM 2012 article you have posted is right on the target. Learning this way is not easy but you have made it bearable! Thank you and I will be joining right after this post. How do I learn more?
    “Out in the middle of nowhere, Oklahoma!”

  2. Avatar Author

    Thank you Earl!

    If you haven’t get a good SCCM book and read through it. I would also recommend doing the technet virtual labs for SCCM 2012 – the labs are great for connecting the SCCM dots.

  3. Avatar
    Hamid 7 years ago

    Thanks Joseph for your great easy to understand article!

  4. Avatar Author

    Not a problem Hamid! Thank you for commenting!

  5. Avatar
    Kendall 6 years ago

    Thank you sir. Just the instruction I needed for this new function in my job. Concise and to the point.

  6. Avatar
    arun 5 years ago

    Hi Joseph,

    I like your article, seems you have good knowledge on SCCM , Can you please help me for the following

    I am trying to Install Visio Click to Run version on Windows OS Architecture x64 with  Office Architecture x86 , How can I define Global Conditions for that deployment.

    Can I create WMI Office Architecture for that. Or any other way .



    • Avatar Author

      You can. I would probably create a collection in SCCM for X64 machines. Then create another collection for your Visio deployment and use the X64 collection as your limiting collection.

      For the visio deployment, you could do:

      select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like “%Microsoft Office Professional Plus 2016%”

Leave a reply

Your email address will not be published. Required fields are marked *


© 4sysops 2006 - 2023


Please ask IT administration questions in the forums. Any other messages are welcome.


Log in with your credentials


Forgot your details?

Create Account