Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Можно ли использовать WebBrowser без формы? 
:(
    Опции темы
draiv
Дата 16.9.2008, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 95
Регистрация: 23.5.2007

Репутация: нет
Всего: нет



Хочу использовать контрол WebBrowser в консольном приложении.
Пробовал такой код:
        string url = @"http://www.mysite";
        WebBrowser wb = new WebBrowser();
        wb.DocumentCompleted+=new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
        wb.Navigate(url);

Код отрабатывает, только вызова wb_DocumentCompleted не происходит, wb.Navigate(url) ничего не делает.
Если этот же код использовать в windows forms приложении - все хорошо работает ( в том числе и с программно созданым WebBrowser-ом).
А если в консольное приложение добавить форму и в ней вызывать этот код на Form_Load (создавая и показывая форму из под консольного приложения) - тоже никакой реакции на вызов wb.Navigate(url);

Подскажите плз, можно ли как заюзать WebBrowser из не windows forms приложения ??

Добавлено через 1 минуту и 12 секунд
да, url использовался реальный
PM MAIL   Вверх
sigod
Дата 25.7.2011, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 25.7.2011

Репутация: нет
Всего: нет



Сам столкнулся с таким вопросом. После долгих экспериментов вывод: WebBrowser не хочет работать без добавления на форму.

Кстати, что интересно nod ловит запрос к сайту, но... ничего более не происходит.

Думаю можно создать невидимую форму и таким образом работать с WebBrowser. Или тогда напрямую через запросы.
PM MAIL   Вверх
Экскалупатор
Дата 26.7.2011, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 2
Всего: 24



для чего нужен именно контрол WebBrowser?  для загрузки страницы можно воспользоваться классом WebClient(), он загружает страницу в виде строки, так же при помощи него можно загрузить все что угодно.
Код

            using (var client = new WebClient())
            {
                var content = client.DownloadString(new Uri("http://ya.ru"));
                Console.Write(content);
            }

PM MAIL ICQ   Вверх
KelTron
Дата 28.7.2011, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 8.10.2006
Где: Красноярск

Репутация: нет
Всего: 38



WebBrowser требует чтобы апартаменты потока были STA
В WinForms по умолчанию у метода Main установлен такой атрибут:
Код

[STAThread]
static void Main()
{
    ...
}


Попробуй его использовать в консольном приложении..


--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0737 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.