When I am trying to create the installer i am getting the following error:
The directory ProgramMenuDir
is in the user profile but is n
If following answer still still not working. Try to reboot your visual studio.
Just writing this up for some others who may still experience this problem even after following the answer for this question.
I had the same problem, and even after explicitly specifying the Directory in the RemoveFolder did not help me, I tried to put this DirectoryRef containing the shortcut install/uninstall somponents right after the TARGETDIR within the same fragment and it helped fix my issue.
As far as I can see, the problem is in the usage of <RemoveFolder/>
element. If the 'Directory' attribute is omitted, it takes the directory of the parent component. In your case, it is a directory with Id="EFIMonarch". This explains why you get the warning for the outer directory (ProgramMenuDir), but don't get it for EFIMonarch directory.
Try replacing:
<RemoveFolder Id='ProgramMenuDir' On='uninstall' />
with
<RemoveFolder Id='RemoveProgramMenuDir' Directory='ProgramMenuDir' On='uninstall' />
Also, it is a good idea to be explicit for every RemoveFolder element.
Hope this helps.
If other answers are still not working for you, try to check Suppress ICE validation
option, Visual studio will ignore these validations, just follow this route:
YourProject
-> Properties
-> Tool Settings