Tworze program do chomikowania pliku z adresu www na portalu chomikuj.pl.
Logowanie mi działa poprawnie. Natomiast problem mam z chomikowaniem pliku błąd wyskakuje dla linii ([i]jest to około 11 linia od końca[/i]):

postResponse = (HttpWebResponse)postRequest.GetResponse(); // ERROR 

Otrzymuję mało mówiący WebException:

Serwer zdalny zwrócił błąd: (500) Wewnętrzny błąd serwera. 

Wie ktoś jaka jest tego przyczyna?

KOD PROGRAMU

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;
using SimpleBrowser;
using SimpleBrowser.Parser;
using System.Xml.Linq;

namespace ChomikBot
{
    public partial class Form1 : Form
    {
        CookieContainer m_ccCiastkaPoZalogowaniu;
        string m_sTokenM;
        string m_slogin = "kontodotestow";
        string m_shaslo = "sad123123";

        public Form1()
        {
            InitializeComponent();
         //   m_tbLogin.Text = m_slogin;
         //   m_tbPassword.Text = m_shaslo;
        }

        private string pobierzToken(string sWtronaWWW)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(sWtronaWWW);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            StreamReader reader = new StreamReader(response.GetResponseStream());
            string kodStrony = reader.ReadToEnd();
            response.Close();
            reader.Close();
            int pozycjaStart = kodStrony.IndexOf("VerificationToken");
            kodStrony = kodStrony.Substring(pozycjaStart, kodStrony.Length - pozycjaStart);
            kodStrony = kodStrony.Remove(0, 40);
            string token = kodStrony.Substring(0, kodStrony.IndexOf("\""));
            token = token.Replace("/", "%2F");
            token = token.Replace("+", "%2B");
            token = token.Replace("=", "%3D");
            //MessageBox.Show(token);
            return token;
        }
    
        private void m_btLogin_Click(object sender, EventArgs e)
        {
            try {            
                   // m_slogin = m_tbLogin.Text;
                   // m_shaslo = m_tbPassword.Text;

                    m_sTokenM = pobierzToken("http://chomikuj.pl/");

                    String postData = string.Format("__RequestVerificationToken={0}&ReturnUrl=%2F{1}&Login={1}&Password={2}&rememberLogin=false&topBar_LoginBtn=Zaloguj", m_sTokenM, m_slogin, m_shaslo);
                    CookieContainer tymczasoweCiastka = new CookieContainer();
                    UTF8Encoding kodowanie = new UTF8Encoding();
                    Byte[] byteData = kodowanie.GetBytes(postData);
                    HttpWebRequest postRequest = (HttpWebRequest)WebRequest.Create("http://chomikuj.pl/action/Login/TopBarLogin");
                    postRequest.Method = "POST";
                    postRequest.KeepAlive = true;
                    postRequest.CookieContainer = tymczasoweCiastka;
                    postRequest.ContentType = "application/x-www-form-urlencoded";
                    postRequest.Referer = string.Format("http://chomikuj.pl/{0}", m_slogin);
                    postRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.2; rv:11.0) Gecko/20100101 Firefox/11.0";
                    Stream postRequestStream = postRequest.GetRequestStream();
                    postRequestStream.Write(byteData, 0, byteData.Length);
                    postRequestStream.Close();
                    HttpWebResponse postResponse;
                    postRequest.ServicePoint.Expect100Continue = false;
                    postResponse = (HttpWebResponse)postRequest.GetResponse();
                    tymczasoweCiastka.Add(postResponse.Cookies);
                    m_ccCiastkaPoZalogowaniu = tymczasoweCiastka;
            
                    StreamReader postRequestReader = new StreamReader(postResponse.GetResponseStream());
                    string resultSource = postRequestReader.ReadToEnd();
                    richTextBox1.Text = resultSource;
            }
            catch { }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            String postData = string.Format("POSTDATA=chosenFolder.ChomikId=117305&chosenFolder.FolderId=73&chosenFolder.Cobskr=-8588058821700884683&hasMusicFIles=False&chosenFolder.Name=Test&SelectedFolderId=0&ChomikId=17993796&TreeTicks=635313214611470000&__RequestVerificationToken=" + m_sTokenM);
            CookieContainer tymczasoweCiastka = m_ccCiastkaPoZalogowaniu;
            UTF8Encoding kodowanie = new UTF8Encoding();
            Byte[] byteData = kodowanie.GetBytes(postData);
            HttpWebRequest postRequest = (HttpWebRequest)WebRequest.Create("http://chomikuj.pl/action/content/copy/CopyFolder");
            postRequest.Method = "POST";
            postRequest.KeepAlive = true;
            postRequest.CookieContainer = tymczasoweCiastka;
            postRequest.ContentType = "application/x-www-form-urlencoded";
            postRequest.Referer = string.Format("http://chomikuj.pl/bb_malek/PO+-+ZiIP+-+stacjonarne+IN*c5*bb/Semestr+IV/MARKETING+*e2*80*93+WYKLAD/testy+do+wielkiego/marketing/marketing/Test/Test");
            postRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.2; rv:11.0) Gecko/20100101 Firefox/11.0";
            Stream postRequestStream = postRequest.GetRequestStream();
            postRequestStream.Write(byteData, 0, byteData.Length);
            postRequestStream.Close();
            HttpWebResponse postResponse;
            postRequest.ServicePoint.Expect100Continue = false;
            postResponse = (HttpWebResponse)postRequest.GetResponse();
            tymczasoweCiastka.Add(postResponse.Cookies);
            m_ccCiastkaPoZalogowaniu = tymczasoweCiastka;

            StreamReader postRequestReader = new StreamReader(postResponse.GetResponseStream());
            string resultSource = postRequestReader.ReadToEnd();
            richTextBox1.Text = resultSource;
        }
        
    }
}