【发布时间】:2015-11-02 13:36:26
【问题描述】:
尝试https://stackoverflow.com/a/30138664/533237 并能够捕获屏幕。
但我想从会话 0 中运行的应用程序或其他用户捕获屏幕。在捕获并切换到另一个用户之前引入了 10 秒的睡眠。 还尝试了 PsExec.exe -h -s E:\sc.exe。两者都抛出错误
C:\Users\unity\Documents\Visual Studio 2015\Projects\ConsoleApplication2\Debug>sc.exe
FAILURE 0x8876086C (-2005530516)
line: 60 file: 'c:\users\unity\documents\visual studio 2015\projects\consoleapplication2\consoleapplication2\consoleapplication2.cpp'
expr: 'd3d->GetAdapterDisplayMode(adapter, &mode)'
C:\Users\unity\Documents\Visual Studio 2015\Projects\ConsoleApplication2\Debug>PsExec.exe -h -s E:\sc.exe -w E:\
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
FAILURE 0x8876086C (-2005530516)
line: 60 file: 'c:\users\unity\documents\visual studio 2015\projects\consoleapplication2\consoleapplication2\consoleapplication2.cpp'
expr: 'd3d->GetAdapterDisplayMode(adapter, &mode)'
注释掉 GetAdapterDisplayMode 和硬编码的高度和宽度,但 CreateDevice 失败
FAILURE 0x8876086A (-2005530518)
line: 76 file: 'c:\users\unity\documents\visual studio 2015\projects\consoleapplication2\consoleapplication2\consoleapplication2.cpp'
expr: 'd3d->CreateDevice(adapter, D3DDEVTYPE_HAL, NULL, D3DCREATE_SOFTWARE_VERTEXPROCESSING, ¶meters, &device)'
编辑: 想法是让一个应用程序在后台运行并捕获任何显示的内容,而不管用户是否登录或即使没有人登录(锁定/登录屏幕)
【问题讨论】: