2

mshtml.dll私たちの .NET プロジェクトで referenced を使用しているときに同様の問題を見たことがありますが、この特定の状況に関連するものは何もありません。私の場合、関連するすべてのプロパティ/属性が欠落しているコクラスについて、このスレッド ( .net document write with mshtml )で述べられていることと、問題が何らかの関係があるのではないかと疑っています。ここでの詳細は、オブジェクトmshtml.HTMLInputElementの解析中に使用していることと、そのプロパティ/属性のセットです。WebBrowser.Document

if (domElement is HTMLInputElement)
{

  HTMLInputElement inputElement = (HTMLInputElement)domElement;

  if (inputElement.name == null || inputElement.name.Trim() == string.Empty ||
      inputElement.name.Contains("/") || inputElement.name.Contains("="))
  {
    ...

  }

}

上記は開発用 PC (VS2008 3.5 SP1) で正常に動作し、nameプロパティの他に、 などのように他のものも正常に呼び出されtypeていますが、必要なすべてのフレームワーク部分を備えた Windows 7 にアプリケーションをインストールすると、次のようになりますCOMException

==============

System.Runtime.InteropServices.COMException がネイティブ/マネージド境界を超えました メッセージ = メンバーが見つかりません。(HRESULT からの例外: 0x80020003 (DISP_E_MEMBERNOTFOUND)) Source=mscorlib
ErrorCode=-2147352573 StackTrace: System.RuntimeType.ForwardCallToInvokeMember (文字列 memberName、BindingFlags フラグ、オブジェクト ターゲット、Int32[] aWrapperTypes、MessageData& msgData) で mshtml.DispHTMLInputElement.get_name( )

======================

name、 、 などのプロパティへの呼び出しはtype現在機能していません。いつも同じInterop.COMExceptionものが投げられます。.net document write with mshtmlで説明されているのと同じ問題のように思えます。

この問題の有効な回避策を知っている人はいますか?

4

0 に答える 0