我正在使用以下代码来模拟按下 PrintScreen 按钮以捕获 Internet Explorer 窗口的图像。我已将 Printscreen 指定为 Greenshot 工具中的热键,以一次性捕获整页的图像,而无需滚动。
Extern.Declare micLong, "PostMessage", "user32.dll", "PostMessageA", micHwnd, micLong, micLong, micLong
Const WM_KEYDOWN = 273
Const VK_SNAPSHOT = 44
iResult = Extern.PostMessage( Hwnd, WM_KEYDOWN, VK_SNAPSHOT, 0)
但不知何故,值iResult
始终为 1。Hwnd
是传递给Postmessage
函数的 Internet Explorer 窗口的实际窗口句柄。我之所以使用这种方法是因为截图捕获过程需要完全自动化,并且应该在系统锁定时运行。SendKeys
系统锁定时不起作用,因此我不得不移至Post Message
.
有人可以帮我解决这个问题。