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 回答