MEF how to handle access rights to PipelineSegments.store

404 views Asked by At

I have MEF application that creates PipelineSegments.store and AddIns.store files in program/Addins directory. However if I install this application in i.e. "C:\Program Files\My Application" and I run this application without admin rights, it fails because it dont have the access rights to the "C:\Program Files\My Application\Addins" folder.
What is the best practice solution to handle deployment of this MEF application? Is it good to include this files in installation and give them access rights or move addins directory to another accessible location? And what about the windows 8 where all files in Program Files are read only?
Many thanks, Marek

1

There are 1 answers

0
Panos Rontogiannis On BEST ANSWER

You can use the AddInStore.Update method that takes the location of the pipeline root as a parameter instead of the one taking the PipelineStoreLocation.

Similarly there is a AddInStore.FindAddIns overload taking the pipeline root as a parameter.

Instead of deploying your addins in Program Files you can use Program Data instead where a standard user has full access.

Have a look at the answer (from Microsoft Support) to a similar question.