Поделиться через


Доступ к веб-папке WebDAV невозможно получить на клиентском компьютере под управлением Windows

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

Исходный номер базы знаний: 912152

Симптомы

Доступ к веб-папке WebDAV нельзя получить на клиентском компьютере под управлением Windows. При попытке сделать это может возникнуть следующие симптомы:

  • При использовании пути универсального именования (UNC) для доступа к веб-папке вы получите сообщение об ошибке, аналогичное следующему:

    \\server\webfolder\folder недоступен. Возможно, у вас нет прав на использование этого сетевого ресурса.
    Обратитесь к администратору этого сервера для получения соответствующих прав доступа.

    Устройство, подключенное к системе, не работает.

    ошибка 31 = ERROR_GEN_FAILURE

  • При сопоставлении буквы драйвера для доступа к веб-папке вы получите сообщение об ошибке, аналогичное следующему:

    Диск не отформатирован

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

  • При попытке перечислить веб-папку в командной строке вы получите следующее сообщение об ошибке:

    Файл не найден

Кроме того, каждый раз, когда вы пытаетесь получить доступ к веб-папке, потребление памяти увеличивается для процесса Svchost.exe, содержащего службу WebClient. Это увеличение может составлять около 20 мегабайт (МБ) для каждых 20 000 файлов в веб-папке. Память не освобождается при остановке службы WebClient. Память освобождается только в том случае, если компьютер перезагрузится.

Причина

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

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

    • Windows XP с пакетом обновления 1 (SP1) и обновлением системы безопасности 896426
    • Windows XP с пакетом обновления 2 (SP2)
    • Windows XP Professional x64 Edition
    • Windows 7
    • Windows 8
    • Windows 8.1
  • Папка WebDAV содержит множество файлов. Например, папка содержит 20 000 или более файлов. По умолчанию Windows XP перечисляет примерно 1000 файлов в одной веб-папке. Это число основано на параметре по умолчанию для следующего подраздела реестра:

    • Путь: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\.
    • Значение: FileAttributesLimitInBytes
    • Тип данных: DWORD
    • Значение по умолчанию: 1000 000 десятичных (1 МБ)
    • Описание. Этот подраздел реестра определяет максимальный общий размер всех атрибутов файла в одной папке, разрешенной перенаправлением WebDAV. Это ограничение атрибута охватывает все ответы PROPFIND и PROPPATCH.

Проблема возникает из-за того, что размер всех атрибутов файла, возвращаемых сервером WebDAV, гораздо больше, чем ожидалось. По умолчанию этот размер ограничен 1 МБ. Это ограничение связано с соображениями безопасности. Дополнительные сведения см. в сообщении об ошибке копирования папок при скачивании файла размером более 5000000 байт из веб-папки.

Обходное решение

Важно!

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

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

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\

Настройте значение реестра FileAttributesLimitInBytes в нужном размере, а затем перезапустите службу WebClient. Для этого выполните следующие шаги.

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

  2. Найдите и откройте следующий подраздел реестра:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\

  3. В меню Правка выберите пункт Создать, а затем Параметр DWORD.

  4. Введите FileAttributesLimitInBytes для имени DWORD и нажмите клавишу ВВОД.

  5. Щелкните правой кнопкой мыши FileAttributesLimitInBytes и нажмите кнопку "Изменить".

  6. В поле "Значение" введите значение, которое вы хотите использовать, и нажмите кнопку "ОК". Например, если веб-папка содержит 20 000 файлов, введите 200000000 в поле данных "Значение".

    Примечание.

    Если значение по умолчанию равно 1000 000 (1 МБ), Windows перечисляет не более 1 000 файлов в одной папке. Фактическое максимальное количество файлов может отличаться в зависимости от количества атрибутов файла или свойств файла. По умолчанию служба WebClient не запрашивает определенные свойства WebDAV. Поэтому сервер возвращает все атрибуты файла. Средство перенаправления веб-папок, интегрированных с Microsoft Office, запрашивает определенные свойства WebDAV.

  7. Закройте редактор реестра.

  8. Остановите и перезапустите службу WebClient. Для этого выполните следующие шаги.

    1. Нажмите кнопку Пуск, выберите команду Выполнить, введите cmdи нажмите кнопку ОК.

    2. Введите следующие команды, нажимая клавишу ВВОД после каждой из них:

      net stop webclient
      net start webclient