漫反射 发表于 2012-1-4 17:03:28

[已解决]如何根据ie对象获取窗口句柄

本帖最后由 漫反射 于 2012-1-6 13:03 编辑

用au3调用默认浏览器打开一个地址可以返回其对象来进行ie操作,那有没有办法用这个对象来进行窗口操作呢,也就是如何得到窗口句柄

user3000 发表于 2012-1-4 17:17:15

最近正在学习IE操作.
#include <IE.au3>
$oIE = _IECreate('$url')
这个就是你想要的吗?

风行者 发表于 2012-1-4 17:19:12

$oIE.hwnd

漫反射 发表于 2012-1-4 17:26:01

回复 3# 风行者

这个才是我想要的,多谢

漫反射 发表于 2012-1-4 17:27:54

回复 2# user3000

$oIE . hwnd    这个就是我想的,多谢参与

user3000 发表于 2012-1-4 17:49:30


风行者 发表于 2012-1-4 17:19 http://www.autoitx.com/images/common/back.gif


    谢谢, 学习了!

漫反射 发表于 2012-1-4 20:07:53

本帖最后由 漫反射 于 2012-1-4 20:46 编辑


风行者 发表于 2012-1-4 17:19 http://www.autoitx.com/images/common/back.gif
为什么不能关闭这个窗口?


#include<ie.au3>
Run(@ProgramFilesDir&'\Internet Explorer\iexplore.exe www.baidu.com')
Sleep(5000)
$IE = _IEAttach("http://www.baidu.com","url")
MsgBox(0,0,@error)
MsgBox(0,0,$IE.hwnd)
WinKill($IE.hwnd)

tsys 发表于 2012-1-5 01:23:27

回复 7# 漫反射 If ProcessExists("iexplore.exe") Then ProcessClose("iexplore.exe")
Run(@ProgramFilesDir&'\Internet Explorer\iexplore.exe www.baidu.com')
Sleep(5000)
Local $list1 = WinList("")
$oIE = _IEAttach($list1,"hwnd")
_IEQuit($oIE)原来winkill 也可以这样用{:face (303):}

user3000 发表于 2012-1-5 08:30:14

回复漫反射 原来winkill 也可以这样用
tsys 发表于 2012-1-5 01:23 http://www.autoitx.com/images/common/back.gif

运行错误:
$oIE = _IEAttach($list1,"hwnd")
$oIE = _IEAttach(^ ERROR
何解?

user3000 发表于 2012-1-5 08:32:45

为什么不能关闭这个窗口?
漫反射 发表于 2012-1-4 20:07 http://www.autoitx.com/images/common/back.gif


    把最后一行 winkill 改为 _IEQuit 就可以.

tsys 发表于 2012-1-5 11:46:41

回复 9# user3000


    {:face (197):}首先你了解为啥要sleep(5000),,你把sleep语句去掉,然后你用_arraydisplay($list) 就明白为什么了, 如果winlist获取不到句柄,自然_IEattach无效,
个人理解,仅供参考

asdasdasd 发表于 2012-1-26 16:07:23

其实风行的做个改进就行了,HWND($oIE.hwnd)

javarike 发表于 2012-12-19 15:26:22

#include<ie.au3>
Run(@ProgramFilesDir&'\Internet Explorer\iexplore.exe www.baidu.com')
Sleep(2000)
$IE = _IEAttach("http://www.baidu.com","url")
MsgBox(0,0,$IE.hwnd)
_IEQuit($IE)



这样测试没有问题,WIN7系统64位的。网址那里去掉 [url]和

piaoa_998 发表于 2012-12-20 16:12:53

#include "IE.au3"
#Include <Array.au3>
If ProcessExists("iexplore.exe") Then ProcessClose("iexplore.exe")
Run(@ProgramFilesDir&'\Internet Explorer\iexplore.exe www.baidu.com')
sleep(5000)
Local $list1 = WinList("")
$oIE = _IEAttach($list1,"hwnd")
_IEQuit($oIE)
页: [1]
查看完整版本: [已解决]如何根据ie对象获取窗口句柄