Скриншот скрытого окна - PullRequest
       4

Скриншот скрытого окна

3 голосов
/ 25 февраля 2011

Мне нужно сделать снимок экрана скрытого в данный момент окна, не фокусируясь на этом окне.Я видел сообщение об этом, здесь: Скриншот окна с использованием WinAPI

Я никогда не использовал этот метод, поэтому любые советы очень ценятся.

Я хотел быбыть в состоянии сделать это либо в Windows или OS X, это возможно сделать в OS X?Он не обязательно должен быть на одном языке или кроссплатформенным, но, конечно, это плюс:).

Ответы [ 2 ]

4 голосов
/ 28 февраля 2011

Я бы изучил возможность попросить окно нарисовать себя в растровом изображении, вместо того, чтобы пытаться сделать его снимок экрана.Это может быть способом сделать ненужным, чтобы окно было свернуто.Что-то вроде сообщения WM_PRINT или WM_PRINTCLIENT.Я подозреваю, что это именно то, что пытался сделать тот, кто задал оригинальный вопрос, с которым вы связались.Самая большая ошибка в том, что окно не обрабатывает это сообщение должным образом.Не все приложения так хороши.Кроме того, я не думаю, что это работает для окон, которые действительно скрыты, но я не могу судить по вашему вопросу и потоку статей, на которые вы ссылаетесь, действительно ли это вызывает беспокойство.также ничего не знаю о программировании OS X;Я просто пользователь на этой платформе.Вы можете попробовать погрузиться в источники Qt, чтобы увидеть, как они делают это кроссплатформенно, если это действительно важно для вас.

0 голосов
/ 25 февраля 2011

Трудно представить, что у вас может быть одно решение, которое будет работать в Windows и OS X. Фреймворки окон полностью отличаются. Труднее было бы придумать одно решение, а написать два.

По крайней мере, в Windows я не уверен, что вам повезет, сделав скриншот скрытого или затемненного окна. Когда вы ищите это в Интернете, вы найдете миллионы обращений к людям, которые задают этот вопрос. Ни один из них, кажется, не преуспел. Если вы учитываете DWM и Aero glass, то я думаю, что ваши шансы на успех ограничены.

...