Autor Beitrag
Mindforce
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 358

Win XP Pro / MCE, Win 98, Slax (Linux)
Delphi 07 PRO, Delphi 3+7 (mit Prdx)
BeitragVerfasst: Mi 03.01.07 00:11 
Hi,

wie kann ich einen bestimmten Teil des Desktops in ein TImage packen, und wie könnte ich diesen Teil makieren?
Es gibt ja viele ScreenShot Programme mitdem man eine Zone makieren kann was "Fotografiert" werden soll.
Genau das möchte ich gerne machen!
Nur, wie?!

Thx!

M!ndforce

_________________
Our force; in mind.
Coder
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1383
Erhaltene Danke: 1

WinXP
D2005 PE
BeitragVerfasst: Mi 03.01.07 01:55 
Such mal nach Screenshot und nach malen oder zeichnen auf den Desktop.

MfG
Mindforce Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 358

Win XP Pro / MCE, Win 98, Slax (Linux)
Delphi 07 PRO, Delphi 3+7 (mit Prdx)
BeitragVerfasst: Mi 03.01.07 22:11 
Hmmmm,

ich finde nex :-(

_________________
Our force; in mind.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 03.01.07 23:02 
Also bei der Suche nach "Screenshot Desktop" habe ich z.B. diesen Thread gefunden: ;-)
www.delphi-forum.de/...t=screenshot+desktop
Mindforce Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 358

Win XP Pro / MCE, Win 98, Slax (Linux)
Delphi 07 PRO, Delphi 3+7 (mit Prdx)
BeitragVerfasst: Mi 03.01.07 23:17 
Hi,

ich hab mir den Thread durchgelesen, kann mir aber kein Code draus mixen einen bestimmten bereich auswählen zu können und ihm zu sagen das er genau diesen Bereich fotografieren soll! :eyes:

M!ndforce

_________________
Our force; in mind.
alias5000
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2145

WinXP Prof SP2, Ubuntu 9.04
C/C++(Code::Blocks, VS.NET),A51(Keil),Object Pascal(D2005PE, Turbo Delphi Explorer) C# (VS 2008 Express)
BeitragVerfasst: Mi 03.01.07 23:27 
user profile iconMrSaint hat im oben verlinkten Artikel geschrieben:
Hmm... Ich hab's aus die Schnelle damit versucht:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
var 
  WinDC,
  MemDC   : hDC;
  Desktop : hBitmap;
  zx,
  zy      : integer;
  bmp     : TBitmap;
begin
  zx := Screen.Width;
  zy := Screen.Height;
  WinDC := GetDC (GetDeskTopWindow); {Bildschirmkontext holen}
  MemDC := CreateCompatibleDC (WinDC); {Kompatiblen Kontext erstellen}
  Desktop := CreateCompatibleBitmap (WinDC, zx, zy); {Bitmaphandle machen}
  SelectObject (MemDC, Desktop); {selektieren}
  BitBlt (MemDC, 0, 0, zx, zy, WinDC, 0, 0, SRCCOPY); {kopieren}
  DeleteDC (MemDC); {und wech damit}
  ReleaseDC (GetDeskTopWindow, WinDC); {diesen auch}
  bmp := TBitmap.Create;
  try
    bmp.Handle := Desktop;
    Image1.Picture.Bitmap.Assign(bmp);
  finally
    FreeAndNil(bmp);
  end;
end;


Leider wird auch ein "normaler" Screenshot gemacht :( Vielleicht fällt mir ja irgendwann mal noch was dazu ein, muss jetzt aber rst mal weg...


MrSaint


Und damit erhälst du ja einen Screenshot des Desktops. Jetzt musst du noch gucken, wie man auf dem Desktop eine Auswahl treffen könnte (da müsste ich jetzt auch suchen, kann da jetzt auch nichts zu sagen). Die Koordinaten kannst du dir ja merken und dann entsprechend das Bild zusammenschneiden.

Ich hoffe das hat nen Denkanstoss gebracht... :roll:

Gruß alias5000

_________________
Programmers never die, they just GOSUB without RETURN
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 04.01.07 00:08 
Naja, was diese Programme machen ist ja, den Benutzer die Auswahl auf dem zuvor erstellten Bildschirmfoto zu machen und dabei ggf. noch die Fenster hervorzuheben.
Es gibt auch Programme, die das anders machen, aber das live zu machen... ich wüsste da nicht wie. Ich glaube da gibts was von Windows von wegen Desktop disablen, aber ich weiß nicht wie das unter XP geht und ob es überhaupt geht.

Das einfachste dürfte sein, einfach ein Bildschirmfoto mit dem obigen Code zumachen, dieses im Vollbild anzuzeigen, z.B. per Formular mit TopMost, und dann den User dort die Auswahl machen lassen. So meinte ich den Hinweis auf den anderen Thread.