Also list InstallDate

(imported topic written by bearandy)

We can list Installed app in computers:

unique values of (value “DisplayName” of it as string) of keys whose (exists value “DisplayName” of it AND exists value “UninstallString” of it AND not exists value “SystemComponent” of it AND (not exists value “ParentKeyName” of it or value “ParentKeyName” of it != “OperatingSystem”)) of key “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” of registry

And I want to list “InstallDate”,too.

How could I edit to do it?

Thanks for help.

1 Like

(imported comment written by bearandy)

I tried this and got Singular expression refers to nonexistent object.

(unique values of (value “DisplayName” of it as string),unique values of (value “InstallDate” of it as string)) of keys whose (exists value “DisplayName” of it AND exists value “UninstallString” of it AND not exists value “SystemComponent” of it AND (not exists value “ParentKeyName” of it or value “ParentKeyName” of it != “OperatingSystem”)) of key “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” of registry

(imported comment written by Lee Wei)

You can try this statement.

Because I use the OR operator “|”, it will only work for version 8.x.

unique values of ((value 
"DisplayName" of it as string) & 
" - " & (value 
"InstallDate" of it as string | 
"Installation date unknown")) of keys whose (exists value 
"DisplayName" of it AND exists value 
"UninstallString" of it AND not exists value 
"SystemComponent" of it AND (not exists value 
"ParentKeyName" of it or value 
"ParentKeyName" of it != 
"OperatingSystem")) of key 
"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry

Lee Wei

(imported comment written by bearandy)

Thanks! It is helpful!

(imported comment written by bearandy)

Another question:

It list by the letter.

Could I list it by time?

(imported comment written by bearandy)

complement:

What I wanted to said is “order by”

(imported comment written by Lee Wei)

By “letter” I assume you meant that the sorting is currently done by application name, and by “time” you mean the installation date.

It is possible if the InstallDate is in a consistent format.

On my system, I see “20101105” and “7/5/2011”.

So I suspect that they might be other formats as well. This makes ordering difficult unless we can figure out all the permutations.

Maybe it is a free form field that vendors can date-stamp differently.

Lee Wei

(imported comment written by bearandy)

Thanks your answer! I got it.

And some applications didn’t exist “InstallDate”.

I check “Add Remove Program” in windows. All applictions exists installed date.

Could I get the information in “Add Remove Program”?

(imported comment written by Lee Wei)

The registry location that you are referencing is supposed to be the same as the entries in Add/Remove Program.

http://support.microsoft.com/kb/314481

Lee Wei

(imported comment written by bearandy)

I have another question.

It lists Date and name in the same field:

name & Date

A,20111212

Could I separate to different field like:

name | Date

A | 20111212

Thanks for help.

(imported comment written by bearandy)

Now I could list which applications are installed today:

unique values of ((value “InstallDate” of it as string) & " - " & (value “DisplayName” of it as string)) of keys whose (exists value “DisplayName” of it AND exists value “UninstallString” of it AND not exists value “SystemComponent” of it AND (not exists value “ParentKeyName” of it or value “ParentKeyName” of it != “OperatingSystem”) AND (value “InstallDate” of it = ((year of it as string & “” & month of it as two digits & “” & day_of_month of it as two digits ) of date (local time zone) of now))) of key “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” of registry

But if I want to see which applications were installed yesterday or days ago, I have to change the relevance InstallDate=exact date.

Could it possible to list the day what I want and do not have to change relevance.

Thanks for answer.

(imported comment written by NoahSalzman)

Here is a “installed in the last 30 days” query. I just changed the = to a > and then I subtracted 30 days from “now”.

q: unique values of ((value “InstallDate” of it as string) & " - " & (value “DisplayName” of it as string)) of keys whose (exists value “DisplayName” of it AND exists value “UninstallString” of it AND not exists value “SystemComponent” of it AND (not exists value “ParentKeyName” of it or value “ParentKeyName” of it != “OperatingSystem”) AND (value “InstallDate” of it > ((year of it as string & “” & month of it as two digits & “” & day_of_month of it as two digits ) of ((date (local time zone) of now) - 30*day)))) of key “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” of registry

A: 20111221 - Tivoli Endpoint Manager Client

A: 20111221 - Tivoli Endpoint Manager Console

A: 20111221 - Tivoli Endpoint Manager Installation Generator

A: 20111221 - Tivoli Endpoint Manager Server

(imported comment written by bearandy)

Thanks for answer.

It’s helpful.

So I think it could just set a date range to list.

(imported comment written by bearandy)

I want to list daily Installed applications.

But it is just list Installed applications in current day.

How could I save the list in webreport everyday?

Is it possible that I would list today’s applications tomorrow?

(imported comment written by cbj_elliott91)

How can I turn this action into a Fixlet or Task that I can run?

(I realize this is a pretty general question, so feel free to just link the relevant documentation).

Where is the list of installed applications actually displayed?

(imported comment written by bearandy)

It is an analysis not a action.

And it can display on webreport.

This query is not pulling the info properly kindly help me to achieve this.

Your Relevance query:

But original result

Thanks & Regards
Vicky