Send a suggestion!

We're building a brand new version of the site, and we'd love to hear your ideas

Members

Technology Zones

IBM Learning Center

Articles

Hosted By

MaximumASP

Info

Rated
Read 18,196 times

Contents

Related Categories

Interacting with the web using WebRobot v1.0 - Uploading files to YouSendIt: Adding fields

fsanchez

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