程序窗口自动截图?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (13)

我正在寻找一款结合了宏观录制和截图功能的软件。

我们有一个带有许多截图的软件手册。当新版本的软件发布时,我们需要更新大部分屏幕截图,我们必须手动完成。现在我们开始将手册翻译成多种语言,截图的数量增加了十倍。我们希望自动化这个过程。

将会有一个录制的宏或点击我们软件中的按钮,并截取程序窗口的截图。更好的是,我们可以单独指定每个屏幕截图的名称,尽管它并不重要。

这样的事情存在吗?

提问于
用户回答回答于

我使用AutoIt plus captdll.dll来处理所有Windows GUI自动化任务。

例:

Run("Notepad.exe", @WindowsDir, @SW_MAXIMIZE)   ; Open NOTEPAD
Sleep(1000)
Send("Just a Test")   ; Send some text to notepad

; Save the screen to test.jpg  
$anPos = WinGetClientSize("")
$nLeft = 0
$nTop = 0
$nRight = $anPos[0]
$nBottom = $anPos[1]

$sFileName = "test.jpg"
DllCall("captdll.dll", "int:cdecl", "CaptureScreen", "str", $sFileName, "int", 85)

通过这种方式,你可以自动完成整个截图捕获过程:

  • 用Run运行你的应用程序
  • 用发送选择每个菜单选项
  • 使用发送完成每个屏幕的数据
  • 捕获与DllCall(“captdll.dll”....)

扫码关注云+社区