SCCM 1606 BUG? 32-bit process Powershell detection method doesn’t work

As you know, you can use powershell detection method when you create Application in SCCM.

Usually, I use this script, and it has been working for many years:

$app = Get-WmiObject Win32Reg_AddRemovePrograms  | where-object {$_.DisplayName -like “Your Application name”}
if ($app -ne $null) {
write-host Installed
}

I choosed “Run script as 32-bit process on 64-bit clients”. Because clients are 64bits Windows 10 machines, and my application is 32-bits.

detect

As usual, I tested the detection script in my machine that has the application already installed. Run the script in ISE (x86), it will get you “Installed”. If run it in ISE (x64), it gives you nothing.

Yesterday, users complains softwares are trying to install again and again, and I started to check out what is going on.

I checked “C:\Windows\CCM\Logs\AppDiscovery.log” in few machines, applications that are using this 32-bit powershell detection method gave result “not detected”, although applications are installed.

No one has changed those Applications detection method, I wonder what went wrong.

At the end, I found the “Run script as 32-bit process on 64-bit clients” powershell dection method didn’t work right after machines have updated SCCM Client 1606. 5.00.8412.1007, based on time stamp of ccmsetup.log and AppDiscovery.log.

I have tested few more Applications, results are same.

 

Advertisements

#application, #sccm, #troubleshooting