Windows 7 Ekran Görüntüsü Sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
en-crazy
Üye
Mesajlar: 17
Kayıt: 28 Ara 2011 04:41

Windows 7 Ekran Görüntüsü Sorunu

Mesaj gönderen en-crazy »

Merhaba arkadaşlar. Programımda aşağıdaki kodlarla ekran görüntüsü alıyorum.Windows XP işletim sisteminde sorun yok fakat Windows 7 işletim sisteminde masaüstünün görüntüsünü alıyor.Yani herhangi bir uygulama veya oyun açık olsa bile onun görüntüsünü değil masaüstü görüntüsünü alıyor.Bu sorunu nasıl çözebilirim? Şimdiden teşekkürler.

Kod: Tümünü seç

var DCDesk: HDC; // hDC of Desktop
bmp: TBitmap;
  gif: TGIFImage;

begin
  {Create a bitmap}
  bmp := TBitmap.Create;

  {Set a bitmap sizes}
  bmp.Height := Screen.Height;
  bmp.Width := Screen.Width;

  {Get a desktop DC handle - handle of a display device context}
  DCDesk := GetWindowDC(GetDesktopWindow);

  {Copy to any canvas, here canvas of an image}
  BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
         DCDesk, 0, 0, SRCCOPY);

  {Save the bitmap}
  bmp.SaveToFile('c:\resim1.bmp');

  {Release desktop DC handle}
  ReleaseDC(GetDesktopWindow, DCDesk);

  {Release a bitmap}
  bmp.Free;
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Windows 7 Ekran Görüntüsü Sorunu

Mesaj gönderen SimaWB »

Şuanda deneme şansım yok ama senin gönderdiğin kod her zaman desktop'un görüntüsünü alır sanırım.
Aktif olan pencerenin görüntüsünü almak istiyorsan:

Kod: Tümünü seç

procedure ScreenShotActiveWindow(Bild: TBitMap);
var
  c: TCanvas;
  r, t: TRect;
  h: THandle;
begin
  c := TCanvas.Create;
  c.Handle := GetWindowDC(GetDesktopWindow);
  h := GetForeGroundWindow;
  if h <> 0 then
    GetWindowRect(h, t);
  try
    r := Rect(0, 0, t.Right - t.Left, t.Bottom - t.Top);
    Bild.Width  := t.Right - t.Left;
    Bild.Height := t.Bottom - t.Top;
    Bild.Canvas.CopyRect(r, c, t);
  finally
    ReleaseDC(0, c.Handle);
    c.Free;
  end;
end;
There's no place like 127.0.0.1
en-crazy
Üye
Mesajlar: 17
Kayıt: 28 Ara 2011 04:41

Re: Windows 7 Ekran Görüntüsü Sorunu

Mesaj gönderen en-crazy »

Teşekkür ederim.Aktif olan pencerenin görüntüsünü almakla sorunu aştım :)
Cevapla