this is simple, I push out a program, an exe file. And in order for SCCM to know the program has been installed afterwards, it needs to 'detect' the program, as its an exe file this means I need to apply a manual form of detection. In this example I'm not able to use any file, as the versions don't differentiate on files, and I need to be able to tell different versions apart.
I've tried doing this through registry. Here is what I do ->
I confirm that the registry exists after installation, but it fails detecting the program anyway. So basicly the deployment works, but it can't see this registry.
Why?, the path is correct.. I've tried using both the flag in '32'bit and without.
Firstly, there's one big thing that screams out at me looking at that screenshot, and that's the text
Wow6432Node
in the middle of your registry key's path.From MSDN: 32-bit and 64-bit Application Data in the Registry
On a machine running 64-bit Windows, the
Wow6432Node
is the part of the registry that 32-bit applications are silently redirected to (without the app realising).The way to access this redirection in SCCM's registry detection is to let SCCM be redirected in the same way that the application is by ticking the "This registry key is associated with a 32-bit application on 64-bit systems" box that you can see near the middle of your screenshot, and deleting the
\Wow6432Node
out of your registry key's path. This means that SCCM now knows that this registry key is found in the 32-bit registry section and will look there for it whether you're on a 32- or 64-bit machine.Secondly, I don't know your application, but it is very possible that there is an easier way to do this detection.
Although the app is an EXE, it is entirely possible (and very, very common) that the EXE is just a wrapper around a Windows Installer MSI, in which case you can use the "Windows Installer" Product Code detection method very easily.
There are a few ways to find the MSI product code of an EXE by just checking on the test machine that you've already installed the app on. One way is to use the WMI command line interface to list the installed apps and their installer codes, from a DOS prompt run:
If your app shows up in that list with an "Identifyingnumber" then you should be able to put that into the Windows Installer detection method.