Forcing a Full Hardware Inventory Report to be Sent Immediately on a ConfigMgr Client

Sometimes you might want to force a ConfigMgr client to send a full hardware inventory report immediately for whatever reason. Typically you would simply clean out the WMI instance for the InventoryAction then trigger the schedule. But sometimes there may already be a scheduled action in the queue, for example the hardware inventory cycle has … Continue reading Forcing a Full Hardware Inventory Report to be Sent Immediately on a ConfigMgr Client

Collecting ConfigMgr Client Logs to Azure Storage

In the 2002 release of Endpoint Configuration Manager, Microsoft added a nice capability to collect log files from a client to the site server. Whilst this is a cool capability, you might not be on 2002 yet or you might prefer to send logs to a storage account in Azure rather than to the site … Continue reading Collecting ConfigMgr Client Logs to Azure Storage

Delete Device Records in AD / AAD / Intune / Autopilot / ConfigMgr with PowerShell

I've done a lot of testing with Windows Autopilot in recent times. Most of my tests are done in virtual machines, which are ideal as I can simply dispose of them after. But you also need to cleanup the device records that were created in Azure Active Directory, Intune, the Autopilot registration service, Microsoft Endpoint … Continue reading Delete Device Records in AD / AAD / Intune / Autopilot / ConfigMgr with PowerShell

Get Program Execution History from a ConfigMgr Client with PowerShell

Have you ever been in the situation where something unexpected happens on a users computer and people start pointing their fingers at the ConfigMgr admin and asking "has anyone deployed something with SCCM?" Well, I decided to write a PowerShell script to retrieve the execution history for ConfigMgr programs on a local or remote client. … Continue reading Get Program Execution History from a ConfigMgr Client with PowerShell

Get Previous and Scheduled Evaluation Times for ConfigMgr Compliance Baselines with PowerShell

I was testing a compliance baseline recently and wanted to verify if the schedule defined in the baseline deployment is actually honored on the client. I set the schedule to run every hour, but it was clear that it did not run every hour and that some randomization was being used. To review the most … Continue reading Get Previous and Scheduled Evaluation Times for ConfigMgr Compliance Baselines with PowerShell

[Unsupported] Getting / triggering ConfigMgr Client Programs using Software Center Code

An odd title perhaps, but I recently had a requirement to retrieve the deadline for a deployed task sequence on the client side in the user context using PowerShell. You can find this info in WMI, using the CCM_Program class of the ROOT\ccm\ClientSDK namespace. Problem is, standard users do not have access to that. I … Continue reading [Unsupported] Getting / triggering ConfigMgr Client Programs using Software Center Code

ConfigMgr Housekeeping Scripts

ConfigMgr is a bit like a garage - you throw all kinds of stuff in there over the years, and then one day you decide to go through everything and chuck out the stuff you don't need anymore. It's a time-consuming process and sometimes there are difficult decisions to be made - do I / … Continue reading ConfigMgr Housekeeping Scripts

Setting the Computer Description During Windows Autopilot

I've been getting to grips with Windows Autopilot recently and, having a long history working with SCCM, I've found it hard not to compare it with the power of traditional OSD using a task sequence. In fact, one of my goals was to basically try to reproduce what I'm doing in OSD with Autopilot in … Continue reading Setting the Computer Description During Windows Autopilot

Windows 10 Upgrade Splash Screen – Take 2

Recently I tweeted a picture of the custom Windows 10-style splash screen I'm using in an implementation of Windows as a Service with SCCM (aka in-place upgrade), and a couple of people asked for the code, so here it is! A while ago a blogged about a custom splash screen I created to use during … Continue reading Windows 10 Upgrade Splash Screen – Take 2

Forcing Installation of the MDT ConfigMgr Integration WMI Classes

Today I encountered an unexpected issue installing the ConfigMgr Integration for MDT. The scenario was an environment with several SMS providers and 2 site servers in a high availability configuration (active / passive). The MDT ConfigMgr Integrations ran successfully on each of the SMS Provider servers, but on the passive site server the BDD_* WMI … Continue reading Forcing Installation of the MDT ConfigMgr Integration WMI Classes