yunbin_7 发表于 2011-5-19 11:24:25

运行脚本时提示,Window handle is not valid

大家好,我用截图工具Screen Capture做截图时,脚本如下:
在函数ErrorCapture里,调用
call oScreenCapture.CaptureIE(oIE.HWND,Dir,"Scrolling Capture",True,True)
但是,在运行时提示
Window handle is not valid,错误是在调用的那个函数里面,请问大家有谁知道这个错误的原因及解决方案,谢谢!

yunbin_7 发表于 2011-5-19 11:39:14

在线等。。

iQuickTest 发表于 2011-5-19 12:19:02

你的hwnd不正确,还有没有看到你具体的函数。

iQuickTest 发表于 2011-5-19 12:21:19

为什么不用QTP自带的截图函数

yunbin_7 发表于 2011-5-19 14:02:20

回复 3# iQuickTest

具体函数如下:
Function ErrorCapture(CaptureObj)
'create the screen capture object
Set oScreenCapture =CreateObject("KnowledgeInbox.ScreenCapture")

'获取存放截图的路径
Dir=Environment("ProjectDir")&"错误截图\"&Environment("PageNum")&".jpg"   

'Capture the active window
hwnd= CaptureObj.GetROProperty( "hwnd" )

'Capture the web page with vertical and horizontal scroll enabled
Set oIE=oScreenCapture.GetIEObjectFromProperty("hwnd",hwnd)

call oScreenCapture.CaptureIE(oIE.HWND,Dir,"Scrolling Capture",True,True)
'oScreenCapture.CaptureIE hwnd,Dir,"",True,True

Environment("PageNum")=Environment("PageNum")+1

ErrorCapture=Dr
'Destroy the object
Set oScreenCapture = Nothing
End Function

yunbin_7 发表于 2011-5-19 14:03:04

请帮忙看以一下,我调试脚本的时候没问题,就是运行QTP的时候,会提示那个错误。。

yunbin_7 发表于 2011-5-19 15:30:43

回复 4# iQuickTest


由于QTP自带的截图只是一屏幕,不能截取到整个page
所以,才使用开源的截图工具,这样效果比较好。

iQuickTest 发表于 2011-5-19 16:41:09

你打印下oIE.HWND

yunbin_7 发表于 2011-5-19 16:42:16

嗯,打印出来这个是有值,6位的数字。
页: [1]
查看完整版本: 运行脚本时提示,Window handle is not valid