У меня есть простое старое приложение Windows Forms с установщиком WiX, и оно установлено для всех пользователей в папку Program Files
, как и следовало ожидать. Приложение размещает надстройки с помощью System.AddIn framework.
Поскольку платформе System.AddIn требуется запись в некоторые папки конвейера надстроек (AddIns
, AddInSideAdapters
, AddInViews
, Contracts
и HostSideAdapters
), я не знаю, в какое место лучше всего устанавливать надстройки. Я не могу установить в Program Files
, потому что у пользователя не будет разрешения на запись, и если я установлю в пользовательскую папку Application Data
, надстройки не будут установлены для других пользователей.
Я понимаю, что здесь есть противоречивые требования (пользователи не могут связываться с надстройками других пользователей, надстройки должны быть установлены для всех пользователей, и всем пользователям требуется разрешение на запись), но каков наилучший практический путь? ?
Жаль, что файлы, которые должна писать инфраструктура System.AddIn, не могут храниться отдельно в Application Data
, но это, похоже, ограничение фреймворка.