У меня проблема с UAC, и я выполняю неинтерактивный процесс как другой пользователь (такие API, как CreateProcessAsUser или CreateProcessWithLogonW).
Моя программа предназначена для следующих действий:
1) Создать новую учетную запись пользователя Windows (проверить, работает правильно)
2) Создать неинтерактивный дочерний процесс как новую учетную запись пользователя (происходит сбой при включенном UAC)
Мое приложение содержит манифест администратора и корректно поднимается при включенном контроле учетных записей для выполнения шага 1.
Но шаг 2 не выполняется правильно. Я подозреваю, что это потому, что дочерний процесс, который выполняется как другой пользователь, не наследует повышенные права моего основного процесса (который выполняется как интерактивный пользователь).
Я хотел бы знать, как решить эту проблему. Когда UAC выключен, моя программа работает правильно. Как я могу иметь дело с UAC или необходимыми повышенными правами в этой ситуации?
Если это помогает, дочерний процесс должен запускаться от имени другого пользователя, чтобы настроить шифрование файлов для новой учетной записи пользователя.