Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Screenshot erzeugen funktioniert nur mit GUI user (https://www.delphipraxis.net/97586-screenshot-erzeugen-funktioniert-nur-mit-gui-user.html)

instinct-vfx 13. Aug 2007 09:12


Screenshot erzeugen funktioniert nur mit GUI user
 
Hallo zusammen,

ich arbeite derzeit an einem kleinen Helferlein um unsere renderfarm managen zu koennen.
Es ist einfach ein kleines tool das im tray rumlungert bis es via TCP ein Kommando bekommt
und setzt dieses dann um. Das reicht von Runterfahren, Neustarten, Programme starten eben
bis hin zum screenshot des desktops.

Mittels dieses Codesnippets aus der Library http://www.delphipraxis.net/internal...ght=screenshot
erzeuge ich den screenshot, assigne das TBitmap an ein TJPEGImage und speichere es auf den server (damit
es von PHP aus zugaenglich ist).

Soweit funktioniert das auch wunderbar. Allerdings NUR solange ich via RemoteDesktop auf
der betreffenden Maschine eingeloggt bin. Sobald ich diese Session beende kommt nur noch
ein grosses weisses jpg an. Irgendwelche Ideen wieso und was man da machen koennte ?

Und hat jemand vielleicht nen Tipp um schneller an die Screenshots zu kommen (dauert zwischen
ner halben Sekunde bis ne Sekunde (die rechner stehen ja meistens unter last) und darauf
muss ich dann in php blind warten).

Gruesse,
Thorsten

OregonGhost 13. Aug 2007 09:20

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Hmm, ein Tool im Tray in der TNA läuft doch unter einem Benutzerkonto, per Definition, oder? Unter welchem Benutzer läuft es, wenn du nicht eingeloggt bist?

instinct-vfx 13. Aug 2007 09:31

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
naja, die renderrechner loggen sich automatisch mit einem Domaenen-Account ein. Wenn ich mich
ueber Remote Desktop einlogge verwende ich genau dieses Domaenen-Account. Denn dann wird der
user auch nicht ausgeloggt und die renderings koennen weiterlaufen. Irgendwie scheint mir aber
trotz des eingeloggten accounts (denn das tool reagiert ja auch wunderbar und schreibt auch
ein jog, nur isses halt weiis) irgendwie die GUI abgeschaltet zu sein oder dergleichen.

Gruss,
Thorsten

GimbaR 13. Aug 2007 10:09

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Benutzt du bei der Remote-anmeldung den Parameter "/console"?

instinct-vfx 13. Aug 2007 10:15

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
wusset gar nich das es den gibt :P Ich geh einfach ueber den Remotedesktop client mit default settings auf den
Rechner. Und dann seh ich ganz normal den Desktop. Dann klappt das auch mit den screenshots. Sobald ich aber
nicht mehr drauf bin eben nicht mehr. Ich schnalls aber auch nich. Denn ich kann auch einfach nen monitor
an den Rechner anschliessen und sehe sofort was sache ist. Also der user IST durchgehend angemeldet. :gruebel:

Gruss,
Thorsten

DGL-luke 13. Aug 2007 10:17

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Hat die Grafikkarte vielleicht einfach keinen Bock, was zu zeichnen, wenn kein Monitor da ist?

instinct-vfx 13. Aug 2007 10:20

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Naja, aber sie zeichnet ja auch wenn ich nur ueber den Remotedesktop drauf geh, dann ist ja immernoch kein
Monitor da. Es muesste dann ja irgend ne moeglichkeit geben der Grafikkarte zu sagen das sie entweder
Immer zeichnet oder aber punktuell wenn ich einen Screenshot machen will. hm

Gruss,
Thorsten

OregonGhost 13. Aug 2007 10:21

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Hast du mal geguckt, ob irgendeine Funktion einen möglicherweise aussagekräftigen Fehler zurückgibt?

DGL-luke 13. Aug 2007 10:22

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Hilft es, zuvor eine WM_DRAW oder WM_COPY Message an den Desktop abzusetzen?

Außerdem gibt es ja noch PaintTo...

iGoA 13. Aug 2007 10:25

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Vielleicht läuft ein Bildschirmschoner oder ähnliches, wenn man nicht angemeldet ist?

GimbaR 13. Aug 2007 21:12

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Wenn man in der Remotedesktopverbindung nicht einstellt, dass man sich an der Konsolensitzung anmelden möchte, wird für jede RDP-Verbindung eine neue Session gestartet. Versuche mal den Parameter /console" zu verwenden.
Also Start -> Ausführen und dann "mstsc /v:IP /console /f"
Ansonsten kannst du auch mal "mstsc /?" einegeben, dann werden die alle möglichen Parameter kurz erläutert.

Dezipaitor 14. Aug 2007 00:13

Re: Screenshot erzeugen funktioniert nur mit GUI user
 
Zitat:

Zitat von instinct-vfx

Soweit funktioniert das auch wunderbar. Allerdings NUR solange ich via RemoteDesktop auf
der betreffenden Maschine eingeloggt bin. Sobald ich diese Session beende kommt nur noch
ein grosses weisses jpg an. Irgendwelche Ideen wieso und was man da machen koennte ?

Das ist ein inoffzieller Bug und wurde bis jetzt nicht behoben - vielleicht im SP3.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 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