А кто знает, как сделать скриншот неактивного рабочего стола?
Пытался сделать следующим образом:
1. Создаю поток.
2. В этом потоке открываю рабочий стол (dsk = OpenDesktop(..))
3. Назначаю потоку этот рабочий стол (SetThreadDesktop(dsk))
4. Далее, в этом потоке действую как было описано выше (..BitBlt...)
Результат:
Если я открываю активный рабочий стол, то скриншот получается.
Если же открываю другой рабочий стол, то получается сплошная чернота. При этом BitBlt возвращает false и GetLastError = 6 (Неверный дескриптор).
Вот. Кто-нибудь знает, как можно это исправить и возможно ли вообще у неактивного рабочего стола снять скриншот?
|