VB如何获取一个软件的Internet Explorer_Server的句柄

Tea_123 2013-08-06 12:27:35
我试过用FindWindowEx获取但是不行,好像Enumchilewindows和Getwindowsclass能找出他的句柄
高手能不能帮忙给我举个例子!
...全文
819 10 打赏 收藏 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
create_code 2014-03-25
  • 打赏
  • 举报
回复
用大漠插件 EnumWindow CString cc=dm.EnumWindow(0,_T(""),_T("Internet Explorer_Server"),2+16); 把cc转换成int,这个int就是句柄了
无·法 2013-08-08
  • 打赏
  • 举报
回复
引用 8 楼 sysdzw 的回复:
http://bbs.csdn.net/topics/390540874?page=1#post-395251637 给分吧
另外贡献个使用我之前的clsWindows框架的方法,很简便:
Dim w As New clsWindow
If w.GetWindowHwndByTitleEx("应用程序标题栏文字") > 0 Then
    MsgBox w.GetElementHwndByClassName("Internet Explorer_Server") '得到ie控件句柄
End If
无·法 2013-08-08
  • 打赏
  • 举报
回复
引用 6 楼 Tea_123 的回复:
[quote=引用 4 楼 xiaoyao961 的回复:] 我就是用这个方式处理的
'┏〓〓〓〓〓〓〓〓〓 FindHwndByClassAndId,start 〓〓〓〓〓〓〓〓〓┓
'[简介]:
'查找窗体中多层次下第几个相同类的句柄
Function FindHwndByClassAndId(WinHwnd As Long, ByVal Class As String, Optional FindId As Integer, Optional Id As Integer) As Long
   '[mycode_id:1934],edittime:2011/8/3 3:30:07
      Dim Hwnd2 As Long
      Dim FindHwnd As Long, TempFindHwnd As Long
      Hwnd2 = GetWindow(WinHwnd, GW_CHILD)
      While FindHwnd = 0 And Hwnd2 > 0
                  If GetClass(Hwnd2) = Class Then
                       TempFindHwnd = Hwnd2
                       
                       If Id = FindId Then
                           FindHwnd = TempFindHwnd
                           GoTo DoEnd
                       Else
                           Id = Id + 1
                       End If
                   End If
                  
                  FindHwnd = FindHwndByClassAndId(Hwnd2, Class, FindId, Id)
                  Hwnd2 = GetWindow(Hwnd2, GW_HWNDNEXT)
      Wend
   DoEnd:
      FindHwndByClassAndId = FindHwnd
   
End Function
'┗〓〓〓〓〓〓〓〓〓  FindHwndByClassAndId,end  〓〓〓〓〓〓〓〓〓┛
我获取好几个子窗口的子窗口的句柄获取了Internet Explorer_Server的句柄,就是不知如何让Internet Explorer_Server重新定向浏览其他网页[/quote]根据这个句柄不行的吧。
  • 打赏
  • 举报
回复
我就是用这个方式处理的
'┏〓〓〓〓〓〓〓〓〓 FindHwndByClassAndId,start 〓〓〓〓〓〓〓〓〓┓
'[简介]:
'查找窗体中多层次下第几个相同类的句柄
Function FindHwndByClassAndId(WinHwnd As Long, ByVal Class As String, Optional FindId As Integer, Optional Id As Integer) As Long
   '[mycode_id:1934],edittime:2011/8/3 3:30:07
      Dim Hwnd2 As Long
      Dim FindHwnd As Long, TempFindHwnd As Long
      Hwnd2 = GetWindow(WinHwnd, GW_CHILD)
      While FindHwnd = 0 And Hwnd2 > 0
                  If GetClass(Hwnd2) = Class Then
                       TempFindHwnd = Hwnd2
                       
                       If Id = FindId Then
                           FindHwnd = TempFindHwnd
                           GoTo DoEnd
                       Else
                           Id = Id + 1
                       End If
                   End If
                  
                  FindHwnd = FindHwndByClassAndId(Hwnd2, Class, FindId, Id)
                  Hwnd2 = GetWindow(Hwnd2, GW_HWNDNEXT)
      Wend
   DoEnd:
      FindHwndByClassAndId = FindHwnd
   
End Function
'┗〓〓〓〓〓〓〓〓〓  FindHwndByClassAndId,end  〓〓〓〓〓〓〓〓〓┛
  • 打赏
  • 举报
回复
用FindWindowEx应该可以的,全用FINDWINDOWEX(HWND,HWND1,VBNULLSTRING,VBNULLSTRING) 有时你指定类还不行,全用NULL反倒行,再按所得到的所有HWND,得到其CLASS,进行比较
现在还是人类 2013-08-07
  • 打赏
  • 举报
回复
搞这种东西你的方式不对,建议你了解一下BHO技术,你可以百度一下“vb bho”
Tea_123 2013-08-07
  • 打赏
  • 举报
回复
引用 4 楼 xiaoyao961 的回复:
我就是用这个方式处理的
'┏〓〓〓〓〓〓〓〓〓 FindHwndByClassAndId,start 〓〓〓〓〓〓〓〓〓┓
'[简介]:
'查找窗体中多层次下第几个相同类的句柄
Function FindHwndByClassAndId(WinHwnd As Long, ByVal Class As String, Optional FindId As Integer, Optional Id As Integer) As Long
   '[mycode_id:1934],edittime:2011/8/3 3:30:07
      Dim Hwnd2 As Long
      Dim FindHwnd As Long, TempFindHwnd As Long
      Hwnd2 = GetWindow(WinHwnd, GW_CHILD)
      While FindHwnd = 0 And Hwnd2 > 0
                  If GetClass(Hwnd2) = Class Then
                       TempFindHwnd = Hwnd2
                       
                       If Id = FindId Then
                           FindHwnd = TempFindHwnd
                           GoTo DoEnd
                       Else
                           Id = Id + 1
                       End If
                   End If
                  
                  FindHwnd = FindHwndByClassAndId(Hwnd2, Class, FindId, Id)
                  Hwnd2 = GetWindow(Hwnd2, GW_HWNDNEXT)
      Wend
   DoEnd:
      FindHwndByClassAndId = FindHwnd
   
End Function
'┗〓〓〓〓〓〓〓〓〓  FindHwndByClassAndId,end  〓〓〓〓〓〓〓〓〓┛
我获取好几个子窗口的子窗口的句柄获取了Internet Explorer_Server的句柄,就是不知如何让Internet Explorer_Server重新定向浏览其他网页
无·法 2013-08-07
  • 打赏
  • 举报
回复
根据类名 Internet Explorer_Server 进行查找
  • 打赏
  • 举报
回复
这是要做什么用?
代码下载链接: https://pan.quark.cn/s/90fbf78c3289 "1元云购"是一种依托互联网的购物方式,用户仅需投入微小的资金(一般为一元)便有机会赢取高价值商品。此类模式常借助抽奖机制来判定获胜者,从而吸引众多用户加入。"1元云购源代码"是承载该业务流程的程序代码,其用途在于搭建一个完整的1元云购系统。 在构建1元云购源代码的过程中,主要包含以下几个核心技术要点: 1. **数据库架构**:为了有效存储商品详情、用户资料、交易历史及开奖结果,必须设计科学合理的数据库框架。这包括商品数据表、用户信息表、订单记录表和开奖记录表等,确保数据的统一性与完整性。 2. **支付渠道对接**:1元云购平台需与第三方支付服务(例如支付宝、微信支付)进行对接,以实现用户的在线支付操作。这涉及API接口调用、交易状态同步、退款流程管理等环节。 3. **随机数生成策略**:抽奖过程的核心在于公平透明地选定获奖者,通常采用随机数生成策略来实现。该策略需保障每位参与者拥有相等的获奖机会,同时防止欺诈行为。 4. **用户界面开发**:卓越的用户体验是吸引参与者的关键因素。前端页面应兼具视觉吸引力与操作便捷性,清晰展示商品信息、购买步骤、中奖规范等,并提供用户注册、登录、查询订单等功能。 5. **服务器程序设计**:后端系统负责处理用户请求,如管理订单、计算中奖号码、更新数据库信息等。这部分通常采用PHP等服务器端技术实现,需应对并发访问与高负载情形。 6. **安全措施**:1元云购平台可能面临恶意攻击,例如SQL注入、XSS跨站脚本攻击等。因此,源代码需遵循安全编程准则,对用户输入进行过滤与校验,同时运用HTTPS等加密手段保障数据传输安全。 7. **...

1,488

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧