MagistrAnatol
Silver Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору вот с кучи примеров попробывал сваять для нашего сайта CookieContainer cookies; HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("http://forum.ru-board.com/misc.cgi?action=login"); //делаем запрос Request.CookieContainer = new CookieContainer(); HttpWebResponse Response = (HttpWebResponse)Request.GetResponse();//получаем ответ cookies = Request.CookieContainer; StreamReader sr = new StreamReader(Response.GetResponseStream());//получаем поток для чтения string htmlCode = sr.ReadToEnd(); //считали весь HTML-код Response.Close(); //обязательно закрываем сессию соединения htmlCode = Regex.Replace(htmlCode, "inmembername\" value=\"\"", "inmembername\" value=\"ЮЗЕР\""); htmlCode = Regex.Replace(htmlCode, "password name=\"inpassword\" value=\"\"", "password name=\"inpassword\" value=\"ПАРОЛЬ\""); StreamWriter sw = new StreamWriter("content.html"); //создаём поток записи и направляем его на файл sw.Write(htmlCode); //пишем скачанную строку sw.Close(); //закрываем поток StreamReader htmlContent = new StreamReader("content.html"); Request = (HttpWebRequest)WebRequest.Create("http://forum.ru-board.com/misc.cgi?action=login"); //снова запрос Request.CookieContainer = cookies; StreamWriter serverRequest = new StreamWriter(Request.GetRequestStream()); //создаём поток управления для отправки данных на сервер. serverRequest.Write(htmlContent.ReadToEnd()); //скармливаем серваку содержимое файла Response = (HttpWebResponse)Request.GetResponse();//получаем ответ на авторизацию но получаю ошибку в строке System.Net.ProtocolViolationException не обработано Message=Невозможно отправить тело содержимого с данным типом предиката. Source=System StackTrace: в System.Net.HttpWebRequest.CheckProtocol(Boolean onRequestStream) в System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) в System.Net.HttpWebRequest.GetRequestStream() в WindowsFormsApplication2.Form1.button1_Click(Object sender, EventArgs e) в D:\Робота\Проекты в розробке\WindowsFormsApplication2\WindowsFormsApplication2\Form1.cs:строка 43 в System.Windows.Forms.Control.OnClick(EventArgs e) в System.Windows.Forms.Button.OnClick(EventArgs e) в System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) в System.Windows.Forms.Control.WndProc(Message& m) в System.Windows.Forms.ButtonBase.WndProc(Message& m) в System.Windows.Forms.Button.WndProc(Message& m) в System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) в System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) в System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) в System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData) в System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) в System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) в System.Windows.Forms.Application.Run(Form mainForm) в WindowsFormsApplication2.Program.Main() в D:\Робота\Проекты в розробке\WindowsFormsApplication2\WindowsFormsApplication2\Program.cs:строка 18 в System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) в System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) в Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() в System.Threading.ThreadHelper.ThreadStart_Context(Object state) в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) в System.Threading.ThreadHelper.ThreadStart() InnerException: |