Будет ли работать код из Приложения Windows Forms в Консольном приложении? - C#

Узнай цену своей работы

Формулировка задачи:

Имеется исходник, можно ли его заставить работать в Консольном приложении? Ведь там нету кнопок,picturebox и т.д. Вот код:
Листинг программы
  1. using System;
  2. using System.ComponentModel;
  3. using System.Drawing;
  4. using System.Windows.Forms;
  5. using System.Net;
  6. using Akumu.Antigate;
  7. using Akumu.Antigate.Tools;
  8. namespace ReCaptchaExample
  9. {
  10. public partial class Main : Form
  11. {
  12. public Main()
  13. {
  14. InitializeComponent();
  15. }
  16. private void button2_Click(object sender, EventArgs e)
  17. {
  18. button2.Enabled = false;
  19. worker.RunWorkerAsync();
  20. }
  21. private void worker_DoWork(object sender, DoWorkEventArgs e)
  22. {
  23. string url = pageUrl.Text.Trim();
  24. if (string.IsNullOrEmpty(url))
  25. {
  26. MessageBox.Show("Укажите URL");
  27. return;
  28. }
  29. using (WebClient client = new WebClient())
  30. {
  31. // загружаем страницу содержащую ReCaptcha
  32. string page = client.DownloadString(url);
  33. try
  34. {
  35. // массив ссылок на js
  36. string[] js = ReCaptcha.GetObjectsUrlsOnPage(page);
  37. if (js == null)
  38. {
  39. MessageBox.Show("ReCaptcha не обноружена на указанной странице");
  40. }
  41. else
  42. {
  43. string jsPage = client.DownloadString(js[0]);
  44. // работаем с первым js на странице
  45. ReCaptchaObject rco = ReCaptcha.GetObject(jsPage);
  46. if (rco == null)
  47. MessageBox.Show("ReCaptcha на странице содержит ошибку");
  48. else
  49. {
  50. pictureBox1.Invoke((MethodInvoker)delegate { pictureBox1.ImageLocation = rco.ImageURL; });
  51. textBox1.Invoke((MethodInvoker)delegate { textBox1.Text = rco.Challenge; });
  52. }
  53. }
  54. }
  55. catch (Exception ex)
  56. {
  57. MessageBox.Show(ex.Message + Environment.NewLine + ex.StackTrace, ex.GetType().ToString());
  58. }
  59. }
  60. }
  61. private void worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
  62. {
  63. button2.Enabled = true;
  64. }
  65. }
  66. }

Решение задачи: «Будет ли работать код из Приложения Windows Forms в Консольном приложении?»

textual
Листинг программы
  1.         private static void DoWork()
  2.         {
  3.             Console.WriteLine("Введите URL: ");
  4.             string url = Console.ReadLine();
  5.             using (WebClient client = new WebClient())
  6.             {
  7.                 // загружаем страницу содержащую ReCaptcha
  8.                 string page = client.DownloadString(url);
  9.                 try
  10.                 {
  11.                     // массив ссылок на js
  12.                     string[] js = ReCaptcha.GetObjectsUrlsOnPage(page);
  13.  
  14.                     if (js == null)
  15.                     {
  16.                         Console.WriteLine("ReCaptcha не обноружена на указанной странице");
  17.                     }
  18.                     else
  19.                     {
  20.                         string jsPage = client.DownloadString(js[0]);
  21.  
  22.                         // работаем с первым js на странице
  23.                         ReCaptchaObject rco = ReCaptcha.GetObject(jsPage);
  24.  
  25.                         if (rco == null)
  26.                            Console.WriteLine("ReCaptcha на странице содержит ошибку");
  27.                         else
  28.                         {
  29.                             Console.WriteLine(rco.Challenge);
  30.                         }
  31.                     }
  32.                 }
  33.                 catch (Exception ex)
  34.                 {
  35.                     Console.WriteLine(ex.ToString());
  36.                 }
  37.             }
  38.  
  39.         }
  40.         static void Main(string[] args)
  41.         {
  42.             DoWork();
  43.             Console.ReadKey();
  44.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы