Как добавить ссылку на mshtml версии 9 в .NET

Я хочу использовать некоторые новые функции mshtml.dll версии 9.0, такие как IHTMLCSSRule.

Версия взаимодействия в следующей папке - это версия 7.0.3300.1:

C:\Program Files \ Microsoft.NET \ Primary Interop Assemblies \ Microsoft.mshtml.dll

Версия COM в следующей папке - это версия 9.0.8112.16441:

C:\Windows\System32\mshtml.dll

Из того, что я смог выяснить из Интернета, я должен сделать это, чтобы создать версию взаимодействия .NET 9:

d: \ zTemp> tlbimp mshtml.tlb /out:Microsoft.mshtml.dll / пространство имен: mshtml / asmversi on: 9.0

Похоже, это сработало, но появились следующие предупреждения:

TlbImp: предупреждение TI3001: Первичная сборка взаимодействия 'Microsoft.mshtml, Версия = 7. 0.3300.0, Культура = нейтральный, PublicKeyToken = b03f5f7f11d50a3a 'уже зарегистрирован для библиотеки типов' C: \ Windows \ system32 \ mshtml.tlb '. TlbImp

: предупреждение TI3016: импортеру библиотеки типов не удалось преобразовать подпись участника "mshtml._userBITMAP.pBuffer". TlbImp:

предупреждение TI3016: Импортеру библиотеки типов не удалось преобразовать подпись участника "mshtml._FLAGGED_BYTE_BLOB.abData". TlbImp:

предупреждение TI3015: По крайней мере, один из аргументов для 'mshtml.ICanvasPixel ArrayData.GetBufferPointer' не может быть маршалирован маршалером времени выполнения. Следовательно, такие аргументы будут переданы как указатель, и для манипулирования может потребоваться небезопасный код. TlbImp: Тип библиотека, импортированная в d: \ zTemp \ Microsoft.mshtml.dll

  1. Можно ли игнорировать эти предупреждения?
  2. Нет ли предварительно скомпилированной версии этой dll, доступной для загрузки с сайта Microsoft?
  3. Это нормально для меня распространять эту dll вместе с моим приложением?
  4. При добавлении ссылки на dll в проект .NET 3.5 я получил следующее предупреждение:

'Microsoft.mshtml.dll' или одна из его зависимостей требует более поздней версии версия .Net Framework, чем та, которая указана в проекте ...

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

Спасибо

7
задан Jules 3 March 2012 в 08:07
поделиться