2014-11-17 3 views
0

Мы создали службу WebDav с вашим движком и имеем одну проблему при создании новой папки или файла: Новая папка/файл создается успешно, но не отображается в Проводник Windows. Только если вы нажмете F5, появится новая папка/файл (и имя уже выбрано для редактирования). Такое поведение воспроизводится даже при использовании пустого решения WebDav. Мы можем воспроизвести это на Windows 7 и Windows 8 (8.1) с помощью WebDav .NET Server 3.8 и последней версии 3.9.Проводник Windows не обновляется после CreateFolder (новая папка)

Есть ли способ обойти эту «проблему обновления»?

ответ

0

Я предполагаю, что эта проблема находится в проводнике Windows на одном компьютере. Скорее всего, серверный код WebDAV не работает с некоторым исключением. Вот некоторые идеи, как определить, что это неправильно:

  1. Размонтируйте сетевые соединения исполнения «чистое использование */DELETE» в командной строке, это будет отключить подключение WebDAV слишком и имитировать «чистую» среду.

  2. Повторите попытку воспроизведения и просмотрите файл журнала WebDAV. По умолчанию он находится в папке/App_Data/WebDAV/Logs /. Есть ли исключения?

  3. Используйте инструмент Fiddler или любой другой отладочный прокси для захвата и проверки HTTP-запросов. Есть ли неудачные запросы?

В случае, если вы создаете папку/файл на одном компьютере с помощью Windows Explorer (драйвер Microsoft Mini-редиректор) или Hit Ajax Браузер файлов и ожидать, что список файлов для автоматического обновления на другом компьютере, это не будет работать , Mini-redirector не поддерживает никаких уведомлений с сервера, и WebDAV не отправляет никаких уведомлений, вам нужно обновить список файлов вручную, чтобы увидеть созданные новые элементы.

0

Я нашел это видео на Youtube, что объясняет очень много деталей, как решить эту проблему: https://www.youtube.com/watch?v=UUiCPsQquqc

Это немного длинно, поэтому я просто быстро суммировать это здесь:

  • Причиной этих проблем являются одна или несколько (поврежденных) оболочечных расширений, которые предотвращают обновление Windows Explorer
  • Чтобы исправить это, откройте regedit.exe (требуется привилегии администратора), выполните поиск ключа реестра «DontRefresh», , Если значение равно «1», установите значение «0». Для этого ключа может быть несколько совпадений, поэтому повторяйте до тех пор, пока все клавиши не будут иметь значение «0».
  • Это может не сработать немедленно, возможно, вам придется убить и перезагрузить процесс explorer.exe (проще всего сделать это с Диспетчером задач). Или вы можете просто перезагрузить компьютер. В моем случае это сработало немедленно.

Согласно видео, ключи должны находиться только под HKEY_CLASSES_ROOT/CLSID, но в моем случае я мог только найти такие ключи в HKEY_LOCAL_MACHINE/Классы/Wow6432Node/CLSID.

Я понял, что имеет смысл просто искать полный реестр, это не займет много времени.

 Смежные вопросы

  • Нет связанных вопросов^_^