Моему установщику не удается зарегистрировать DLL с E_ACCESSDENIED, и у DLL есть значок замка при просмотре в Проводнике - PullRequest
0 голосов
/ 27 января 2012

Я использую Inno Setup в качестве моего установщика.Программа установки не смогла зарегистрировать DLL.Оказалось, что regsvr32 не удалось с кодом ошибки 0x80070005, что означает E_ACCESSDENIED.Когда я открыл «C: \ Program Files \ MyProgram \» в Проводнике, он показал какое-то диалоговое окно UAC, запрашивающее повышенные привилегии для просмотра.Я заметил, что все файлы имеют на своих замках висячий замок.Это первый раз, когда я видел этот замок.

enter image description here

Я проверил в Process Explorer, и установщик был запущен из учетной записи обычного пользователя (с повышенными привилегиями).

Обновление

Хочу добавить, что эта ошибка до сих пор случалась только один раз.Когда я закрыл установщик и снова запустил его (тот же самый исполняемый файл, я не внес в него никаких изменений), все прошло нормально, и файлы в каталоге программы получили обычные разрешения.Это не постоянно воспроизводимая ошибка, более похожая на ошибку один на миллион, но если она однажды произошла на моей машине, то, скорее всего, она также произошла на пользовательских машинах.

1 Ответ

1 голос
/ 27 января 2012

Поскольку он сообщает, что у вас нет доступа к этой папке (и, в свою очередь, к этим файлам).Проверьте разрешения, так как это НЕ состояние по умолчанию и должно быть явно изменено.

...