базовый установщик MSI, созданный с использованием VS, требует наличия администратора - PullRequest
2 голосов
/ 15 июля 2011

Есть похожие вопросы по SO, такие как this и this , однако оба предлагают ClickOnce, который я не могу (не могу) использовать.

У меня естьзапустил новый проект установки (InstallAllUsers = false) и указал Application Folder как [LocalAppDataFolder] [ProductName]

, который во время установки указывает на

C: \ Users \nonadmin \ AppData \ Local \ Setup1 \

При запуске установщика в Windows 7 без прав администратора я получаю следующее: enter image description here

С моей точки зрения, все, что делает MSI, это копированиеодин текстовый файл для C: \ Users \ nonadmin \ AppData \ Local \ Setup1 \, что-то, что можно сделать вручную без этого всплывающего окна, показывающего

В сообщении об ошибке что-то говорится о «неизвестном издателе»'- это происходит для любой MSI / EXE, который просто работает?(даже если он ничего не делает)

Как мне избежать этого диалога (а-ля ClickOnce) для пользователей без прав администратора?

1 Ответ

3 голосов
/ 15 июля 2011

Чтобы избежать запроса согласия, необходимо пометить пакет как «UAC-совместимый». (См. «Рекомендации по пакетам» в MSI SDK.) Похоже, что проекты развертывания Visual Studio не поддерживают этот бит, поэтому вам придется изменить пакет в сценарии после сборки (или использовать другой инструмент, например Wix , который поддерживает его напрямую).

Любой пакет или исполняемый файл, который не подписан Authenticode, отображается как «Неизвестный издатель».

...