Всем привет,
есть такая проблема:
Невозможно привязать приложение к джобу
Подробности:
Приложение 1 запускает приложение 2 от другого пользователя используя CreateProcessWithLogonW.
Приложение 2 создаёт Job Object, запускает приложение 3 используя CreateProcess с флагами CREATE_SUSPENDED | CREATE_BREAKAWAY_FROM_JOB — второй флаг, чтобы избежать включения в джоб, который создаётся при выполнении CreateProcessWithLogonW.
После этого выполняется привязка приложения 3 к нашему Job Object.
Проблема в том, что если мы создаём процесс без флага CREATE_BREAKAWAY_FROM_JOB, то у нас происходит ошибка ACCESS_DENIED при попытке привязки процесса к джобу.
Если мы создаём с флагом, то у нас сама CreateProcess возвращает ACCESS_DENIED, т.е. видимо у job который управляет нашим 2 процессом запрещён побег.
Как можно избежать этих ошибок или убежать из джоба процесса 1? Добавление флага CREATE_BREAKAWAY_FROM_JOB к вызову CreateProcessWithLogonW ничего не даёт.