![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
| |
| | #1 (permalink) |
| | BitBlt bug with Aero Seems that Bitblt is not working well when Vista theme (aero) is enabled. When I try to copy a portion of the screen, the result is distorted. Note that the same result happened with Alt+Print screen in earlier Vista builds but is now solved. Are there any new bitblt flags to be used now? Following code demonstrates the problem: #include "stdafx.h" int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { // TODO: Place code here. HWND wnd = ::GetDesktopWindow(); HDC hdc = ::GetDC(wnd); HDC memDC = ::CreateCompatibleDC(hdc); HBITMAP bm = ::CreateCompatibleBitmap(hdc, 1000,1000); HBITMAP oldBM = (HBITMAP)::SelectObject(memDC, bm); ::BitBlt(memDC,0,0,1000,1000, hdc,0,0, SRCCOPY); ::OpenClipboard(wnd); ::EmptyClipboard(); ::SetClipboardData(CF_BITMAP, bm); ::CloseClipboard(); ::SelectObject(memDC,oldBM); ::ReleaseDC(wnd,hdc); return 0; } After running this code, you can paste the result into mspaint for example and see the problem. Any idea? |
My System Specs![]() |
| | #2 (permalink) |
| | Re: BitBlt bug with Aero Have you searched at the msdn connect site (http://connect.microsoft.com/) if this is filed as a bug? If it is not, maybe you could file it. <danny.yeshurun@gmail.com> wrote in message news:1155043547.497991.82000@p79g2000cwp.googlegroups.com... > Seems that Bitblt is not working well when Vista theme (aero) is > enabled. > When I try to copy a portion of the screen, the result is distorted. > Note that the same result happened with Alt+Print screen in earlier > Vista builds but is now solved. Are there any new bitblt flags to be > used now? > > Following code demonstrates the problem: > > > #include "stdafx.h" > int APIENTRY WinMain(HINSTANCE hInstance, > HINSTANCE hPrevInstance, > LPSTR lpCmdLine, > int nCmdShow) > { > // TODO: Place code here. > HWND wnd = ::GetDesktopWindow(); > HDC hdc = ::GetDC(wnd); > > > HDC memDC = ::CreateCompatibleDC(hdc); > > > HBITMAP bm = ::CreateCompatibleBitmap(hdc, 1000,1000); > > > HBITMAP oldBM = (HBITMAP)::SelectObject(memDC, bm); > ::BitBlt(memDC,0,0,1000,1000, hdc,0,0, SRCCOPY); > > > ::OpenClipboard(wnd); > ::EmptyClipboard(); > ::SetClipboardData(CF_BITMAP, bm); > ::CloseClipboard(); > > > ::SelectObject(memDC,oldBM); > ::ReleaseDC(wnd,hdc); > return 0; > > > > } > > > After running this code, you can paste the result into mspaint for > example and see the problem. > > Any idea? > |
My System Specs![]() |
| | #3 (permalink) |
| | Re: BitBlt bug with Aero I was not able to find anything about this there and I am not able to submit a bug. I don't have a participation ID or what ever you need for this. I wonder if someone from MS is bothering to read here as well. Lebesgue wrote: > Have you searched at the msdn connect site (http://connect.microsoft.com/) > if this is filed as a bug? > If it is not, maybe you could file it. > > <danny.yeshurun@gmail.com> wrote in message > news:1155043547.497991.82000@p79g2000cwp.googlegroups.com... > > Seems that Bitblt is not working well when Vista theme (aero) is > > enabled. > > When I try to copy a portion of the screen, the result is distorted. > > Note that the same result happened with Alt+Print screen in earlier > > Vista builds but is now solved. Are there any new bitblt flags to be > > used now? > > > > Following code demonstrates the problem: > > > > > > #include "stdafx.h" > > int APIENTRY WinMain(HINSTANCE hInstance, > > HINSTANCE hPrevInstance, > > LPSTR lpCmdLine, > > int nCmdShow) > > { > > // TODO: Place code here. > > HWND wnd = ::GetDesktopWindow(); > > HDC hdc = ::GetDC(wnd); > > > > > > HDC memDC = ::CreateCompatibleDC(hdc); > > > > > > HBITMAP bm = ::CreateCompatibleBitmap(hdc, 1000,1000); > > > > > > HBITMAP oldBM = (HBITMAP)::SelectObject(memDC, bm); > > ::BitBlt(memDC,0,0,1000,1000, hdc,0,0, SRCCOPY); > > > > > > ::OpenClipboard(wnd); > > ::EmptyClipboard(); > > ::SetClipboardData(CF_BITMAP, bm); > > ::CloseClipboard(); > > > > > > ::SelectObject(memDC,oldBM); > > ::ReleaseDC(wnd,hdc); > > return 0; > > > > > > > > } > > > > > > After running this code, you can paste the result into mspaint for > > example and see the problem. > > > > Any idea? > > |
My System Specs![]() |
| | #4 (permalink) |
| | Re: BitBlt bug with Aero <danny.yeshurun@gmail.com> wrote in message news:1155716059.460088.190970@h48g2000cwc.googlegroups.com... >I was not able to find anything about this there and I am not able to > submit a bug. > I don't have a participation ID or what ever you need for this. > I wonder if someone from MS is bothering to read here as well. You need just a .NET Passport or Live ID or whatever they call it now. You can submit a bug in WPF here: http://connect.microsoft.com/feedbac...spx?SiteID=212 |
My System Specs![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| Aero theme missing, vista theme were actually aero | Vista General | |||
| Aero Theme will not stay set and so cannot turn on Aero | Vista General | |||
| Dreamscene broke Aero. I want Aero back. Help please. | Vista General | |||
| AERO | Vista General | |||