IE.Visible = false;但它真的显示出来了吗?c#

本文关键字:出来了 显示 真的 Visible false IE | 更新日期: 2023-09-27 18:10:11

我正在尝试隐形导航,尝试这个

SHDocVw.InternetExplorer IE = new SHDocVw.InternetExplorer();
IE.Visible = false;
IE.Navigate("http://example.org");

工作,然而,它实际上显示IE窗口。隐藏IE窗口的最佳方法是什么?

IE.Visible = false;但它真的显示出来了吗?c#

从文档:"当第一次创建Windows Internet Explorer应用程序时,它是隐藏的。它在使用Navigate方法或GoSearch方法后变得可见。"

设置导航后可见

https://msdn.microsoft.com/en-us/library/aa752082 (v = vs.85) . aspx

http://forums.codeguru.com/showthread.php?512303-SHDocVw-InternetExplorerClass-visible-property-to-False-does-not-work-on-some-machine似乎NavigateComplete事件也使窗口可见,所以它也应该隐藏在该事件的处理程序中。

Dim IDC As Object
Dim IDCWin As Object
Set IE = CreateObject("InternetExplorer.Application")
Set IDC = CreateObject("Shell.Application")
For Each IDCWin In IDC.Windows
    If IDCWin.LocationURL = "YOUR WEBSITE" Then 
        IDCWin.Visible = False
Next IDCWin

这就是我使用的,它对我有效。我循环遍历IE窗口,当它找到指定的URL时,它就会隐藏IE的实例。我将其用于通过excel操作的web应用程序,但我不想在使用期间对用户可见。我希望这对你有帮助。

可以试试InternetExplorerMedium吗??这会改变IE实例的完整性/安全性。

Dim ie As SHDocVw.InternetExplorer
Set ie = New InternetExplorer**Medium**
ie.Visible = False

我用_Medium运行它,它一直是隐藏的,没有其他必要的东西。今天我处理了一个系统,其中_Medium必须被省略才能让我的代码运行,当我把它返回调试时,我有同样的问题,它似乎无视.Visible = False,除非它是_Medium。

嗨,我在excel中有同样的问题,为了解决它,我不得不从internetexplorermedium更改回internetexplorer

相关文章: