Как сказать CreateProcess я не требую повышения прав пользователя - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь запустить исполняемый файл, который содержит «update» в имени файла, например «mycoolupdate», без расширения.

Если бы это был обычный файл «mycoolupdate.exe», WindowsОбозреватель в Windows 7 автоматически определит, основываясь на имени файла, что требуется повышение прав пользователя.

Я думал, что это только поведение оболочки и не влияет на "CreateProcess" функцию WinAPI, особенно когда имя файлане содержит расширение .exe, но оно не соответствует действительности.Оказывается, что те же правила применяются к WinAPI.

Итак, GetLastError возвращает

Запрошенная операция требует повышения прав

Есть ли способскажите CreateProcess, что мне не требуется повышение прав пользователя, несмотря на подозрительное имя файла?

1 Ответ

0 голосов
/ 20 октября 2018

Начиная с Windows Vista, правильно написанное приложение должно иметь манифест приложения.

Как разработчик, вам необходимо предоставить его.

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

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