Для управления WebBrowser.NET действительно ли возможно использовать IE9?

Я понимаю, что это - ранний выпуск и нестабильный. Я не мечтал бы о выгрузке значения по умолчанию webbrowser управление для IE9 ни в каком другом проекте, но в этом случае мне конкретно нужен IE9 для сравнения вместе с другими версиями.

Я хотел бы иметь IE9 использования управления WebBrowser.NET вместо версии по умолчанию IE на машине. Я имею полный контроль над машиной, таким образом, это не проблема для взламывания далеко в системных файлах или независимо от того, что может быть необходимым.

Обычно, это могло быть достигнуто путем установки обновления IE, но в случае IE9, это устанавливает отдельное приложение, оставляя текущую версию IE нетронутой. Это означает, что управление WebBrowser продолжает использовать текущую версию (который имеет смысл и был умным ходом MS, так как IE9 все еще разрабатывается). Но в моем (край) случаются, мне нужно управление WebBrowser для использования IE9.

Действительно ли возможно встроить IE9 в приложение форм.NET?

Править

Со справкой Hans Passant я добираюсь немного далее. Что-то очень интересное происходит в рамках прогр каталога файлов IE9. Существует каталог, названный "iepreview.exe.local", который при удалении заставляет приложение Предварительного просмотра IE9 использовать IE8 (проверил его с тестом acid3).

Не совсем, что я хочу, но я задаюсь вопросом, является ли это некоторым перенаправлением, которое я мог использовать для своих потребностей.

РЕДАКТИРОВАНИЕ 2

Я попытался применить взлом .local и к моей копии iexplore.exe и к моему приложению.NET, и я заметил что-то еще интересное - оба приложения начали использовать IE7 вместо IE8 (моя версия IE) или IE9.

Это могло быть iexplore, пытающимся использовать IE9 и затем отступающий на IE7? Кажется странным, это даже имело бы IE7 в наличии, но это - строка useragent, которую это начинает использовать.

14
задан Community 23 May 2017 в 12:03
поделиться

1 ответ

Единственный способ, которым IE9 мог установить параллельно, - это когда он использует новые идентификаторы GUID для интерфейсов и компонентных классов. Это означает, что вы не можете использовать WebBrowser, у него жестко запрограммированы идентификаторы GUID.

Есть еще один вариант - использовать оболочку AxHost. Щелкните правой кнопкой мыши на панели инструментов, выберите элементы, выберите вкладку «Компоненты COM» и найдите IE9 в списке. Не знаю, как это может называться, старое имя было «Microsoft Web Browser», обслуживаемое c: \ windows \ system32 \ ieframe.dll

. Вам придется обойтись без дружественных классов-оболочек WebBrowser и HtmlDocument.

3
ответ дан 1 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: