Отображение htm файла в WebBrowser-е без скриптов (off-line)

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

euroflock
Обычный пользователь
Обычный пользователь
 
Сообщения: 68
Зарегистрирован: 26.02.2009 (Чт) 12:54

Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение euroflock » 17.03.2009 (Вт) 11:33

Off-line. В сохранённом файле содержится только <body>...</body> выводимой странички. Перед выводом в WebBrowser добавляется всё что нужно (<html>..<head>.. и т.п., в конце все тэги правильно закрываем) и затем выводится в браузер как готовая страничка.

Страницы, не содержащие скриптов для загрузки контента с других мест (типа информеров, баннеров и т.п.), выводятся отлично, а вот иначе - выскакивает сообщение об ошибке скрипта и подтверждения дальнейшего выполнения скриптов...

Вопрос в том, возможно ли перед выводом странички из строковой переменной, содержащей текст тела документа "<body>...</body>", удалить все скрипты (или хотябы только те, которые вызывают ошибки в off-line)? Или может как-то в настройках что-то отключить а потом включить? Дайте вразумительный ответ, пожалуйста.

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение MIT » 17.03.2009 (Вт) 15:12

RegExp, думаю, тебе может помочь. Либо вырезай все скрипты, либо только то, что вызывает ошибку. При появлении предупреждения посмотри на что оно срабатывает.
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение dr.MIG » 17.03.2009 (Вт) 15:35

А что на счёт свойства ScriptErrorsSuppressed, установленного в True?
Salus populi suprema lex

euroflock
Обычный пользователь
Обычный пользователь
 
Сообщения: 68
Зарегистрирован: 26.02.2009 (Чт) 12:54

Re: Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение euroflock » 17.03.2009 (Вт) 16:36

Проблему решил "как всегда" сам:

1. Находим позицию начала блока скрипта "<SCRIPT" (InStr)
2. Находим позицию конца блока скрипта "</SCRIPT>" (InStr)
3. Вырезаем блок скрипта из строки (Remove)
4. Продолжаем до конца файла
5. Получаем текст без скриптов

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение dr.MIG » 17.03.2009 (Вт) 16:45

dr.MIG писал(а):А что на счёт свойства ScriptErrorsSuppressed, установленного в True?


"Как всегда" сам, не значит "как всегда" лучше :). А что, если в html-коде будут обрабатываться события элементов? И будет достаточно строчки, например такого вида <body onload="foo()"> вообще без элемента <script>, чтобы выскочило сообщение об ошибке.
Salus populi suprema lex

euroflock
Обычный пользователь
Обычный пользователь
 
Сообщения: 68
Зарегистрирован: 26.02.2009 (Чт) 12:54

Re: Отображение htm файла в WebBrowser-е без скриптов (off-line)

Сообщение euroflock » 17.03.2009 (Вт) 16:54

Вопрос касался удаления скриптов. Но ScriptErrorsSuppressed = True решает проблему и без удаления. Спасибо.


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 55

    TopList  
cron