AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[Delphi/Win7] Screenshot aus Dienst heraus

Ein Thema von rollstuhlfahrer · begonnen am 3. Mai 2011 · letzter Beitrag vom 6. Mai 2011
Antwort Antwort
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#1

[Delphi/Win7] Screenshot aus Dienst heraus

  Alt 3. Mai 2011, 11:09
HI @all,

ich bin gerade dabei eines meiner Programme Win7-fit zu machen. Eines der Features war es, einen Screenshot zu erstellen. Unter WinXP war das ganz einfach: Einfach im Dienst den Screenshot mit den bekannten Methoden erstellen und gut. Jetzt gibt es unter Win7 ein paar klitzekleine Probleme: Statt einem Screenshot ist das komplette Bild jetzt entweder ganz schwarz oder ganz weiß (anderer Quellcode).

So: Meine Frage ist jetzt: Wie mache ich, dass ich in meinem Dienst wieder einen Screenshot bekomme? - UltraVNC hat auch kein Client-Programm, welches mit Benutzerrechten läuft und einen Treiber habe ich nicht eingespielt. - Somit müsste das mein Programm ja auch können. Nur wie?

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 3. Mai 2011, 11:12
Das Problem wird sein, dass der Service auf Deskop0 läuft. Müsstest du mit ImpersonateLoggedOnUser() und co. rumspielen vermute ich.

Zu VNC: Dieses Programm installiert ohne Treiber einen Usermode Hook (dll) in alle laufenden Prozesse, wenn ich mich recht erinnere. Dort wird auch nicht einfach ein Screenshot gemacht, sondern GDI Zugriffe gezielt abgefangen.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#3

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 06:58
Das Problem wird sein, dass der Service auf Deskop0 läuft. Müsstest du mit ImpersonateLoggedOnUser() und co. rumspielen vermute ich.
Ist ja auch ziemlich einfach^^. Über einen weiteren Tipp in die richtige Richtung würde ich mich freuen.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
taveuni

Registriert seit: 3. Apr 2007
Ort: Zürich
526 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 07:59
In etwa so.

Gruss Werner
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#5

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 08:06
Muss ich das mit dem Screenshot also in ein "externes" Programm auslagern?

Oder gibt es noch eine Möglichkeit, wo der Code im Dienst ausgeführt werden kann? (Falls nicht, kann ich dem Client-Prozess Admin-Rechte mitgeben oder sollte ich schon mal anfangen, mir Gedanken zu machen, wie ich das Bild dann in meinen Dienst rein bekomme?)

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 08:24
Unter WinXP war das ganz einfach: Einfach im Dienst den Screenshot mit den bekannten Methoden erstellen und gut.
Das kann aber nur mit einem interaktiven Dienst funktioniert haben. Seit Vista gibt es diese aber nicht mehr, da sie ein Sicherheitsrisiko waren.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#7

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 08:30
Ja, das war ein interaktiver Dienst, weil ich damals (ist schon lange lange her) irgendwelche Probleme mit nicht-interaktiven Diensten hatte. Mittlerweile sollte ich diese nicht mehr haben, den Screenshot hätte ich aber gerne trotzdem.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
taveuni

Registriert seit: 3. Apr 2007
Ort: Zürich
526 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 09:39
Mit der oben beschriebenen Methode erhält man aus einem Dienst heraus
Zugriff auf den Benutzer Desktop. Somit kann dann natürlich auch ein
Screenshot gemacht werden. Das funktioniert bisher inkl. W7 und Srv2008.

Also Du benötigst kein separates Programm.
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#9

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 12:47
Man kann dasselbe Programm auf diese Art und Weise mehrfach starten, aber trotzdem ist ein zweiter Prozess zwingend notwendig. Es gibt keinen anderen Weg ohne Treiber.
http://www.delphipraxis.net/109191-p...ich-mal-3.html
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
taveuni

Registriert seit: 3. Apr 2007
Ort: Zürich
526 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: [Delphi/Win7] Screenshot aus Dienst heraus

  Alt 6. Mai 2011, 12:59
Stimmt natürlich.
Ich hatte es so verstanden dass er kein 2.Programm (=EXE) möchte.
Wenn er das ursprüngliche im Benutzerkontext Z.B. mit einem Parameter aufruft ist das wohl
das Gleiche Programm aber ein anderer Prozess.
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz