2011-05-18 75 views
0

我正在创建一个应用程序来同步我的计算机上的本地文件夹与FTP服务器。如何临时将FTP服务器映射到网络文件夹?

因为我不想直接通过它的地址访问FTP服务器,因为它会非常复杂,我不想将服务器临时映射到网络文件夹,以便我的同步算法可以工作它就像在本地文件夹。

有没有这样的事情:

//Map the server to the specified path 
FtpMapper.MapFtpServer("ftp://myserver/", "username", "password", "M:\\"); 

DirectoryInfo info = new DirectoryInfo("M:\\"); 

/* Do some work on the directory */ 

FtpMapper.UnmapFtpServer(); 
+0

GNOME和KDE内置这种设备,但Windows不支持。你可能必须自己写。 – Broam 2011-05-18 14:15:39

+0

Java有[Commons VFS](http://commons.apache.org/vfs/index.html),但似乎没有.NET端口。 [这个问题](http://stackoverflow.com/q/1257671/16487)要求一个等价物,但没有接受者。 – 2011-05-18 14:45:52

回答

0

没有这样的库,据我所知。

这需要一个windows文件系统驱动程序,它可以理解FTP命令和一个.NET包装器。

我已经看到这样的驱动程序(没有包装)作为商业FTP套件的一部分,但没有开源或免费的。

0

NetDrive吹嘘提供了一个SDK,可以让你在你的应用程序中使用它(netdrive)。如果您不想编写FTP代码(或使用第三方FTP组件),这是您唯一的选择。

您的任务的编程解决方案将采取我们的Callback File System(用于创建虚拟驱动器)和我们的FTPSBlackbox(用于.NET的FTP/FTPS组件)并将它们结合到您的应用程序中。