Q. How can I implement an FTP upload using VB.NET? I can shell to the FTP program on the user computer, but that doesn't allow me to check for errors or allow me to determine when it has completed. I need to be able to upload files from the VB.NET application and check for both completion and success.

Asked by Ian. Answered by the Wonk on January 27, 2003


As wonderful and full-featured as .NET is, it doesn’t (yet) do everything. One thing that it doesn’t do is provide direct support for FTP, although it provides some nice hooks where FTP support could be added. At this point, you can dig in and build your own FTP support from scratch, but I wouldn’t recommend it. Instead, I recommend searching on Google’s Microsoft-specific search page for “.NET” and “FTP” and see what you get. Combining that with a quick search on CodeProject.com, I found two examples of an FTP client built for .NET:



If neither of these samples is robust enough or complete enough for you, I’d recommend checking the 3rd component vendors. For example, I happen to know that Mabry Software has an FTP component for .NET and, while I don’t have any experience with it myself, I’m a big Zane Thomas fan, who’s one of the Mabry founders.


I have feedback on this Ask The Wonk answer