void UploadButtonClick(object sender, EventArgs e) { ConsoleTextBox.Text = ""; //crop the image Bitmap target = CropImage(); MemoryStream fileData = new MemoryStream(); target.Save(fileData, System.Drawing.Imaging.ImageFormat.Png); fileData.Seek(0, SeekOrigin.Begin); //add post-header NameValueCollection nvc = new NameValueCollection(); nvc.Add("name", UsernameTextBox.Text); nvc.Add("pass", FStringHasher.ToMD5(PasswordTextBox.Text)); nvc.Add("header", (UseAsHeaderCheckBox.Enabled && UseAsHeaderCheckBox.Checked).ToString().ToLower()); nvc.Add("title", ScreenshotTitleTextBox.Text); nvc.Add("description", ScreenshotDescriptionTextBox.Text); using (WebResponse response = Upload.PostFile(CPictureUploadUri, nvc, fileData, ScreenshotTitleTextBox.Text + ".png", null, null, null, null)) { // the stream returned by WebResponse.GetResponseStream // will contain any content returned by the server after upload using (StreamReader reader = new StreamReader(response.GetResponseStream())) { string result = reader.ReadToEnd(); if (result.Contains("OK")) { ConsoleTextBox.Text = "Upload Successful."; } else if (result.Contains("LOGIN FAILED")) { ConsoleTextBox.Text = "Login failed!"; } else if (result.Contains("SERVER BUSY")) { ConsoleTextBox.Text = "Server is busy, please try again later."; } else { ConsoleTextBox.Text = "ERROR: " + result; } } } }