Łukasz C.

Łukasz C. Senior Technical
Architect

Temat: [win] render okna w pamieci

Hej,

wie ktos moze czy jest mozliwe na windowsie zrenderowanie okna aplikacji w pamieci w rozdzielczosci wiekszej niz rozdzielczosc pulpitu?
Maurycy Mikulski

Maurycy Mikulski programista
C++(MS,QT),C#-MVC,SO
AP,AJAX-REST,SQL

Temat: [win] render okna w pamieci

Może trochę szczegółów?
Kiedyś robiłem coś w ten deseń.
Zawartość okna lądowała na drukarce , bądź w pliku.Maurycy Mikulski edytował(a) ten post dnia 30.06.11 o godzinie 14:47
Łukasz C.

Łukasz C. Senior Technical
Architect

Temat: [win] render okna w pamieci

chcialbym zrobic zrzut ekranu okna aplikacji w dowolnej ustalonej przez siebie rozdzielczosci :)
Maurycy Mikulski

Maurycy Mikulski programista
C++(MS,QT),C#-MVC,SO
AP,AJAX-REST,SQL

Temat: [win] render okna w pamieci

No dobrze.
Tylko to zależy czego używasz. Ja robiłem coś takiego w OWL i MFC.
Sprowadza się to na wykonaniu tego samego kodu co jest pod zdarzeniem WM_Print tylko nie na urządzeni będącym oknem a innym (drukarka, pamięć). Można też zapisać jak WMF lub EMF i dowolnie skalować.
W QT jest to parę linijek kodu.Maurycy Mikulski edytował(a) ten post dnia 30.06.11 o godzinie 14:54
Łukasz C.

Łukasz C. Senior Technical
Architect

Temat: [win] render okna w pamieci

ok, a da rade w podobny sposob odpalic zewnetrzna aplikacje?
Maurycy Mikulski

Maurycy Mikulski programista
C++(MS,QT),C#-MVC,SO
AP,AJAX-REST,SQL

Temat: [win] render okna w pamieci

QPixmap QPixmap::grabWindow ( WId window, int x = 0, int y = 0, int width = -1, int height = -1 )

QPixmap to klasa robiąca obrazek w QT.
Metoda grabWindow renderuje zawartość okna do obrazka.
WId window - jest zależne od systemu i dla win powinno odpowiadać HWND hwnd. Niestety nie robiłem tego z zewnątrz więc nie wiem czy to prawda.
Listę uchwytów do okien da się uzyskać, choć nie pamiętam jak. BOOL WINAPI EnumWindows(
__in WNDENUMPROC lpEnumFunc,
__in LPARAM lParam
);Maurycy Mikulski edytował(a) ten post dnia 30.06.11 o godzinie 15:44

Podobne tematy


Następna dyskusja:

manager pamieci




Wyślij zaproszenie do