首页 新闻 搜索 专区 学院

如何使用C# 控制IE浏览器切换页面tab

0
悬赏园豆:30 [已解决问题] 解决于 2020-06-28 15:26

这个问题,我在网上找了两天,还是没能解决,哪位大哥能帮我看看,难受。

我的主要代码。
SHDocVw.ShellWindows IETabs = new SHDocVw.ShellWindows();
foreach (SHDocVw.ShellBrowserWindow ieTab in IETabs) {
if (Path.GetFileNameWithoutExtension(ieTab.FullName).ToLower().Equals("iexplore")) {
IntPtr int32 = (IntPtr)ieTab.HWND;
SwitchToThisWindow(int32, true);
}
}

用spy++发现ie各个tab是一个句柄,也就是int32 循环出来的值都一样,content是各自不同的句柄。
Chrome所有tab content就一个句柄。

所有豆豆了,全部拿出来了。

pecool的主页 pecool | 初学一级 | 园豆:14
提问于:2020-06-24 15:50
< >
分享
最佳答案
0

取到hanlde还需要教怎么操作句柄么~~

实现的机理不一样,当然handle数量不一样,比如你可以创建一个窗口(一个handle),然后直接里面绘制控件——这不就是只一个handle了。但如果你拖一个button到里面 —— 这就是多个了。

可以买本windows编程了解一下windows原理,这样对于解决很多问题会有很好的思路,无论你将来做android、win还是什么,很多东西原理是一样的,基本解决问题的方法是一样的。

收获园豆:10
花飘水流兮 | 专家六级 |园豆:11023 | 2020-06-26 12:17
其他回答(2)
0

用Selenium?

收获园豆:10
yytxdy | 园豆:1067 (小虾三级) | 2020-06-24 16:38

有没有代码,没用过这个

支持(0) 反对(0) pecool | 园豆:14 (初学一级) | 2020-06-24 16:48

谢谢,我最后用Ctrl + tab实现了tab切换。

支持(0) 反对(0) pecool | 园豆:14 (初学一级) | 2020-06-28 15:23
0

IE的话提供了COM,句柄这种不能100%靠谱

收获园豆:10
56180825 | 园豆:1167 (小虾三级) | 2020-06-26 22:31

谢谢,我最后用Ctrl + tab实现了tab切换。

支持(0) 反对(0) pecool | 园豆:14 (初学一级) | 2020-06-28 15:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册