Как сопоставить программное обеспечение как диск?
Я пытаюсь создать программное обеспечение, как Ibackup.com. Однако я не уверен, как сделать программное обеспечение так, чтобы оно отображалось как локальный жесткий диск. И я не уверен, где начать исследовать это. Кто-нибудь, пожалуйста, дайте мне несколько советов.
4 ответа
Я могу указать вам на Dokan (пользовательская файловая система для Windows, такая как FUSE для Linux). Вы устанавливаете драйвер, а затем пишете соответствующее программное обеспечение для ответа на запрос ввода-вывода.
В более сложном ответе вы должны работать с NT DDK, чтобы написать драйвер, который был бы вашим программным обеспечением для того, чтобы быть файловой системой (посмотрите IFS: устанавливаемая файловая система), обратите внимание, что с ним очень сложно работать (в основном из-за сбоя). вашего программного обеспечения (BSOD), и вам, вероятно, понадобится программное обеспечение более высокого уровня, например Dokan, которое поможет вам в этом отношении.
Вам необходимо написать драйвер устройства, реализующий устанавливаемую файловую систему (IFS).
Лично я этого не делал, но вот часть программного обеспечения, которую я знаю, которая монтирует файловую систему Linux (ext2/3/4) в Windows: Ext2IFS.
А вот и SDK от Microsoft: комплект IFS
Посмотрите на команду Subst. Я предлагаю вам вызывать его извне, вместо того, чтобы имитировать то, что он делает, просто из-за всего, что может пойти не так.
(Примечание: правильный термин - том, а не диск.)
Просто для справки: виртуальные диски можно создавать с помощью нашего продукта Callback File System, который является поддерживаемым, документированным и поддерживаемым решением.