2011-05-18 80 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組件)並將它們結合到您的應用程序中。