Используйте mshtml HTMLDocument для изменения DOM и отображения в расширении браузера IE / BHO

Я работаю с C#.NET: mshtml.HTMLDocument, mshtml.HTMLImg и т. Д.

То, что я пытаюсь сделать, это изменить DOM и отразить изменения в браузере. например

           HTMLDocument doc = WebBrowser.Document as HTMLDocument;
           HTMLImg img;
           for (int i = 0; i < doc.images.length; i++)
           {
               img = doc.images.item(i) as HTMLImg;
               ProcessImg(ref img);                   
           }

К сожалению, обработанное / измененное изображение не отображается в браузере. Я полагаю, что Ineed я хочу сохранить изображение локально и изменить атрибут src тега IMG. Но кроме того, что я не смог (помогите, пожалуйста!) Сделать это, я боюсь, что это также не будет отображаться. Как сказать браузеру обновить (при необходимости вообще)

Ура, ребята! Берт Какой подход вы бы выбрали?

2 ответа

Правильно, вы не можете изменить существующее изображение без изменения атрибута SRC. Вы должны поделиться своим неработающим кодом для этого, чтобы люди могли его увидеть.

Пожалуйста, имейте в виду, что написание расширений браузера для IE в.NET настоятельно не рекомендуется из соображений производительности и надежности.

Проверьте эту ссылку, определенно возможно изменить отображаемую страницу, так как я делаю это с плагином, над которым я работаю.

По сути, класс реализует IObjectWithSite и IOleCommandTarget, первый из которых позволяет вашему коду подписаться на действие просмотра, а второй подключает действие пользовательского интерфейса. Код в примере ссылки устанавливает / очищает HTMLDocument, который является фактическим документом, который вы хотите изменить.

редактировать: я думаю, что, несмотря на внешний вид, HTMLDocument находится не в пространстве имен mshtml, а на самом деле в System.Windows.Forms. R# говорит иначе, но все пространство имен mshtml похоже на упражнение в неправильном направлении путем косвенного перенаправления и нарушения пищеварения, добавленных для хорошей меры.

Другие вопросы по тегам