При разработке программного обеспечения у пользователя может возникать необходимость симулировать файловые системы других операционных систем. Таким способом можно создавать программу в среде Windows и тестировать её работоспособность в окружениях Linux, MacOS, BSD-систем. Именно для упрощения данной задачи и используется библиотека Dokan Library.
Ключевое преимущество Dokan Library – это поддержка исполнения задач на уровне ядра Windows. Но это одновременно и недостаток: для полноценной работы библиотеки требуется установка скомпилированного драйвера (и выбор неправильного софта может привести к Blue Screen на этапе загрузки ОС).
Подключение же виртуальных дисков при этом выполняется через протокол SSH. Их файловая система значения не имеет, так как Докан преобразовывает поступающие запросы в такие, которые будут понятны ядру Windows, что и позволяет эмулировать неподдерживаемые файловые системы или вовсе создавать свои собственные. Это своего рода аналог FUSE, используемой в Linux-системах.
Для чего необходима Dokan Library и что это за программа: именно при отладке и проверке на работоспособность в окружении разных ОС библиотека чаще всего и используется. Это не отдельное приложение со своим GUI-интерфейсом, а набор системных исполнительных файлов под среду разработки Visual Studio. Библиотеку в форме исходного кода и exe-установщика можно скачать с соответствующей ветки GitHub. В дальнейшем потребуется установить актуальную версию Visual Studio, NuGet Package Manager и с данного пакетного менеджера импортировать нужную библиотеку (там она именуется как DokanNet).
Первоначально проект был разработан и вплоть до 2011 года поддерживался неким Hiroki Asakawa. Последняя созданная им публичная версия – 0.6.0. До 2014 года разработкой и поддержкой занималось GitHub-сообщество (исходный код открыт, публикуется под лицензиями LGPL и MIT).
Основные проблемы, которые возникают при использовании Докан:
Для удаления предусмотрен классический деинсталлятор, копирующийся в папку установки. Но даже после его завершения в системе остаётся драйвер, который может вызывать ошибки при установке других библиотек, эмулирующих работу файловой системы на уровне ядра.
Перед тем как удалить их вручную из папки System32 – driver (в Windows), рекомендуется очистить реестр от ранее интегрированных ключей (можно выполнить с помощью CCleaner). Естественно, что пользователь для этого должен обладать правами администратора. Предварительно также рекомендуется исключить библиотеку из Visual Studio через NuGet Package Manager или иной используемый пакетный менеджер.
Итак, Dokan Library – библиотека, позволяющая работать в среде Виндовс и пользоваться, эмулировать или даже создавать изначально неподдерживаемые файловые системы (например, EXT4, BTRFS). Исходный код открыт, опубликован на GitHub. Если у вас был опыт использования Dokan Library, просим рассказать об этом, а также о преимуществах, недостатках библиотеки, проблемах, с которыми при работе пришлось столкнуться.
напишите по-русски, как программировать! ничего не понятно!
Иван, русский язык и программирование не совместимы потому что русским языком можно только материться.