Installation of Microsoft Teams

Hi All,
I’m trying to write a property that displays if Microsoft Teams is installed, display its version if it is, and write “MS Teams Not Installed” if it is not.
sounds straightforward, right? wrong.
MS Teams (like many other “Modern” apps) is installed to the User’s context (files are installed to “AppData\Local\Microsoft\Teams\current” and “uninstall” info in the registry is written to “HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall”.

i am pretty close to a solution, this is what i have so far:

Q: if exists logged on user then if not exists key “Teams” of key “Software\Microsoft\Windows\CurrentVersion\Uninstall” of current user keys of registry as string then “MS Teams not installed” else value “DisplayVersion” of key “Teams” of key “Software\Microsoft\Windows\CurrentVersion\Uninstall” of current user keys of registry as string else “No user logged on”
A: 1.3.00.4461

But, if Teams is NOT installed, i am getting

Singular expression refers to nonexistent object

What am i missing?

Thanks!

This is a case that is simplified by using pipe. Please try the following:

if (exists logged on user) then (value "DisplayVersion" of key "Teams" of key "Software\Microsoft\Windows\CurrentVersion\Uninstall" of current user keys of registry as string | "MS Teams not installed") else ("No user logged on")

3 Likes

Thanks Aram, this works great!