Как объяснил Роб Меншинг :
KeyPath для компонента является
единственный ресурс, который Windows
Установщик использует, чтобы определить, является ли
Компонент "существует" на машине.
Это означает, что когда установщик Windows решает, устанавливать ли ваш компонент, он сначала проверяет, присутствует ли ресурс keypath. Если это так, ни один из ресурсов в компоненте не установлен.
Наличие ресурса keypath также определяет, был ли компонент поврежден или пропал без вести при «ремонте» MSI.
Если ресурс ключевого пути является версионным файлом, установщик Windows будет считать его существующим, только если найдет файл с равной или более поздней версией.
В вашем конкретном примере у вас есть компонент, который удаляет папку при удалении. Этот компонент будет установлен только в том случае, если данный раздел реестра еще не существует. Добавление ключа реестра для использования в качестве пути к ключу является обычной уловкой, когда вам нужен путь к ключу для компонента, который устанавливает ресурсы, которые сами не могут быть использованы в качестве пути к ключу, например ярлык .