Запустите установщик NSIS из приложения C ++ без запроса разрешения UAC

У меня есть приложение C ++, работающее в качестве службы. И я хочу запустить мой установщик NSIS из этого сервиса. Является ли это возможным? Если да, как я могу этого достичь?

1

Решение

Если вы хотите запустить программу установки от имени того же пользователя, что и ваша служба, и эта служба работает с высоким уровнем целостности или системой, вы можете просто использовать CreateProcess или же ShellExecute запустить установщик.

Если вы хотите запустить установщик как пользователь, который в данный момент вошел в систему, вам нужно использовать CreateProcessAsUser но все становится сложнее, если вы идете по этому пути. Возможно, не было ни одного зарегистрированного пользователя или их может быть больше одного. Как только вы решили, с какого пользователя вы хотите запустить процесс, вы можете получить его токен с WTSQueryUserToken,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]