GUIDS
  The GUID data type is a text string representing a Class identifier (ID).  - All GUIDs must be authored in uppercase.
 - The valid format for a GUID is {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} where X is a hex digit (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F).
 
 Package Code :  - The package code is a GUID identifying a particular Windows Installer Package. 
 - The package code associates an .msi file with an application or product and can also be used for the verification of sources. 
 - The product and package codes are not interchangeable, No two nonidentical .msi files should ever have the same package code. 
 - It is important to change the package code because it is the primary identifier used by the installer to search for and validate the correct package for a given installation. 
 - If a package is changed without changing the package code, the installer may not use the newer package if both are still accessible to the installer.
  Product Code :
 
 - The product code is a GUID that is the principal identification of an application or product.
 - Note that letters in product code GUIDs must be uppercase
 - If significant changes are made to a product then the product code should also be changed to reflect this.
 - It is not however a requirement that the product code be changed if the changes to the product are relatively minor.
  Upgrade Code :
 
 - This code is used to major upgrade previous versions of the products. 
 - Good to have the same upgrade code for all the versions of the same product.
 - The UpgradeCode is used in the Upgrade Table to search for related versions of the product that are already installed.
  Component Code :
 
 - A string GUID unique to this component, version, and language.
 - If this column is null the installer does not register the component and the component cannot be removed or repaired by the installer. 
 - This might be intentionally done if the component is only needed during the installation, such as a custom action that cleans up temporary files or removes an old product. 
 - It may also be useful when copying data files to a user's computer that do not need to be registered.
 
  |