Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под Windows > C++ Builder
Перезагрузить страницу Как через компонент TWebBrowser работать с HTML страницами
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию Как через компонент TWebBrowser работать с HTML страницами - 05.01.2009, 14:00

Добрый день Магистры Visual C++ Пишу программку для работы. в общих чертах она что-то типа оперы, но не в этом суть. При загрузке служебных страниц появляются вот эти ошибки... Мне кажется это связано с ActiveX или чем-то в этом роде. Короче говоря если открывать эти же ссылки через обычный IE - всё работает без ошибок, если же через компонент TWebBrowser моей программы - лезут ошибки.



А еще при загрузке страницы получается
, а должно быть


Подскажите, всё это связано с одним и тем же - так в чём же дело и как это исправить? Заранее благодарен, Александр
Ответить с цитированием
  (#2 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 06.01.2009, 13:48

Во-первых, никто и не говорил, что TWebBrowser запросто переплюнет IE. Естественно, есть моменты, в которых парсер путается, а то и вообще не поддерживает. Тут надо анализировать сам хтмл. Возможно, придётся малость его модифицировать, прежде чем скармливать компоненту. Второе, а почему сразу не использовать в программе IE?

P.S. И причём тут вижуал си++?...
Ответить с цитированием
  (#3 (permalink)) Старый
Alexiski Alexiski вне форума
Любитель давать советы
 
Сообщений: 4,264
Сказал(а) спасибо: 27
Поблагодарили 52 раз(а) в 52 сообщениях
Регистрация: 16.10.2005
По умолчанию 06.01.2009, 15:18

Позвольте, но разве TWebBrowser не вызывает тот же самый движок от IE как OLE-inplace?
Ответить с цитированием
  (#4 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 06.01.2009, 15:51

Вполне возможно (судя даже по ошибкам). Но как это реализовано и что он там подключает, я не знаю. А кто знает? Но в любом случае, не лучшим образом...
Ответить с цитированием
  (#5 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 00:50

ДРУЗЬЯ, исправил проблемму с выскакивающей "Ошибка сценария Internet Explorer" !!! Полазил по нету, поискал, что означают свойства TWebBrowser. Вот, одно из свойств:
Silent Управляет возможностью выдачи обозревателем диалоговых окон о критических ошибках и сообщений безопасности (булево). Чтение и запись. По умолчанию - False (диалоговые окна не запрещены).

Это я прочитал с http://www.script-coding.info/WSH/WebBrowser.html и помогло... Но вот проблемма с отобращением HTML кода осталась... Вот скрипт моей HTML страницы. откройте её через обычный IE или другие браузеры, а потом через компонент TWebBrowser - увидите разницу и надеюсь поможете...

Не в скрипте суть, но по просьбам желающих помочь... Cкрипт:

Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Контентt</title>
</head>

<body>
    <center><table width="280" height="208" border="0">
  <tr>
    <td width="123"><a class="easy" href="http://weather.yandex.ru/detailed.xml?city=27730" target="_blank"> 
<IMG  align="center" border="0" src='http://weather.yandex.ru/static/perb...27730.png' alt="Погода в Рязани"> </a></td>
    <td width="195"><form method="get" action="http://www.mtt.ru/info/def/index.wbp"><table width="150" height="82"  border="0">
<tr>
<td width="59" height="21" align = "center" border="2">DEF:</td>
<td width="80" align = "center" border="2">AЧBЧC</td>
</tr>

<tr>
<td height="24" align ="center">
<select name="def" id="def">
<option value="">все</option>
<option value="901">901</option>
<option value="902">902</option>
<option value="903">903</option>
<option value="904">904</option>
<option value="905">905</option>
<option value="906">906</option>
<option value="908">908</option>
<option value="909">909</option>
<option value="910">910</option>
<option value="911">911</option>
<option value="912">912</option>
<option value="913">913</option>
<option value="914">914</option>
<option value="915">915</option>
<option value="916">916</option>
<option value="917">917</option>
<option value="918">918</option>
<option value="919">919</option>
<option value="920">920</option>
<option value="921">921</option>
<option value="922">922</option>
<option value="923">923</option>
<option value="924">924</option>
<option value="925">925</option>
<option value="926">926</option>
<option value="927">927</option>
<option value="928">928</option>
<option value="929">929</option>
<option value="931">931</option>
<option value="937">937</option>
<option value="950">950</option>
<option value="951">951</option>
<option value="952">952</option>
<option value="960">960</option>
<option value="961">961</option>
<option value="962">962</option>
<option value="963">963</option>
<option value="985">985</option>
<option value="987">987</option>
<option value="988">988</option>
<option value="997">997</option>
</select></td>
<td>
<input name="number" id="number" class="text" value="" maxlength="7" style="width:5em;"></td>
</tr>
<TR>
<TD align = "center" colspan = "2">
<INPUT TYPE="submit" CLASS="submit" value="Показать"></form></TD>
</TR>
</table></td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
</table>
</center>
</body>
</html>
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
IL_Agent IL_Agent вне форума
Member
 
Аватар для IL_Agent
 
Сообщений: 2,015
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.07.2005
По умолчанию 07.01.2009, 01:59

Цитата:
откройте её через обычный IE или другие браузеры, а потом через компонент TWebBrowser - увидите разницу
Лучше ты сам её тут опиши.
Ответить с цитированием
  (#7 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 07.01.2009, 03:11


Ноу комментс... Проверь версию SHDOCVW.DLL (у меня 1464 К от 15.04.08), и если ниже - бегом обновляться
Ответить с цитированием
  (#8 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 03:51

Цитата:
Лучше ты сам её тут опиши.
Она описана в моём первом сообщении. Глянь пожалуйста =).
Но смотрю FataLL удалось кое-что... Дело в том, что я не на C++ Builder пишу, а в Code Gear 2009 (бывший Borland Developer Studio 2006). Как я понял этот файл должен быть в директории с приложением С++, но у меня даже на C:\ такого файла нет. Что-нибудь еще подскажешь, о Маэстро? =)
Ответить с цитированием
  (#9 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 05:05

Так, всё. разобрался - потупил просто))). Нашел этот файл в system32. удаляться и заменяться не хочет. как его обновить? уже и из безопасного и вообще как только не пробовал - не получается... Операционка Windows Vista Home Premium Edition
Кстати, FataLL - скинь свой файлик пожалуйста, потомучто в нете самый лучший нашел только объемом 1200+КБ.
Ответить с цитированием
  (#10 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 07.01.2009, 09:25

Bondarchuk
Дружище, у меня ХР, это раз. Во-вторых, включи автообновление в винде и будет тебе счастье, ибо хоум премиум уже имеет обновлений на гиг с небольшим с момента выхода. Кроме размера, обрати внимание на дату создания, возможно он у тебя и так достаточно свежий. В-третьих, возможна разница в самих компонентах, раз ты используешь НЕ билдер.
Ответить с цитированием
  (#11 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 12:02

Дамс... Теперь в тупике... Гребанная виста, но с*ка, удобная. Автообновления включены - меньше весит наверно потомуто весь мусор с этого файла убран
Ответить с цитированием
  (#12 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 07.01.2009, 12:26

Значит проблема может крыться в самом компоненте. У тебя там наблюдается проблема с выводом АхВхС. Попробуй вместо значка "умножить" поставь простой "х". И вообще, попробуй найди "узкое" место странички, что именно сбоит в компоненте. Закомментируй (или просто удали) строчки очерёднно, может можно обойтись небольшим изменением хтмл и всё...
Ответить с цитированием
Ads
  (#13 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 14:57

Ну как тебе сказать =)
<html>
<INPUT TYPE="submit" CLASS="submit" value="Показать"></form>
</html>
Даже это он вместо кнопки выводит в виде поля Edit с Text="Показать", а должен показать Button. Так что это непосредственно с самим компонентом или какими дугими изощрениями майкрософт связано.
Ответить с цитированием
  (#14 (permalink)) Старый
Bondarchuk Bondarchuk вне форума
Member
 
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 05.01.2009
По умолчанию 07.01.2009, 15:11

Так, полазал в библиотеках моего билдера, нашел файлы SHDocVw.hpp, SHDocVw_OCX.h, SHDocVw_TLB.h - как думаешь, если заменить твоими, прокатит? Потомучто я посмотрел, они отноятся непосредственно к компоненту TWebBrowser.
Ответить с цитированием
  (#15 (permalink)) Старый
FataLL FataLL вне форума
Member
 
Аватар для FataLL
 
Сообщений: 1,783
Сказал(а) спасибо: 2
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 04.11.2004
По умолчанию 07.01.2009, 15:43

Библиотеки борланда разные, значит и заголовки не помогут. Это же всего лишь список объявлений, а не реализация в коде. Кстати, а зачем </form>? Я что-то с перепугу и не заметил. Явно лишнее.... Удаляй!
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с страницами JIemoni Любые вопросы от новичков 1 30.07.2011 20:31
Компонент встраиваемый HTML WYSIWYG редактор radistao C++ Builder 0 12.11.2009 15:45
Компонент tabControl1 как с ним работать reliable .NET 3 13.07.2009 23:59
Как через Builder открыть html страницу misterx C++ Builder 1 28.11.2007 14:37
Компонент IDUDPServer как с ним работать ГС ТОФ Delphi 3 09.02.2007 18:31
TWebBrowser загружает HTML-файл с неправильной кодировкой Droom Delphi 0 16.12.2006 17:12
Компонент TQuery как с ним работать Infinita C++ Builder 17 10.07.2006 19:18
ПРОИЗВОДИТЕЛЬНОСТЬ + вывод html через рнр imported___art__ PHP 1 22.06.2006 01:30
TWebBrowser и метод post как с этим работать drwatson Delphi 3 17.03.2006 20:44
Как через компонент DBLookupComboBox добавить данные в базу данных imported_Des C++ Builder 3 14.03.2005 13:50
вывод html-документа через переменную pampushechca PHP 2 17.11.2004 16:38
Компонент TIBStoreProc как с ним работать Kelt Delphi 1 05.06.2004 10:43



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов