i was instructed to compile a list of hostname that is not installed with adobe reader fontpack. Since my organization has bigfix client on all frontend machine, does it capable to extract such information and log a file?
Sure. If you can figure out how to identify the fontpack (reg key? file?) and then make a property to detect it. You can then use the built-in BigFix report functionality to build your report on this property.
You need to figure out a reliable way to determine if the font pack is installed on a machine. On a machine that does have it installed, look for reg keys or files that help determine the presence of the font pack, and then build relevance in the debugger to detect this is the case. Then if you want to find out which machines do not have the font pack installed, you just add "not " to the relevance that detects if the font pack is installed, and you will get machines that do not have it installed.
Typically you detect software presence through the following reg key: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall]
Here is an example for the program “Pidgin”
not exists keys whose (value
"DisplayName" of it as string as lowercase contains
"Pidgin" as lowercase AND value
"DisplayVersion" of it as string as version >=
"2.9.0" as version) of key
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry
Here is a much more complicated example, that checks for the presence of a specific file, the LAME MP3 DLL, in the Audacity Install folder. This relevance does not assume Audacity is installed in a particular location, but gets the install location from the registry.
(not exists file (value
"InstallLocation" of keys whose (value
"DisplayName" of it as string as lowercase contains
"Audacity 1.3" as lowercase) of key
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry as string &
"Plug-Ins\lame_enc.dll")) OR (not(((380928 = size of it AND
"Fri, 28 Nov 2008 08:32:56 -0400" as time = modification time of it AND
"755b6e39607e45eeb3780a18edab580e9d2be4af" = sha1 of it) of file (value
"InstallLocation" of keys whose (value
"DisplayName" of it as string as lowercase contains
"Audacity 1.3" as lowercase) of key
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry as string &
"Plug-Ins\lame_enc.dll"))))​