Q. How is InstallShield Multiplatform (ISMP) package evidence captured by the inventory agent?
A. InstallShield Multiplatform is a package installation technology developed by Flexera Software. It has since been superseded by InstallAnywhere. Formerly, ISMP is known as InstallShield Universal.
To track product installations, InstallShield Universal uses the Vital Product Data (VPD) registry. In versions of ISMP earlier than 10.5, the VPD is implemented using a pipe ("|") separated file called "vpd.properties". For example:
IBM.WICS|4|3|0|0|WICS 4.3.0|1=WebSphere ICS|IBM WebSphere InterChange Server 4.3.0|WebSphere ICS|IBM Corporation|http://www.ibm.com|4.3.0|/opt/IBM/WebSphereICS|0|0|1|IBM.WebSphere.ICS|4|3|0|0|WICS 4.3.0|1|0|false| |true|3|IBM.WICS|4|3|0|0|WICS 4.3.0|1
CREATE TABLE INSTALLED_SOFTWARE_OBJECT(INSTALLED_SOFTWARE_OBJECT_ID INTEGER NOT NULL PRIMARY KEY,SOFTWARE_OBJECT_UID VARCHAR(255) NOT NULL,INSTALL_LOCATION VARCHAR(255) NOT NULL,INSTANCE INTEGER NOT NULL,VERSION VARCHAR(255),INSTALL_STATUS INTEGER,ACTIVE VARCHAR(255),COMPATIBLE_VERSION VARCHAR(255),PUBLICLY_SHARED VARCHAR(255),VENDOR_NAME VARCHAR(255),VENDOR_WEBSITE VARCHAR(255),NAME VARCHAR(255),DISPLAY_NAME VARCHAR(255),DESCRIPTION VARCHAR(255),UNINSTALL_INFORMATION VARCHAR(255),ISPRODUCT CHAR(5) DEFAULT 'false' NOT NULL,INCLUDES_UNINSTALLER_ENGINE CHAR(5) DEFAULT 'false' NOT NULL,ENGINE_VERSION VARCHAR(255) DEFAULT '1.0.0',CONSTRAINT INSTALLED_SO_ORDER UNIQUE(SOFTWARE_OBJECT_UID,INSTALL_LOCATION,INSTANCE)) INSERT INTO INSTALLED_SOFTWARE_OBJECT VALUES(1,'9e19032d537d59151b616e1aaa4582a8','/opt/IBM/MBFE',1,'5.0.0.2',3,'true',NULL,'false','IBM Corporation','http://www.ibm.com','rootbean','IBM WebSphere Message Broker File Extender',NULL,'"_uninst" "uninstall.jar" "uninstall.dat" "assembly.dat" "run.inf" "/root/InstallShield/Universal/common/Gen1/engine/1.0/engine.jar" "/root/InstallShield/Universal/common/Gen1/engine/1.0/ext" "" ""','true','true','1.0.1') INSERT INTO INSTALLED_SOFTWARE_OBJECT VALUES(2,'c0e608ab498ac40d4d04eca1bb347ab2','/opt/IBM/MBFE',1,'',3,'true',NULL,'false',NULL,NULL,'JPlugin','File plug-in nodes runtime',NULL,NULL,'false','false','1.0.1') INSERT INTO INSTALLED_SOFTWARE_OBJECT VALUES(3,'e84e5e4a2f4bf7b692bbe820f9dd8acc','/opt/IBM/MBFE/eclipse',1,'',3,'true',NULL,'false',NULL,NULL,'Eclipse','File plug-in nodes Eclipse components',NULL,NULL,'false','false','1.0.1')
The inventory agent looks for "vpd.properties" and "vpd.script" files using the following techniques:
Once the "vpd.properties" files are discovered, the agent parses them into package evidence records. The pipe separated fields are:
From the example above:
<Package Name="IBM WebSphere InterChange Server 4.3.0" Evidence="ISMP" Version="4.3.0.0"> <Property Name="InstallLocation" Value="/opt/IBM/WebSphereICS"/> <Property Name="ProductCode" Value="IBM.WICS"/> <Property Name="Publisher" Value="IBM Corporation"/> <Property Name="Summary" Value="WebSphere ICS"/> </Package>
The discovered "vpd.script" files are also parsed into package evidence records. Values taken from the INSTALLED_SOFTWARE_OBJECT table are:
From the example above:
<Package Name="IBM WebSphere Message Broker File Extender" Evidence="ISMP" Version="5.0.0.2"> <Property Name="InstallLocation" Value="/opt/IBM/MBFE"/> <Property Name="ProductCode" Value="9e19032d537d59151b616e1aaa4582a8"/> <Property Name="Publisher" Value="IBM Corporation"/> </Package>
Dec 13, 2018 05:40 AM