两个相同的系统,mshtml.HTMLDocumentClass x System .__ ComObject

时间:2019-06-14 14:40:17

标签: c# internet-explorer shdocvw

我有两个相同的系统。当我在Visual Studio 2017调试模式下运行以下代码时。该文档是mshtml.HTMLDocumentClass,但是当我在另一个系统上运行该应用程序时。该文档为System.__ComObject

为什么文档在另一个系统上与众不同?当我尝试执行url时,当文档的类型为mshtml.HTMLDocumentClass时,它可以工作,但是当文档的类型为System.__ComObject时,则失败。

我具有IE 11的相同版本。

SHDocVw.ShellWindowsClass shellWindows = (new SHDocVw.ShellWindowsClass());

foreach (SHDocVw.InternetExplorer internetExplorer in shellWindows)
{
    try
    {
        if ((internetExplorer) != (null))
        {

                Count = 0;
                while ((internetExplorer.ReadyState) != (SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE) && Count < 10000)
                {
                    LogArquivo.escreve_log("thiago 3");

                    System.Windows.Forms.Application.DoEvents();
                    Count += 1;
                }

                mshtml.IHTMLDocument3 htmlDocument = (internetExplorer.Document as mshtml.IHTMLDocument3);
                string url = ((mshtml.IHTMLDocument3)htmlDocument).url.ToString(); //<<<<--- this line make exception
  

“无法将类型为'System .__ ComObject'的COM对象转换为接口   键入“ mshtml.IHTMLDocument3”。

0 个答案:

没有答案