Comment mapper un dossier de partage ftp sur un lecteur local à l’aide de C #?

Comment mapper un dossier de partage ftp sur un lecteur local à l’aide de C #? Y a-t-il une bibliothèque de classe disponible pour cela?

Je souhaite obtenir les mêmes fonctionnalités que les offres NetDrive ( http://www.netdrive.net/ ) via FTP?

Peut-être pouvez-vous tirer parti du travail de quelqu’un d’autre et prendre un bon départ. Les fabricants de NetDrive, par exemple, proposent un SDK – pas sûr de ce que cela nécessite / coûte, cependant. Mais cela pourrait valoir une enquête, non?

Et peut-être que si vous combinez cette approche pour définir un site FTP distant en tant que partage de réseau Windows, puis que vous utilisez ce code en C # pour monter un partage de réseau en tant que lecteur, vous pourrez faire votre travail 🙂

C’est un très gros problème – si vous voulez réellement un lecteur local, par exemple X: \, pour accéder à un site FTP, vous aurez sûrement besoin d’écrire un pilote. Ce n’est pas une tâche facile .

Si vous souhaitez simplement qu’il apparaisse quelque part dans l’explorateur Windows, vous pouvez utiliser l’extension shell comme le suggère la réponse de Marco. Mais ne vous attendez pas à pouvoir le traiter comme un trajet normal.

Pour créer un lecteur virtuel ou un dossier sur un lecteur existant et exposer le contenu du serveur FTP distant de cette manière, vous avez besoin d’un pilote de système de fichiers. Ou use peut utiliser notre produit CBFS (Callback File System) qui vous permet d’écrire le code en mode utilisateur et comprend un pilote de système de fichiers pré-créé. CBFS inclut un exemple, SFTPDisk, qui répond exactement à vos besoins, mais avec le protocole SFTP (SFTP n’est pas un protocole FTP mais un protocole de transfert de fichiers SSH).

Notez que dans FTP il n’ya pas de fonction pour télécharger un bloc au milieu du fichier existant. Cela rend certaines opérations d’écriture de fichier plus délicates qu’avec SFTP ou un système de fichiers local – vous devrez peut-être mettre en cache tout le fichier et le télécharger de manière asynchrone à la fermeture du client.

Un projet en C # utilise un dossier FTP comme lecteur virtuel -> http://amalgam.codeplex.com/ (il utilise dokan).

Il existe un programme gratuit qui fait la même chose -> http://www.ferrobackup.com/ftpuse/