Ахиллесова пята новой системы заключается в том, что изменение настроек UAC рассматривается как изменение параметров Windows. Учитывая новый уровень безопасности UAC, система вообще не предупреждает пользователя о подобных изменениях, даже если они призваны полностью отключить UAC.
Казалось бы — ну и что такого страшного? Ведь эти настройки все равно нельзя изменить без ведома пользователя. Как бы не так.
Мы с разработчиком Рафаэлем Риверой (Rafael Rivera) смогли доказать эту теорию на практике: созданный нами сценарий VBScript позволяет отключить Контроль учетных записей пользователей, эмулируя ряд клавиатурных нажатий, и при этом не требует подтверждения в диалоговом окне UAC. Чего-то подобного можно наверняка добиться и с помощью C++ EXE. Если хотите — можете скачать и попробовать сами, только учтите, что сценарий действительно отключает UAC.
К счастью, решить проблему очень легко:
Пока Microsoft не устранит эту проблему (если устранит вообще), пользователи бета-версии Windows 7 могут решить вопрос самостоятельно. Если изменить политику UAC на "Всегда предупреждать" (Always Notify), Windows 7 будет предупреждать пользователя всякий раз при изменении настроек Контроля учетных записей пользователей. Досадно, зато безопасно.
Еще досаднее другое: о проблеме уже сообщили Microsoft, но разработчики утверждают, что так и должно быть «по замыслу». Если так — то плохой же это замысел! По-моему, Microsoft зашел слишком далеко в своем стремлении удовлетворить UAC-ненавистников.