Назад | Перейти на главную страницу

Exe требует повышенных привилегий, если он не переименован

Запуск windows 7 sp1.

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

Когда я переименовываю exe, он больше не работает с повышенными привилегиями. Это из-за файла манифеста, который был встроен в exe при его компиляции, или из-за того, как MSI установил его? Как я могу предотвратить его запуск от имени администратора, не переименовывая его?

Изменить: я не думаю, что мне было ясно, о чем я действительно спрашивал. Придется ли разработчику перекомпилировать программу для устранения такого поведения?

Предполагая, что это приложение .NET, разработчик, вероятно, встроил манифест, который заставляет приложение запрашивать повышение прав при запуске. Манифест называется application.exe.manifest и необходимо определить AssemblyName как имя самой программы, поэтому, естественно, переименование файла .exe нарушит работу манифеста и не вызовет запрос.

Обходной путь - использовать вкладку «Совместимость» и установить флажок, чтобы всегда запускать от имени администратора, чтобы он запрашивал все время (или щелкните правой кнопкой мыши -> Запуск от имени администратора). В противном случае оставьте имя в покое или попросите разработчика изменить манифест.