What is a compressed GUID and why is it used?

后端 未结 2 618
忘掉有多难
忘掉有多难 2020-12-21 12:16

I know that in Windows, the GUID is used by the Windows Installer to check for already installed products under the registry key HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsof

2条回答
  •  渐次进展
    2020-12-21 12:37

    Not sure what you are doing, or why this is a problem for your scenario. However, the GUIDs you mention - the rearranged GUIDs with the braces and dashes removed - are actually referred to as Packed GUIDs. Then there are also Compressed GUIDs that are just 23 characters long that are primarily used to create Darwin descriptors - which are combinations of the product code GUID, a feature name, and a component code GUID. They are used for MSI's advertisement features. This is according to Bob Baker's book "Getting Started with InstallShield Developer and Windows Installer Setups".

    As far as I recall the packed GUIDs are apparently used to make registry searches more efficient. I am unfamiliar with the exact technical details involved. Perhaps Bob or Rob of WiX can elaborate.

    I have to run, not really an answer, I will look at it again later. Please elaborate your question with more details on what the problem actually is. As a summary it seems the collective comments suggest that this GUID concept is due to registry space saving, searching efficiency and obfuscation.

    My advice (if I understand correctly): do not attempt to read packed or compressed GUIDs from the registry directly - rather go via the MSI API (COM / Win32) - which should have the features you need to do almost anything with MSI.


    Some Links:

    • MSIEXEC -Embedding

    MSI API Links (quite similar links):

    • Is MsiOpenProduct the correct way to read properties from an installed product?
    • Wix upgrade goes into maintenance mode and never does upgrade
    • how to find out which products are installed - newer product are already installed MSI windows
    • Is there an alternative to GUID when using msiexec to uninstall an application?

提交回复
热议问题