Вызов GetDiretivers в Champaction MSI бросает исключение безопасности только тогда, когда все пользователи

StackOverflow https://stackoverflow.com/questions/3808832

Вопрос

У меня есть пользовательские действия, которые я использую для развертывания некоторых файлов, которые сидят рядом с MSI в пакете обслуживания. Мои пользовательские действия передаются Path MSI через параметр OriginalDatabase, и я проверяю, есть ли папка рядом с ней. Ничего не сумасшедшего, но была боль в заднице, чтобы выяснить.

Установка одного или нескольких пользователей из файлов скопировано локально работает как чемпион. Установка одного пользователя при запуске Setup.exe из сетевой ресурсы работает нормально, однако, когда я устанавливаю всех пользователей из сетевой доли, я получаю исключение безопасности.

В вопросе об этом:

DirectoryInfo[] subdirectories = workingDirectoryInfo.GetDirectories("Foo");

Пользовательское действие проходит с SecurityAction.Demand Поэтому у меня должен быть весь доступ, который мне нужен.

Любой вход любой любой может обеспечить, значительно ценится.

Спасибо, Кейси

Это было полезно?

Решение

Я верю, что когда вы устанавливаете для каждого пользователя, сторона сервера не нужно поднять, чтобы выполнить транзакцию, чтобы она оказывала окрашивание интерактивного пользователя и может получить доступ к файлам. Когда вы устанавливаете для всех пользователей, он должен поднять, так что теперь он в основном работает в качестве системы, которая будет использовать учетную запись машины для доступа к файлам и Boom, вы получаете ошибку разрешений.

Могу ли я спросить, почему эти файлы не в вашем установке? Там нет какого-то способа, чтобы вы могли их включить, чтобы вам не нужно иметь пользовательские действия? В противном случае вам, возможно, придется написать пользовательские действия, которые обнаруживают, что исходное использование является исходной долей сети и предотвращает установку, если пользователь не копирует все файлы вниз перед запуском.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top