Ask the Expert

How can I implement an FTP upload using VB.NET?

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.
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:

  • FTP Explorer in C#, K. Niranjan Kumar, 1/02, C# Corner
  • FTP component written with fully managed code, Alex Kwok, 5/02, CodeProject.com

    If neither of these samples is robust enough or complete enough for you, I'd recommend checking the third 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.

    This was first published in January 2003

  • There are Comments. Add yours.

     
    TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

    REGISTER or login:

    Forgot Password?
    By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
    Sort by: OldestNewest

    Forgot Password?

    No problem! Submit your e-mail address below. We'll send you an email containing your password.

    Your password has been sent to: