在没有管理员权限的情况下使用IWebBrowserApp?

时间:2019-08-19 07:25:41

标签: c# internet-explorer

我有一个程序,该程序从网站读取一些数据,然后单击该网站上的链接,并在导航后从新站点再次读取数据。

只要程序以管理员权限启动,一切都可以正常工作。当我在没有管理员权限的情况下启动程序时,会出现问题。这是一些代码:

    void ReadHTML(string url)
    {
        try
        {
            InternetExplorer ie = new InternetExplorer();
            IWebBrowserApp wb = (IWebBrowserApp)ie;

            wb.Visible = false;

            wb.Navigate(main.pathHcmOverview, null, null, null, null);
            while (wb.Busy) ;   //  Here the program crashes already with exit code 0x800706ba
            HTMLDocument doc = (HTMLDocument)wb.Document;

            //  Do something with the doc [I cut the code here as it is not relevant for the problem]

            wb.Quit();
        }
        catch (Exception err)
        {

        }
    }

导航命令有效,但是下一个命令引发错误:“ RPC服务器不可用-0x800706ba”。

现在我的问题是:我可以仅在具有管理员权限的情况下使用以上代码吗?我还没有找到任何信息。 如果是这样,还有没有管理员权限的替代方案可以实现我的目标?

1 个答案:

答案 0 :(得分:0)

我可以通过更改以下行来解决问题

InternetExplorerMedium ie = new InternetExplorerMedium();

进入

a[:, :, 0]

之后,测试工作正常。现在,我将阅读有关这两者之间确切区别的文档。