Library tutorials & articles

Interacting with the web using WebRobot v1.0

Uploading files to YouSendIt: Adding fields

With Mozilla Firefox's Page Info dialog (right click on the page, then click Page Info), we can see the form fields that have been added via JavaScript to the form "tform". Of interest to us right now are the "rcpt" field, "fname" field, and "rurl" field.



Let's add the required fields to the form:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim wrobot As New foxtrot.xray.WebRobot
    wrobot.Base = "http://www.yousendit.com/"
    wrobot.LoadPage("/") 'getting file upload form from page
    Dim wform As foxtrot.xray.Form = wrobot.GetFormByName("tform")
    wform.AddField("text", "rcpt")
    wform.AddField("file", "fname")
    wform.AddField("hidden", "rurl", "http://www.yousendit.com/transfer.php?action=status")
End Sub
Now we have the required fields to be able to post to the form, so we are going to continue the upload process. But first, we shall add a dialog to select the file to upload, and then we will read the file into memory:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim wrobot As New foxtrot.xray.WebRobot
    wrobot.Base = "http://www.yousendit.com/"
    wrobot.LoadPage("/")
'getting file upload form from page
    Dim wform As foxtrot.xray.Form = wrobot.GetFormByName("tform")
    wform.AddField("text", "rcpt")
    wform.AddField("file", "fname")
    wform.AddField("hidden", "rurl", "http://www.yousendit.com/transfer.php?action=status")
'creating an Open File Dialog to choose file to upload
    Dim fopendialog As New System.Windows.Forms.OpenFileDialog
    fopendialog.CheckFileExists = True
    If fopendialog.ShowDialog() = DialogResult.OK Then
'open file for reading
       Dim fstream As New System.IO.FileStream(fopendialog.FileName, IO.FileMode.Open)
       Dim bytFile(fstream.Length - 1) As Byte 'temporary buffer to store contents of file
       fstream.Read(bytFile, 0, fstream.Length) 'read in the file
'the contents of the file to be uploaded to the server
       Dim mstream As New System.IO.MemoryStream(bytFile)
    End If
End Sub

Comments

  1. 18 Jun 2007 at 14:59
    Yes it'll save a plenty of work, thanks .
  2. 11 Apr 2007 at 14:07
    dinuX wrote:

    This is a Very Good Example.I thin its very usefull to me.

    but the problem is when i try this this not work properly error occured at this line  "Dim wrobot As New foxtrot.xray.WebRobot()"

    it displayes "File or Assembly name System,or one of its dependancies was not found."

     

    Please answer to me

    did you make the reference to the package?
  3. 11 Apr 2007 at 14:05
    That looks very nice. It'll save me plenty of work when posting a form instead of hardcoding all the fields in a webrequest! http://www.fixx.be
  4. 04 Oct 2006 at 10:52

    This is a Very Good Example.I thin its very usefull to me.

    but the problem is when i try this this not work properly error occured at this line  "Dim wrobot As New foxtrot.xray.WebRobot()"

    it displayes "File or Assembly name System,or one of its dependancies was not found."

     

    Please answer to me.

     

     

  5. 01 Jan 1999 at 00:00

    This thread is for discussions of Interacting with the web using WebRobot v1.0.

Leave a comment

Sign in or Join us (it's free).

Fernando Sanchez

Related podcasts

  • xpert to Expert: Inside Concurrent Basic (CB)

    "Concurrent Basic extends Visual Basic with stylish asynchronous concurrency constructs derived from the join calculus. Our design advances earlier MSRC work on Polyphonic C#, Comega and the Joins Library. Unlike its C# based predecessors, CB adopts a simple event-like syntax familiar to VB progr...

Want to stay in touch with what's going on? Follow us on twitter!