Несколько слоев папок с данными приложения - Windows7 - PullRequest
4 голосов
/ 02 августа 2011

В командном окне Если я перехожу к c: \ users \ me и выполняю команду «dir», я вижу 13 папок, но никаких файлов.Если я выполняю команду «dir / s», я вижу тысячи файлов, но меня беспокоит то, что я вижу пути вроде этого:

C: \ Users \ me \ AppData \ Local \ Application Data \ Application Data \Данные приложения \ Данные приложения \ Данные приложения \ Данные приложения ... и, наконец, что-то вроде Microsoft \ VisualStudio или Google \ Chrome и т. Д.

Что это за слои и слои папок данных приложения?Если я буду искать с помощью AgentRansack какой-то файл глубоко в этих слоях, я могу увидеть 15 или 20 экземпляров файла на разных уровнях в этой иерархии.Если я удаляю один, он говорит, «Удалить сбой», но он удаляет его из списка.Итак, похоже, что в этих папках есть что-то «виртуальное» ... Есть какие-нибудь подсказки?

1 Ответ

3 голосов
/ 03 августа 2011

DaddyMan опубликовал это (перефразировано):

Папка «Данные приложения» продолжает реплицировать себя как подпапку, когда вы изменяете разрешения для папки «Данные приложения», обычно предоставляя себе полные разрешения для папки c: \ users \. Папка Application Data на самом деле является соединением, которое указывает на его родительскую папку.

C: \ Users \\ AppData \ Local \ Application Data \

указывает на

C: \ Users \\ AppData \ Local \

Это сделано для предотвращения рекурсии, когда приложение, не поддерживающее Windows 7, сканирует «папку» данных приложения, а также является причиной сообщения «Доступ запрещен», который вы получаете в определенных папках в папке c: \ users \.

Оригинальная ссылка .

Кроме того, Шон Б. Кин - MVP - опубликовал это:

Каждый раз, когда приложение пытается сохранить файл в непослушном месте (например, C: \ Windows или C: \ Program Files), Windows заставит фактическое сохранение оказаться в месте внутри вашей пользовательской папки (C: \ Users \ Имя пользователя \ LocalSettings \ VirtualStore \ Program Files). Это заставляет программу думать, что файл действительно находится в папке Program Files, но в действительности он находится где-то внутри вашей пользовательской папки.

Эта виртуализация (обман программы) необходима для того, чтобы плохо созданные приложения, которые сохраняются в непослушных местах, продолжали работать. Альтернативой является то, что программа пытается сохранить данные, а затем вылетает, когда не может получить доступ к папке Program Files. Если бы Windows этого не делала, программе требовался бы доступ администратора каждый раз, когда она запускалась - что очень небезопасно, плюс это делало бы невозможным использование программы в корпоративных средах, где пользователям не разрешено быть администраторами.

Будьте уверены, что несколько слоев, которые вы видите, являются результатом перенаправления папок и виртуализации (также называемой точками соединения). Нет необходимости очищать их или исправлять, и мы советуем вам не просматривать эти файлы.

Для получения лучших результатов сохраните файлы TCW в папке «Документы», а не в «Программных файлах» или в другом месте, что предотвратит любые странности виртуализации.

Исходная ссылка здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...