Думаю, я бы немного добавил к этому.В моем случае мне нужно было изменить файл конфигурации как часть патча с действием XmlConfig.Я столкнулся с исходной проблемой, а также попытался обойти ее, просто вставив туда элемент CreateFolder.Но с этим есть загвоздка.Если ваш компонент является частью патча, размещение там записи CreateFolder делает его не удаляемым .Это означает, что вы не можете откатить патч.
В итоге я создал другую KeyPath для компонента.Я дал ему ключ реестра в качестве KeyPath, и он перестал беспокоить меня по поводу записи CreateFolder.Это означает, что он будет делать все, что вы хотите, чтобы он делал при установке и удалении, и используйте ключ реестра, который вы ему дали, чтобы отслеживать, установлен ли компонент.
<RegistryKey Root="HKLM" Key="[REGISTRYKEY]\Settings\[TITLE]" Action="createAndRemoveOnUninstall">
<RegistryValue Action="write" Type="integer" Name="MACHINEMEMORYLIMIT" Value="1" KeyPath="yes"/>
</RegistryKey>
(В этом случае REGISTRYKEY and TITLEдва свойства мы передали в установщик)