【已解决】关于全屏截图在电脑锁屏后截图出错,如何解决?
本帖最后由 chamlien 于 2015-3-11 23:35 编辑#include <ScreenCapture.au3>
while 1
sleep(10000)
_Main()
WEnd
Func _Main()
Local $hBmp
; 捕获整个屏幕
$hBmp = _ScreenCapture_Capture("")
; 保存位图到文件
_ScreenCapture_SaveImage(@MyDocumentsDir & "\GDIPlus_Image.jpg", $hBmp)
EndFunc ;==>_Main
电脑锁屏后,会出错,怎样解决?出错如下:
==> Subscript used on non-accessible variable.:
If $aCursor Then
If $aCursor^ ERROR 这样: _ScreenCapture_Capture(@MyDocumentsDir & "\GDIPlus_Image1.jpg")
个人感觉是这个原因,如帮助文档里说的:
返 回 值
如果 $sFileName 为空, 则函数返回一个位图句柄.
如果调用 $sFileName, 则图像保存到文件中, 并且没有返回值. 测试没问题,提示的是数组出错,你就得检查数组的位置啊,你代码都没有数组,肯定不是这段代码的问题 回复 3# zldfsz
我就是用这个代码测试的,没有其他多余的数组之类的了 回复 2# vigiles
用了你的方法测试也是同样的错误提示。 _ScreenCapture_Capture() 函数内部问题
缺少一个数组的判断,自行修改 ScreenCapture.au3 内该函数,将其“If $aCursor Then” 改为 “If IsArray($aCursor) And $aCursor Then” 回复 6# afan
谢谢A大,已经解决问题了!!
页:
[1]