Краткий ответ: предоставьте себе разрешения NTFS для папки назначения
Если вы не хотите отключать UAC (и сталкиваетесь с последствиями), вы можете легко обойтись без раздражающих. Вы уверены? подсказывает, предоставляя себе полный контроль над структурой папок, в которую вы копируете файлы. Плохо делать это с корнем тома C:, поэтому было бы разумно создать в C: папку, к которой у вас есть полный доступ, а затем создать все необходимые подпапки в ней.
Длинный ответ: Файловые операции запускают UAC, потому что (подождите ...) Вы не администратор!
Хорошо ... вы админ ... своего рода. Читайте дальше, чтобы узнать, что это значит.
UAC выдает запрос на файловые операции, поскольку ваша учетная запись пользователя не имеет как минимум разрешений NTFS на запись в целевую папку. Вы, вероятно, думаете: «Но я администратор!У меня есть разрешения на все!« Если бы в 2001 году была выпущена Windows XP, вы были бы совершенно правы. Но начиная с Vista и появления контроля учетных записей пользователей (UAC), даже члены локальной группы администраторов не рассматриваются как администраторы до тех пор, пока после нажатия «Да» в приглашении повышения уровня UAC.
Когда пользователь с правами администратора (в частности, член группы администраторов локального компьютера) входит в систему в современной версии Windows, ОС создает два токена входа в систему (версии до Vista генерировали только один). Один из токенов сохраняет административные права, в то время как другой лишается их - эффективно переводит его в непривилегированный аккаунт. Именно этот последний токен вы считаете своим сеансом входа в систему, потому что этот токен впервые представлен для различных операций при работе в Windows.
Имея в виду эту информацию, в частности, что ваш непривилегированный токен входа представлен первым, подумайте, что происходит при доступе к папке. Если у вас есть права на папку (т. Е. Имя вашей учетной записи Windows указано в ACL как разрешение для папки), у вашей непривилегированной учетной записи есть доступ, и нет запроса UAC.
Однако, если ваш пользователь не указан в ACL, но группа «Администраторы» получает доступ, а вы являетесь членом группы «Администраторы», Windows отображает приглашение UAC. Если вы ответите «Да» на приглашение, Windows попытается снова выполнить операцию с файлом, используя ваш второй маркер входа с правами администратора, после чего вы получите доступ.
Итог: если вы хотите избежать UAC-запросов на файловые операции, просто убедитесь, что ваши разрешения для папки назначения предоставляются либо непосредственно вашей учетной записи пользователя, либо группе, членом которой вы являетесь, кроме группы «Администраторы» на локальном компьютере.
Просто, чтобы сохранить интерес, правила разные, когда вы входите со встроенной учетной записью администратора. Подробнее об этом читайте в моем ответе здесь.