3

へのキャストmshtml.HTMLDocumentClassに問題がありますmshtml.IMarkupServices

IHTMLDocument2 doc = new HTMLDocumentClass();
doc.write(new object[] { item.HTMLBody });
IHTMLTxtRange range = ((IHTMLBodyElement)doc.body).createTextRange();
IHTMLTxtRange baseRange = ((IHTMLBodyElement)doc.body).createTextRange();

var markupServices = (IMarkupServices)doc; // <--- exception is thrown here

あるケースでは同じコードが機能しますが、別のケースでは例外がスローされます。呼び出しは同じですが、コードの異なる場所では同じようには機能しません。

4

1 に答える 1

1

問題はApartmentState:

thread.SetApartmentState(Thread.CurrentThread.GetApartmentState());
于 2012-12-06T08:46:01.423 に答える