Здравствуйте! Очень странная проблема.
Моя аппликация работает под администратором + High Integrity Level.
Я в ней создаю процесс (просто CreateProcess). И ожидаю, что он тоже будет High Integrity Level.
Но это происходит только если моя аппликация не подписана. Если же она подписана, то новый процесс создается Medium Integrity Level.
Возможно, это происходит из-за того, что у меня в токене TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN, а файл нового процесса не имеет Integrity Level.
Но я ставил и в файл High Integrity Level. Не помогло. Убрать из токена TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN с помощью SetInformationToken(TokenMandatoryPolicy) не удается, поскольку не удается дать SE_TCB_NAME привилегию. Самое удивительное, что это происходит только в пописанной аппликации. Без подписи — все ок.