找出Windows的活动IE实例的启动点

ind*_*ull 6 c# windows internet-explorer shdocvw

我们有一个在Windows上作为服务运行的应用程序.该服务使用SHDocVw.ShellWindows()定期检查活动的Internet Explorer实例.有了这个,我们就可以捕获每个IE实例中的URL.

我的问题:是否有可能找出每个IE实例中的网页是如何启动的.例如 -

  • 用户在IE中输入网址加载网页吗?
  • 用户是否从另一个IE选项卡中选择了要启动的链接?
  • 用户是否从Outlook等其他桌面应用程序启动IE实例

谢谢.

小智 2

我能找到的最符合您具体要求的就是也请查看第2 部分,其中讨论了一些边缘情况。

\n

博客的第1部分讲了一个名为TypedURLs的注册表项(路径:HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\TypedURLs),可以在注册表编辑器中找到,该注册表项的更新规则是这样的:

\n
\n

如果将链接从网页复制并粘贴到 URL 地址栏,并且用户按 Enter 键,这也将填充该键,因为这类似于实际键入整个地址。如果输入了无法定位的无效网页或资源地址,则在连接或请求完成(无论成功还是失败)之前不会填充该键。如果在连接完成或资源定位之前选择了 IE\xe2\x80\x99s 停止功能,则不会填充该键。

\n

需要注意的是,使用浏览器通过超链接、重定向、IE 收藏夹菜单或 user\xe2\x80\x99s 主页访问的网站不会填充此键。另外,当用户选择使用 IE\xe2\x80\x99s 内置功能删除浏览历史记录时,此键将被清除。

\n
\n

希望能帮助到你!

\n