AxShDocVw.AxWebBrowser является устаревшим? - PullRequest
2 голосов
/ 22 февраля 2012

У меня были проблемы с AxShDocVW.dll в более старом проекте, поэтому, чтобы воссоздать проблему, я создал новый проект форм VB.Net и поместил в него элемент управления WebBrowser. Я заметил, что ссылки содержат ShDocVw, но не AxShDocVw, как в моем старом проекте. Кроме того, когда я скопировал следующую строку из моего старого проекта, он (естественно) не распознал ее.

Dim WithEvents MyWebBrowserMain As New AxSHDocVw.AxWebBrowser

Читая кучу страниц в сети, у меня складывается впечатление, что AxShDocVw.AxWebBrowser устарел. Это правда? И если да, то какова альтернатива?

Также я могу сделать:

Dim WithEvents MyWebBrowserMain As New SHDocVw.WebBrowser

но это имеет ограничения, например, я не могу тогда сделать MyWebBrowserMain.Location = New Point (...

И я также обнаружил:

Dim WithEvents MyWebBrowserMain As New System.Windows.Forms.WebBrowser

Но правильно ли это делать? Я в замешательстве !!

Thanx, Анил

1 Ответ

4 голосов
/ 23 февраля 2012

Правильного пути нет ... Зависит от того, что вы планируете делать с библиотекой типов

AxSHDocVw: DLL-оболочка COM-прокси, сгенерированная из aximp или набора инструментов Windows Forms Visual Studio, с использованием старой библиотеки типов IE (IE7 предоставляет AxWebBrowser из IEFramed.dll, а не SHDocVw). Подходит для приложений Windows Forms.

SHDocVw: DLL-оболочка COM-прокси, сгенерированная из tlbimp или вкладки COM диалогового окна Add Reference с использованием старой библиотеки типов IE.

Если вы используете Windows Forms, вы должны использовать System.Windows.Forms.WebBrowser, если целевой целевой фреймворк равен 2.0 или выше, если количество точек расширения не удовлетворяет вашим потребностям, то вам нужно напрямую разместить версию ActiveX .

Если ваша Visual Studio установлена ​​правильно и вы добавили новую ссылку в библиотеку типов IE, ваша ссылка COM, вероятно, будет изменена для использования Microsoft PIA microsoft.mshtml.dll. Использование этой ссылки на машинах IE6 не рекомендуется.

...