As far as I can see, the problem is using the <RemoveFolder/> element. If the Directory attribute is omitted, it accepts the directory of the parent component. In your case, this is a directory with Id = "EFIMonarch". This explains why you are getting a warning for the external directory (ProgramMenuDir), but not for the EFIMonarch directory.
Try replacing:
<RemoveFolder Id='ProgramMenuDir' On='uninstall' />
from
<RemoveFolder Id='RemoveProgramMenuDir' Directory='ProgramMenuDir' On='uninstall' />
It is also a good idea to be explicit for every RemoveFolder element.
Hope this helps.
Yan Sklyarenko Jul 20 '10 at 20:43 2010-07-20 20:43
source share