Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как поменять файл в папке system32


Как заменить системные файлы в Windows 7

Источник: www.oformi.net
--------

Всем привет, сегодня я расскажу вам как заменить системные иконки или другие файлы в Windows 7, статья для тех кто не знает как это сделать, а те кто знает прошу не писать такие вещи как, "Америку открыл" или " да ты Христофор Колумб" думаю с этим разобрались, а теперь начнем.

1. Отключаем родительский контроль, если это не сделано.
2. Делаем резервную копию файла(ов), например shell32.dll лежит по пути C:/Windows/System32 или файл explorer.ехе лежит по пути C:/Windows, для того что бы вернуть родные системные файлы.
3. Перезагружаем систему и грузимся в безопасном режиме ( нажимаем f8 )
4. После этого заходим в C:/Windows/System32 находим там файл shell32.dll нажимаем правую кнопку мышки и выбираем пункт Свойства / Безопасность / Дополнительно. Далее Владелец / Изменить, выбираем либо имя своей учётки либо админа нажимаем Применить затем ОК и ещё раз ОК. Теперь выбирам Разрешения выбираем ту запись которой мы дали права владельца и нажимаем Изменить разрешения снова выбираем ту запись которой мы дали права владельца и нажимаем Изменить, ставим все галочки и нажимаем ОК затем Применить, появится окно нажимаем Да и вот теперь снова ОК и в остальных окнах ОК.
5. после этого файл shell32.dll переименуйте на shell32.old, дальше можете уже забросить в папку C:/Windows/System32 свой файл shell32.dll.
6.Если вы так же хотите заменить другие системные файлы например explorer.ехе то вам придется проделать все то же самое что написано в пункте 4.
7. После всего этого делаем рестарт системы

ВНИМАНИЕ!!! Я не несу никакой ответственности за ваши действия.
С уважением ika1983 ( iracool )

Замена повреждённых или удалённых системных файлов Windows вручную

Для восстановления работоспособности Windows существует масса способов – точки отката, бэкап, бэкап и откат её реестра, восстановление целостности её файлов, переустановка Microsoft Visual C++ и прочих системных компонентов. Но только предварительно сделанный бэкап системы можно считать панацеей, универсальным «лекарством» от всех возможных проблем. Как быть, если нужно восстановить системные файлы, а у нас ни бэкапа нет, ни инструмент восстановления системных файлов не работает?

В таких случаях можно прибегнуть к замене системных файлов Windows, если они повреждены или удалены, вручную.

Замена системных файлов Windows вручную – операция, требующая определённых знаний и навыков в работе операционной системы от Microsoft. Нам нужно точно знать, какой файл системы повреждён или удалён, чтобы мы могли его заменить дубликатом. К примеру, если мы при открытии системного управления дисками видим уведомление типа этого,

это значит, что повреждён или удалён файл diskmgmt.msc – файл запуска непосредственно утилиты управления дисками. В этом случае мы можем попытаться решить проблему путём восстановления целостности системных файлов, т.е. запустить в командной строке известную команду sfc/scannow. Но этот механизм системы не всегда даёт положительные результаты и часто завершается уведомлением о невозможности восстановления.

В таком случае далее нужно предпринимать действия по восстановлению хранилища системных ресурсов и потом снова запускать sfc/scannow. Ручная замена проблемных системных файлов – более топорная операция, плюс к этому, требующая, как упоминалось, чёткого понимания, какие именно файлы по какому пути нужно заменять. Но если эти файлы и пути известны, то это более быстрое и надёжное решение проблемы.

Что для этого необходимо? Нам понадобится установочный ISO нужной версии Windows. Открываем его архиватором 7-Zip.

Открываем папку «sources», далее – «install».

Внутри файла «install» выбираем папку с тем или иным порядковым номером. Порядковые номера – это индексы редакций Windows. Если, например, в нашем случае нужно восстановить файл diskmgmt.msc, нам без разницы редакция, эта системная утилита есть в любой редакции Windows. Поэтому мы просто выберем редакцию Pro, она идёт под номером 4.

Но если файл нужного системного компонента есть только в определённой редакции, например, только в Pro, то необходимо указывать индекс конкретно этой редакции. А узнать индексы редакций в составе дистрибутива можно с помощью командной строки. Нужно подключить установочный ISO для отображения в системе и прописать в команде Dism путь к файлу install на борту этого ISO, вот так:

Dism /Get-WimInfo /WimFile:J:\sources\install.wim

Здесь вместо буквы J каждый должен подставить свою букву диска подключённого ISO. И если файл install имеет формат не «.wim», а «.esd», то, соответственно, в конце команды необходимо указать этот формат. В ответ на эту команду получим справку о соответствии индексам редакций Windows.

Определившись с редакцией, распаковываем нужный системный каталог. В нашем случае необходимо заменить файл утилиты diskmgmt.msc, следовательно, мы распаковываем каталог «Windows». Кликаем его и жмём «Extract».

Указываем путь распаковки.

И после распаковки ищем файл утилиты diskmgmt.msc.

При поиске обнаружилось несколько дубликатов diskmgmt.msc – в оригинальном месте хранения файла, в хранилище системных ресурсов (т.е. в папке WinSxS), в других системных подкаталогах. Мы берём файл, находящийся по исходному его пути хранения, в папке «System32». Копируем его.

И помещаем этот файл в папку «System32» внутри каталога «Windows» на диске С текущей системы.

Подтверждаем вставку или замену файла.

Вот и всё.

***

Мы рассмотрели простейший пример замены системных файлов вручную, чтобы осветить сугубо механизм этой процедуры. Необходимо понимать, что не со всеми системными файлами процесс замены произойдёт так вот просто, могут возникнуть трудности. Некоторые файлы Windows в активном состоянии не захочет заменять, и потребуется либо получение прав TrustInstaller, либо работа с LiveDisk. Также нужно учитывать, что после замены некоторых файлов, например, файлов активных системных процессов, прежде лицезрения результата проделанной работы, необходимо перезагрузить Windows.

Ну и главный совет: приведённая выше процедура рисковая, ибо, по сути, является вмешательством в структуру данных системы, потому перед проведением этой процедуры необходимо создать точку отката. Но лучше, конечно же, сделать полноценный бэкап.

Как исправить поврежденные системные файлы в Windows 10

Как исправить поврежденные системные файлы в Windows 10

Встроенный System File Checker — это инструмент в Windows 10, который можно легко запустить, чтобы заменить потенциально поврежденные или отсутствующие системные файлы на хорошие. Но может случиться так, что SFC не сможет заменить поврежденный файл и выдаст сообщение об ошибке. В этой заметке мы посмотрим, как сделать это вручную.

Как исправить поврежденный системный файл в Windows 10

Прежде всего, вам нужно открыть следующие файлы журнала и определить, какой именно файл был поврежден:

  • %userprofile%\Desktop\sfcdetails.txt
  • CBS.Log %WinDir%\Logs\CBS\CBS.log

Там вы сможете увидеть детали.

Как только вы узнаете имя и путь к файлу, вы должны будете получить права владельца этого поврежденного файла.

Для этого откройте командную строку с правами администратора и выполните следующую команду:

takeown /f FileNameAndPath

Здесь FileNameAndPath представляет путь и имя поврежденного файла. Например, повреждена wuapi.dll, введите:

takeown /f C:\Windows\System32\wuapi.dll

Далее вы должны предоставить Администратору полный доступ и контроль над этим файлом.

Для этого в той же командной строке и выполните следующую команду:

icacls FileNameAndPath /GRANT ADMINISTRATORS:F

В нашем примере будет так:

icacls C:\Windows\System32\wuapi.dll /grant administrators:F

Как заменить поврежденный системный файл Windows хорошей копией

Теперь вам нужно заменить поврежденный файл хорошей копией. Для этого откройте командную строку с правами администратора и выполните следующую команду:

copy NewFileLocation FileNameAndPath

Здесь NewFileLocation — это место, где вы сохранили хороший файл. Так что если вы сохранили его на свой рабочий стол, то в нашем примере это будет так:

copy C:\Users\<username>\Desktop\wuapi.dll C:\windows\system32\wuapi.dll

Это должно помочь!


Спасибо, что читаете! Подписывайтесь на мои каналы в Telegram, Яндекс.Мессенджере и Яндекс.Дзен. Только там последние обновления блога и новости мира информационных технологий.

Также, читайте меня в социальных сетях: Facebook, Twitter, VKOK.

Респект за пост! Спасибо за работу!

Хотите больше постов? Узнавать новости технологий? Читать обзоры на гаджеты? Для всего этого, а также для продвижения сайта, покупки нового дизайна и оплаты хостинга, мне необходима помощь от вас, преданные и благодарные читатели. Подробнее о донатах читайте на специальной странице.

Есть возможность стать патроном, чтобы ежемесячно поддерживать блог донатом, или воспользоваться Яндекс.Деньгами, WebMoney, QIWI или PayPal:

Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

Поделиться ссылкой:

Как изменить или удалить системный файл на Windows 8/10

/ Windows/ 0 комментариев

Время от времени нам нужно получить полный доступ к определенным системным файлам. Абсолютно не важно требуется ли это для удаления или изменения файла. Получение разрешения в Windows 8 немного отличается от других ОС этого семейства, но стоит сказать, что подобная процедура в Windows 10 почти не отличается, поэтому данная статья полезна владельцам устройств с десяткой.

Получение полного доступа к файлам

В начале, мы найдем файл, для операций над которым, мы хотим получить полное разрешение.
Щелкните на нужный файл ПКМ и затем «Свойства», где выберите вкладку «Безопасность».

Теперь нажмите кнопку «Дополнительно». В новом окне выберите пункт Изменить.

В открывшемся окне введите имя пользователя, которому требуется полное разрешение. Затем нажмите «Проверить имена», чтобы проверить, затем «ОК» и « Применить», а затем «ОК» еще раз.

Теперь мы можем получить разрешения. Нажмите «Изменить» и выберите « Полный доступ». Нажмите OK, а затем Да.

Теперь, когда мы все сделали, мы можем делать что хотим с файлом.

Как заменить системные файлы (обновляется) » Информация

Прочитайте две инструкции обязательно, так как в архивах бывают и те и другие варианты для замены системных файлов. Инструкция создана на Windows 7, однако, она отлично работает и на Windows 8.

Первый вариант:

  • Скачаем тему на нашем сайте, для примера возьмем "Sonye". Извлекаем файлы из архива и смотрим что находится в папке System Files. В ней у нас два каталога, которые содержат системный файл ExplorerFrame.dll для 32битной системы (x86) и для 64битной (x64). У нас система х86, воэтому выбираем соответствующую папку.

  • Этот файл (ExplorerFrame.dll) нам нужно скопировать в папку C:/WINDOWS/System32/, но система не позволит нам это сделать просто так. Первое, потому что он сейчас используется, а во вторых потому что для замены системных файлов нам нужно получить права на их изменение.
  • Как получить права на файл.
  • После того как права получены, необходимо переименовать заменяемый файл так, что бы после расширения стояло к примеру это ".old". Т.е. если нам нужно заменить файл ExplorerFrame.dll, то переименовать нам его нужно вот так "ExplorerFrame.dll.old". При этом, у файл ExplorerFrame.dll.old становится своего рода резервной копией, которую всегда можно вернуть обратно.
  • После переименования можно смело вставлять наш файл ExplorerFrame.dll, который лежал в теме. Вот что должно было получиться в папке C:/WINDOWS/System32/

  • Осталось перезагрузиться или перезагрузить файл Explorer.exe. Как перезагрузить explorer.exe:
    1. Запускаем диспетчер задач. Зажимаем Ctrl+Alt+Delete - выбираем "диспетчер задач"
    2. В диспетчерез задач переходим на вкладку "процессы" выбираем процесс "explorer.exe"и жмем "завершить процесс". (Панель задач и все окна должны пропасть).

    3. В этом же окне (в диспетчере задач) жмем "Файл - Новая задача (Выполнить)"и вводим explorer.exe.

      4. Жмем ОК и видим, все вернулось обратно, а кнопки навигации по папкам (Содержит файл ExplorerFrame.dll) поменялись на те, которые были с темой.
  • Видео инструкция:

    Как изменять системные файлы Windows 7 - TrustedInstaller

    В Windows 7 взамен Windows File Protection появилась технология Windows Resource Protection (сокр. WRP), которая защищает ключи реестра и папки, наряду с критически важными системными файлами.

    WRP работает, устанавливая дискретные списки доступа DACLs и ACL для защищаемых объектов. Разрешение на чтение-запись WRP-защищённых объектов допускается лишь процессам, использующим службу Windows Modules Installer (TrustedInstaller.exe). Теперь даже у администраторов нет прав полного доступа к системным файлам.

    Т.е. полный доступ для системных файлов и ключей реестра имеет только системный пользователь TrustedInstaller. И при попытке изменить системный файл Windows выдаст сообщение: “Запросите разрешение от TrustedInstaller на изменение этого файла termsrv.dll”

    Как получить права на изменение системных файлов в Windows 7?

    1. Щелкнуть по файлу правой кнопкой мыши и выбрать Свойства.
    2. Перейти на вкладку Безопасность.
    3. Нажать кнопку Дополнительно.

    4. В открывшемся окне Дополнительные параметры безопасности, на вкладке Владелец нажмите кнопку Изменить.

    5. В поле Изменить владельца на выделите группу Администраторы и нажмите OK.

    После этого появится сообщение:

    Жмем ОК.

    6. Снова идем в свойства файла, вкладка Безопасность. Жмем кнопку Изменить. Выбираем группу Администраторы и ставим галку Полный доступ, Применить.

    7. Теперь у всех Администраторов будет полный доступ к файлу.

    Обязательно после редактирования файла нужно вернуть права TrustedInstaller обратно. Иначе система может работать с ошибками.

    Восстанавливаем права TrustedInstaller

    1. Убрать полный доступ группе Администраторы на редактируемый файл. Т.е. выполнить пункт 6 из предыдущей главы и выставить права как на картинке:

    2. Выполнить пункты из предыдущей главы 1-5 и последнем окне, выбираем не пользователя, а жмем кнопку Другие пользователи и группы.

    Вводим имя учетной записи:

    NT SERVICE\TrustedInstaller

    Если компьютер доменный, то не забываем подправить Размещение, нужно выбрать локальный компьютер.

    Жмем Проверить имена и должен появится:

    3. Жмем везде ОК.

    Все права для системной учетной записи вернулись на прежнее место.

    [UPDATE] Данная заметка стала очень популярной, но у многих все равно возникают сложности при выполнении этой инструкции, поэтому я обновил все скриншоты и записал видео.

    .net - Как изменить права доступа к папке внутри System32 в C #?

    Переполнение стека
    1. Около
    2. Товары
    3. Для команд
    1. Переполнение стека Общественные вопросы и ответы
    2. Переполнение стека для команд
    .

    Как изменить каталог или папку

    Обновлено: 06.03.2020, Computer Hope

    Ниже приведена информация о том, как изменить каталог или папку во время работы на компьютере. Щелкните операционную систему, которую вы ищете, чтобы получить информацию о том, как изменить каталоги или папки.

    Microsoft Windows

    Чтобы изменить или открыть каталоги (папки) в Microsoft Windows, откройте Мой компьютер или Проводник Windows и дважды щелкните папку, которую хотите открыть.Например, если вы хотите перейти в папку «Boot» текущей папки «Windows», показанную на рисунке ниже, вы должны дважды щелкнуть папку «Boot». Вы также можете щелкнуть правой кнопкой мыши папку «Boot» и выбрать Open во всплывающем меню.

    Чтобы вернуться в предыдущую папку, щелкните стрелку назад (стрелка влево) или щелкните имя места в пути, который вы хотите переместить. Например, на картинке выше путь: «Этот компьютер> Локальный диск (C :)> Windows», чтобы вернуться к диску C :, мы должны щелкнуть текст «Локальный диск C:».

    Наконечник

    Вы также можете использовать кнопку «Назад» (кнопка большого пальца) на мышке, чтобы вернуться в папку.

    Наконечник

    Если у вас возникли трудности с двойным щелчком, вы также можете выделить папку, щелкнув ее один раз, а затем нажмите клавишу Enter, чтобы открыть папку.

    Наконечник Пользователи

    Microsoft Windows также могут изменять каталоги в командной строке Windows (MS-DOS), как описано ниже.

    MS-DOS и командная строка Windows

    Чтобы изменить каталоги в MS-DOS или командной строке Windows, используйте команду cd.Ниже приведены несколько основных примеров того, как эта команда может изменять каталоги.

    Перед тем, как менять каталоги, вам необходимо знать, какие каталоги доступны в текущем каталоге. Для этого используйте команду dir. Например, введите следующую команду, чтобы вывести список каталогов только в текущем каталоге.

     директ / объявление 

    См. Страницу команды dir для получения дополнительной информации и примеров этой команды. На рисунке показан пример команды tree, в которой перечислены все каталоги и подкаталоги из вашего текущего местоположения.

    Получив имя каталога, введите команду, аналогичную приведенной ниже, которая перемещается в каталог Windows.

     cd windows 

    Если вам нужно перейти в несколько каталогов с помощью одной команды, вы можете использовать команду, аналогичную приведенному ниже примеру. В этом примере команда переместится в системный каталог, который является подкаталогом каталога Windows.

     cd windows \ system 

    Если вам нужно вернуться в каталог (родительский каталог), вы можете использовать следующую команду.Например, если вы были в каталоге Windows, когда набирали эту команду, это переместит вас на один каталог назад в каталог C: \.

     кд .. 

    Если вы находились более чем в одном каталоге (например, C: \ Windows \ System32) и хотели вернуться в корневой каталог, вы можете использовать следующую команду.

     кд \ 

    Связанные страницы

    Linux и Unix

    Чтобы изменить каталоги в среде * nix, используйте команду cd. Ниже приведены несколько основных примеров того, как эта команда может изменять каталоги.

    Перед тем, как менять каталоги, вам необходимо знать, какие каталоги доступны в текущем каталоге. Для этого используйте команду ls. Например, введите следующую команду, чтобы вывести список каталогов только в текущем каталоге.

     ls -d * / 

    См. Страницу команды ls для получения дополнительной информации и примеров этой команды. Как только вы узнаете, что каталог доступен, введите команду, аналогичную приведенной ниже. Пример ниже изменяется в каталог public_html.

     cd public_html 

    Если вам нужно перейти в подкаталог с помощью одной команды, вы можете использовать команду, аналогичную приведенному ниже примеру.В приведенном ниже примере команда переместится в каталог cgi-bin, который находится в каталоге public_html.

     cd public_html / cgi-bin 

    Если вам нужно вернуться в каталог (родительский каталог), вы можете использовать следующую команду. Например, если вы были в каталоге public_html, когда набирали эту команду, она вернет вас в домашний каталог.

     кд .. 
    Заметка

    Между cd и двумя точками должен быть пробел.

    Если вы были в более чем одном каталоге (например,g., public_html / cgi-bin) и хотите вернуться в домашний каталог, вы можете использовать следующую команду.

     кд ~ 

    Чтобы вернуться в корневой каталог, измените каталог на / (одинарная косая черта):

     кд / 

    Связанные страницы

    .

    linux - Как изменить разрешения для папки и ее подпапок / файлов за один шаг?

    Переполнение стека
    1. Около
    2. Товары
    3. Для команд
    1. Переполнение стека Общественные вопросы и ответы
    2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
    3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
    4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
    5. Реклама Обратитесь к разработчикам и технологам со всего мира
    6. О компании

    Загрузка…

    .

    Именование файлов, путей и пространств имен - приложения Win32

    • 14 минут на чтение

    В этой статье

    Все файловые системы, поддерживаемые Windows, используют концепцию файлов и каталогов для доступа к данным, хранящимся на диске или устройстве. Разработчики Windows, работающие с API Windows для ввода-вывода файлов и устройств, должны понимать различные правила, соглашения и ограничения имен файлов и каталогов.

    Доступ к данным можно получить с дисков, устройств и сетевых ресурсов с помощью API файлового ввода-вывода. Файлы и каталоги, наряду с пространствами имен, являются частью концепции пути, который представляет собой строковое представление того, где получить данные, независимо от того, с диска ли они, устройства или сетевого подключения для конкретной операции.

    Некоторые файловые системы, такие как NTFS, поддерживают связанные файлы и каталоги, которые также следуют соглашениям и правилам именования файлов, как и обычный файл или каталог.Дополнительные сведения см. В разделах Жесткие ссылки и переходы, Точки повторной обработки и операции с файлами.

    Для получения дополнительной информации см. Следующие подразделы:

    Чтобы узнать о настройке Windows 10 для поддержки длинных путей к файлам, см. Ограничение максимальной длины пути.

    Имена файлов и каталогов

    Все файловые системы следуют одним и тем же общим соглашениям об именах для отдельных файлов: базовое имя файла и дополнительное расширение, разделенные точкой. Однако каждая файловая система, такая как NTFS, CDFS, exFAT, UDFS, FAT и FAT32, может иметь особые и разные правила формирования отдельных компонентов на пути к каталогу или файлу.Обратите внимание, что каталог - это просто файл со специальным атрибутом, обозначающим его как каталог, но в остальном он должен следовать всем тем же правилам именования, что и обычный файл. Поскольку термин каталог просто относится к особому типу файла в том, что касается файловой системы, в некоторых справочных материалах будет использоваться общий термин файл , чтобы охватить как концепции каталогов, так и файлов данных как таковых. По этой причине, если не указано иное, любые правила именования или использования или примеры для файла также должны применяться к каталогу.Термин путь означает один или несколько каталогов, обратную косую черту и, возможно, имя тома. Для получения дополнительной информации см. Раздел «Пути».

    Ограничения на количество символов также могут быть разными и могут различаться в зависимости от файловой системы и используемого формата префикса имени пути. Это дополнительно осложняется поддержкой механизмов обратной совместимости. Например, более старая файловая система MS-DOS FAT поддерживает максимум 8 символов для основного имени файла и 3 символа для расширения, всего 12 символов, включая разделитель точек.Обычно это имя файла 8.3 . Файловые системы Windows FAT и NTFS не ограничиваются именами файлов 8.3, потому что они имеют длинных имен файлов, поддерживают , но они по-прежнему поддерживают версию 8.3 длинных имен файлов.

    Условные обозначения

    Следующие фундаментальные правила позволяют приложениям создавать и обрабатывать допустимые имена для файлов и каталогов независимо от файловой системы:

    • Используйте точку, чтобы отделить базовое имя файла от расширения в имени каталога или файла.

    • Используйте обратную косую черту (\) для разделения компонентов пути . Обратная косая черта отделяет имя файла от пути к нему и одно имя каталога от имени другого каталога в пути. Вы не можете использовать обратную косую черту в имени фактического файла или каталога, потому что это зарезервированный символ, разделяющий имена на компоненты.

    • Используйте обратную косую черту в качестве части имен томов, например, «C: \» в «C: \ path \ file» или «\\ server \ share» в «\\ server \ share \ path \ file "для имен UNC.Дополнительные сведения об именах UNC см. В разделе «Ограничение максимальной длины пути».

    • Не учитывайте регистр. Например, считайте имена OSCAR, Oscar и oscar одинаковыми, даже если некоторые файловые системы (например, файловая система, совместимая с POSIX) могут рассматривать их как разные. Обратите внимание, что NTFS поддерживает семантику POSIX для чувствительности к регистру, но это не поведение по умолчанию. Для получения дополнительной информации см. CreateFile .

    • Обозначения томов (буквы дисков) также нечувствительны к регистру.Например, «D: \» и «d: \» относятся к одному и тому же тому.

    • Используйте любой символ в текущей кодовой странице для имени, включая символы Unicode и символы из расширенного набора символов (128–255), за исключением следующих:

      • Следующие зарезервированные символы:

        • <(менее)
        • > (больше)
        • : (двоеточие)
        • "(двойная кавычка)
        • / (косая черта)
        • \ (обратная косая черта)
        • | (вертикальный стержень или труба)
        • ? (вопросительный знак)
        • * (звездочка)
      • Целочисленное значение ноль, иногда называемое символом ASCII NUL .

      • Символы, целочисленные представления которых находятся в диапазоне от 1 до 31, за исключением альтернативных потоков данных, где эти символы разрешены. Для получения дополнительной информации о файловых потоках см. Файловые потоки.

      • Любой другой символ, запрещенный целевой файловой системой.

    • Используйте точку в качестве каталога , компонент в пути для представления текущего каталога, например «. \ Temp.txt». Для получения дополнительной информации см. Пути.

    • Используйте две последовательные точки (..) в качестве каталога , компонент в пути для представления родителя текущего каталога, например «.. \ temp.txt». Для получения дополнительной информации см. Пути.

    • Не используйте следующие зарезервированные имена для имени файла:

      CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, ​​COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 и LPT9. Также избегайте этих имен, за которыми сразу следует расширение; например, NUL.txt не рекомендуется. Для получения дополнительной информации см. Пространства имен.

    • Не заканчивайте имя файла или каталога пробелом или точкой. Хотя базовая файловая система может поддерживать такие имена, оболочка Windows и пользовательский интерфейс - нет. Однако допустимо указывать точку в качестве первого символа имени. Например, «.temp».

    Краткие и длинные имена

    Длинным именем файла считается любое имя файла, которое превышает короткое имя MS-DOS (также называемое 8.3 ) соглашение об именах стилей. Когда вы создаете длинное имя файла, Windows может также создать короткую форму имени 8.3, названную псевдонимом 8.3 или кратким именем, и также сохранить ее на диске. Этот псевдоним 8.3 может быть отключен по соображениям производительности либо для всей системы, либо для определенного тома, в зависимости от конкретной файловой системы.

    Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: 8.3 псевдонимы нельзя отключить для указанных томов до Windows 7 и Windows Server 2008 R2.

    Во многих файловых системах имя файла будет содержать тильду (~) внутри каждого компонента имени, которое является слишком длинным для соответствия правилам именования 8.3.

    Примечание

    Не все файловые системы следуют соглашению о замене тильды, и системы можно настроить так, чтобы отключить создание псевдонимов 8.3, даже если они обычно это поддерживают. Поэтому не предполагайте, что псевдоним 8.3 уже существует на диске.

    Чтобы запросить у системы имена файлов 8.3, длинные имена или полный путь к файлу, рассмотрите следующие варианты:

    В более новых файловых системах, таких как NTFS, exFAT, UDFS и FAT32, Windows хранит длинные имена файлов на диске в Unicode, что означает, что исходное длинное имя файла всегда сохраняется.Это верно, даже если длинное имя файла содержит расширенные символы, независимо от кодовой страницы, которая активна во время операции чтения или записи на диск.

    Файлы с длинными именами файлов можно копировать между разделами файловой системы NTFS и разделами файловой системы Windows FAT без потери информации об имени файла. Это может быть неверно для старых файловых систем MS-DOS FAT и некоторых типов файловых систем CDFS (CD-ROM), в зависимости от фактического имени файла. В этом случае, если возможно, подставляется короткое имя файла.

    Пути

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

    Если компонент пути является именем файла, он должен быть последним компонентом.

    Каждый компонент пути также будет ограничен максимальной длиной, указанной для конкретной файловой системы. В целом эти правила делятся на две категории: коротких и длинных . Обратите внимание, что имена каталогов хранятся в файловой системе как файлы особого типа, но правила именования файлов также применяются к именам каталогов. Подводя итог, путь - это просто строковое представление иерархии между всеми каталогами, которые существуют для определенного имени файла или каталога.

    Полностью квалифицированные и относительные пути

    Для функций Windows API, которые манипулируют файлами, имена файлов часто могут относиться к текущему каталогу, в то время как некоторые API требуют полного пути. Имя файла указывается относительно текущего каталога, если оно не начинается с одного из следующих символов:

    • Имя UNC любого формата, которое всегда начинается с двух символов обратной косой черты ("\\"). Для получения дополнительной информации см. Следующий раздел.
    • Обозначение диска с обратной косой чертой, например «C: \» или «d: \».
    • Одинарная обратная косая черта, например, «\ каталог» или «\ file.txt». Это также называется абсолютным путем .

    Если имя файла начинается только с указателя диска, но не с обратной косой черты после двоеточия, оно интерпретируется как относительный путь к текущему каталогу на диске с указанной буквой. Обратите внимание, что текущий каталог может быть или не быть корневым, в зависимости от того, что он был установлен во время последней операции «изменения каталога» на этом диске.Примеры этого формата:

    • «C: tmp.txt» относится к файлу с именем «tmp.txt» в текущем каталоге на диске C.
    • «C: tempdir \ tmp.txt» относится к файлу в подкаталоге текущего каталога на диске C.

    Путь также называется относительным, если он содержит «двойные точки»; то есть два периода вместе в одном компоненте пути. Этот специальный спецификатор используется для обозначения каталога над текущим каталогом, также известного как «родительский каталог».Примеры этого формата:

    • ".. \ tmp.txt" определяет файл с именем tmp.txt, расположенный в родительском каталоге текущего каталога.
    • ".. \ .. \ tmp.txt" указывает файл, который находится на два каталога выше текущего каталога.
    • ".. \ tempdir \ tmp.txt" указывает файл с именем tmp.txt, расположенный в каталоге с именем tempdir, который является одноранговым каталогом для текущего каталога.

    Относительные пути могут сочетать оба типа примеров, например «C: .. \ tmp.txt».Это полезно, потому что, хотя система отслеживает текущий диск вместе с текущим каталогом этого диска, она также отслеживает текущие каталоги в каждой из разных букв дисков (если в вашей системе их больше одной), независимо от какое обозначение привода установлено в качестве текущего привода.

    Ограничение максимальной длины пути

    В выпусках Windows до Windows 10 версии 1607 максимальная длина пути составляет MAX_PATH , что определяется как 260 символов.В более поздних версиях Windows для снятия ограничения требуется изменение раздела реестра или использование инструмента групповой политики. См. Полную информацию в разделе «Ограничение максимальной длины пути».

    Пространства имен

    Существует две основные категории соглашений о пространствах имен, используемых в API Windows, обычно называемых пространствами имен NT и пространствами имен Win32 . Пространство имен NT было разработано как пространство имен самого низкого уровня, в котором могли существовать другие подсистемы и пространства имен, включая подсистему Win32 и, соответственно, пространства имен Win32.POSIX - еще один пример подсистемы в Windows, которая построена на основе пространства имен NT. Ранние версии Windows также определяли несколько предопределенных или зарезервированных имен для определенных специальных устройств, таких как коммуникационные (последовательные и параллельные) порты и консоль дисплея по умолчанию как часть того, что теперь называется пространством имен устройств NT, и все еще поддерживаются в текущих версиях. Windows для обратной совместимости.

    Пространства имен файлов Win32

    Префикс и соглашения пространства имен Win32 обобщены в этом и следующем разделах с описанием того, как они используются.Обратите внимание, что эти примеры предназначены для использования с функциями Windows API и не обязательно работают с приложениями оболочки Windows, такими как Windows Explorer. По этой причине существует более широкий диапазон возможных путей, чем обычно доступен из приложений оболочки Windows, и приложения Windows, использующие это преимущество, могут быть разработаны с использованием этих соглашений о пространстве имен.

    Для файлового ввода-вывода префикс «\\? \» В строке пути указывает API-интерфейсам Windows отключить весь синтаксический анализ строк и отправить строку, которая следует за ним, прямо в файловую систему.Например, если файловая система поддерживает большие пути и имена файлов, вы можете превысить ограничения MAX_PATH , которые в противном случае применяются API Windows. Дополнительные сведения о обычном ограничении максимального пути см. В предыдущем разделе «Ограничение максимальной длины пути».

    Поскольку он отключает автоматическое раскрытие строки пути, префикс «\\? \» Также позволяет использовать «..» и «.» в именах путей, что может быть полезно, если вы пытаетесь выполнить операции с файлом с этими зарезервированными спецификаторами относительного пути как часть полного пути.

    Многие, но не все API файлового ввода-вывода поддерживают "\\? \"; вы должны просмотреть справочную тему для каждого API, чтобы быть уверенным.

    Обратите внимание, что API-интерфейсы Unicode следует использовать, чтобы убедиться, что префикс «\\? \» Позволяет превышать MAX_PATH

    Пространства имен устройств Win32

    Префикс «\\. \» Будет обращаться к пространству имен устройства Win32 вместо пространства имен файлов Win32. Таким образом, доступ к физическим дискам и томам осуществляется напрямую, без прохождения через файловую систему, если API поддерживает этот тип доступа.Таким образом можно получить доступ ко многим устройствам, отличным от дисков (например, с помощью функций CreateFile и DefineDosDevice ).

    Например, если вы хотите открыть системный последовательный коммуникационный порт 1, вы можете использовать «COM1» в вызове функции CreateFile . Это работает, потому что COM1 – COM9 являются частью зарезервированных имен в пространстве имен NT, хотя использование префикса «\\. \» Также будет работать с этими именами устройств. Для сравнения: если у вас установлена ​​плата расширения последовательного порта на 100 портов и вы хотите открыть COM56, вы не сможете открыть ее с помощью «COM56», потому что для COM56 нет предопределенного пространства имен NT.Вам нужно будет открыть его, используя «\\. \ COM56», потому что «\\. \» Переходит непосредственно в пространство имен устройства, не пытаясь найти предопределенный псевдоним.

    Другой пример использования пространства имен устройства Win32 - использование функции CreateFile с «\\. \ PhysicalDisk X » (где X - допустимое целочисленное значение) или «\\. \ CdRom X ». Это позволяет получить доступ к этим устройствам напрямую, минуя файловую систему. Это работает, потому что эти имена устройств создаются системой при перечислении этих устройств, а некоторые драйверы также создают другие псевдонимы в системе.Например, драйвер устройства, реализующий имя «C: \», имеет собственное пространство имен, которое также является файловой системой.

    API-интерфейсы

    , которые проходят через функцию CreateFile , обычно работают с префиксом «\\. \», Потому что CreateFile - это функция, используемая для открытия файлов и устройств, в зависимости от используемых вами параметров.

    Если вы работаете с функциями Windows API, вы должны использовать префикс «\\. \» Для доступа только к устройствам, а не к файлам.

    Большинство API-интерфейсов не поддерживают "\\.\ "; его распознают только те, которые предназначены для работы с пространством имен устройства. Всегда проверяйте справочную тему для каждого API, чтобы быть уверенным.

    Пространства имен NT

    Существуют также API-интерфейсы, позволяющие использовать соглашение о пространстве имен NT, но диспетчер объектов Windows делает это ненужным в большинстве случаев. Для иллюстрации полезно просматривать пространства имен Windows в обозревателе системных объектов с помощью инструмента Windows Sysinternals WinObj. Когда вы запускаете этот инструмент, вы видите пространство имен NT, начинающееся с корня, или "\".Подпапка под названием «Global ??» здесь находится пространство имен Win32. Именованные объекты устройств находятся в пространстве имен NT в подкаталоге «Device». Здесь вы также можете найти Serial0 и Serial1, объекты устройства, представляющие первые два COM-порта, если они есть в вашей системе. Объект устройства, представляющий том, будет чем-то вроде HarddiskVolume1, хотя числовой суффикс может отличаться. Имя «DR0» в подкаталоге «Harddisk0» является примером объекта устройства, представляющего диск, и так далее.

    Чтобы сделать эти объекты устройств доступными для приложений Windows, драйверы устройств создают символическую ссылку (символическую ссылку) в пространстве имен Win32, «Global ??», на свои соответствующие объекты устройств. Например, COM0 и COM1 под заголовком "Global ??" подкаталог - это просто символические ссылки на Serial0 и Serial1, «C:» - это символическая ссылка на HarddiskVolume1, «Physicaldrive0» - это символическая ссылка на DR0 и так далее. Без символической ссылки указанное устройство «Xxx» не будет доступно для любого приложения Windows, использующего соглашения о пространстве имен Win32, как описано ранее.Однако дескриптор этого устройства может быть открыт с помощью любых API-интерфейсов, которые поддерживают абсолютный путь пространства имен NT в формате «\ Device \ Xxx».

    С добавлением поддержки многопользовательского режима через службы терминалов и виртуальные машины возникла необходимость виртуализировать общесистемное корневое устройство в пространстве имен Win32. Это было достигнуто путем добавления символической ссылки «GLOBALROOT» в пространство имен Win32, которое вы можете увидеть в «Global ??» подкаталог инструмента браузера WinObj, о котором говорилось ранее, и доступ к нему можно получить по пути "\\? \ GLOBALROOT".Этот префикс гарантирует, что следующий за ним путь будет соответствовать истинному корневому пути диспетчера системных объектов, а не пути, зависящему от сеанса.

    Сравнение функций файловой системы

    .

    cmd - Как мне переместить все файлы из одной папки в другую с помощью командной строки?

    Переполнение стека
    1. Около
    2. Товары
    3. Для команд
    1. Переполнение стека Общественные вопросы и ответы
    2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
    3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
    4. Талант Нанимайте технических специалистов и создайте свой emplo
    .

    Разрешения при копировании и перемещении файлов - Windows Client

    • 3 минуты на чтение

    В этой статье

    В этой статье описывается, как проводник Windows обрабатывает разрешения для файлов и папок в различных ситуациях.

    Исходная версия продукта: Windows 10 - все выпуски, Windows Server 2012 R2
    Исходный номер базы знаний: 310316

    Сводка

    В Microsoft Windows 2000, Windows Server 2003 и Windows XP можно использовать файловую систему FAT32 или NTFS.Когда вы используете NTFS, вы можете предоставлять разрешения своим папкам и файлам для управления доступом к этим объектам. Когда вы копируете или перемещаете файл или папку на томе NTFS, то, как проводник Windows обрабатывает разрешения для объекта, зависит от того, копируется или перемещается объект внутри того же тома NTFS или на другой том.

    Дополнительная информация

    По умолчанию объект наследует разрешения от своего родительского объекта либо во время создания, либо когда он копируется или перемещается в свою родительскую папку.Единственное исключение из этого правила возникает, когда вы перемещаете объект в другую папку на том же томе. В этом случае исходные разрешения сохраняются.

    Дополнительно обратите внимание на следующие правила:

    • Группе «Все» предоставлены права Разрешить полный доступ для корневого каталога каждого диска NTFS.

    • Запретить разрешения всегда имеют приоритет над Разрешить разрешения.

    • Явные разрешения имеют приоритет над унаследованными разрешениями.

    • Если разрешения NTFS конфликтуют, или, например, если разрешения группы и пользователя противоречат друг другу, наиболее либеральные разрешения имеют приоритет.

    • Разрешения являются совокупными.

    • Для сохранения разрешений при копировании или перемещении файлов и папок используйте утилиту Xcopy.exe с переключателем / O или / X .

      Исходные разрешения объекта будут добавлены к наследуемым разрешениям в новом месте.

    • Чтобы добавить исходные разрешения объекта к наследуемым разрешениям при копировании или перемещении объекта, используйте утилиту Xcopy.exe с переключателями -O и -X .

    • Чтобы сохранить существующие разрешения без добавления наследуемых разрешений из родительской папки, используйте служебную программу Robocopy.exe, которая доступна в Windows 2000 Resource Kit.

    Вы можете изменить способ обработки разрешений проводником Windows при копировании или перемещении объектов на другой том NTFS.Когда вы копируете или перемещаете объект на другой том, объект наследует разрешения своей новой папки. Однако, если вы хотите изменить это поведение, чтобы сохранить исходные разрешения, измените реестр следующим образом.

    Важно

    Этот раздел, метод или задача содержат шаги, которые говорят вам, как изменить реестр. Однако при неправильном изменении реестра могут возникнуть серьезные проблемы. Поэтому убедитесь, что вы внимательно выполните следующие действия. Для дополнительной защиты создайте резервную копию реестра перед его изменением.Затем вы можете восстановить реестр, если возникнет проблема. Дополнительные сведения о резервном копировании и восстановлении реестра см. В разделе Резервное копирование и восстановление реестра в Windows.

    1. Щелкните Пуск , щелкните Выполнить , введите regedit в поле Открыть и нажмите клавишу ВВОД.

    2. Найдите и щелкните раздел реестра: HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ Explorer .

    3. В меню Изменить щелкните Добавить значение , а затем добавьте следующее значение реестра:

      • Имя значения: ForceCopyAclwithFile
      • Тип данных: DWORD
      • Значение данных: 1
    4. Закройте редактор реестра.

    Вы можете изменить способ обработки разрешений проводником Windows при перемещении объектов в один и тот же том NTFS. Как уже упоминалось, когда объект перемещается в том же томе, объект по умолчанию сохраняет свои разрешения.Однако, если вы хотите изменить это поведение, чтобы объект унаследовал разрешения от родительской папки, измените реестр следующим образом:

    1. Щелкните Пуск , щелкните Выполнить , введите regedit и нажмите клавишу ВВОД.

    2. Найдите и щелкните подраздел реестра: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer .

    3. В меню Изменить щелкните Добавить значение , а затем добавьте следующее значение реестра:

      • Имя значения: MoveSecurityAttributes
      • Тип данных: DWORD
      • Значение данных: 0
    4. Закройте редактор реестра.

    5. Убедитесь, что учетная запись пользователя, которая используется для перемещения объекта, имеет набор разрешений Изменить разрешения . Если разрешение не задано, предоставьте учетной записи пользователя разрешение Change Permissions .

    Примечание

    Значение реестра MoveSecurityAttributes применяется только к Windows XP и Windows Server 2003. Это значение не влияет на Windows 2000.

    .

    Смотрите также