WiX: при установке приложения в ProgramFilesFolder возникает исключение AccessDenied. Зачем? - PullRequest
2 голосов
/ 05 октября 2011

У меня есть приложение C # и проект WiX для установки этого приложения в ProgramFilesFolder .Мое приложение имеет элемент просмотра, который использует файл DLL.Если я запускаю приложение с обычными правами пользователя, я получаю сообщение об ошибке, и элемент Viewer в моем приложении не загружается с сообщением об ошибке, что мой элемент Viewer не имеет доступа к файлу DLL.Как администратор, он работает нормально.В моем проекте WiX я установил свойство perMachine, и у меня есть несколько других файлов DLL, используемых в моем приложении, и я не получаю такую ​​ошибку.

Если я устанавливаю свое приложение вне ProgramFilesFolder , то нетпроблема.Что я должен делать?В VS2010 я могу установить Build Action и Копировать в выходной каталог для каждого файла, нужно ли устанавливать что-то особенное?Или в элементе File WiX есть опция для установки свойств доступа?

Ответы [ 2 ]

2 голосов
/ 06 октября 2011

Вы сталкиваетесь с таким поведением, потому что часть вашего приложения (элемент просмотра) требует разрешения на запись в папку установки.

Решение состоит в том, чтобы запросить повышение прав через манифест приложения .Таким образом, ваше приложение всегда работает с правами администратора.

1 голос
/ 05 октября 2011

Выдает ли исключение при установке или при использовании приложения?

Если последнее, единственное, что у меня есть, это то, что рассматриваемая DLL пытается что-то записать в одну из защищенных папок, Program Files inэтот случай.Вы должны устранить это, чтобы оно работало без прав администратора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...