Hi, ich arbeite mit dem Autor des Threads zusammen und versuche die Problematik nochmal ein wenig genauer zu spezifizieren !
Es geht im Grunde nicht darum den aktuell angemeldeten Nutzer auszulesen. Das wäre ja auch nicht die Schwierigkeit !
Das Problem was wir haben, ist das wenn unser Programm durch übergabe eines Druckauftrages an einen bestimmten Drucker angestoßen wird, der ausführende Benutzer das System ist !
So weit so gut. Wenn jetzt unser Programm den Druckauftrag abfängt und ihn z.B. auf dem Desktop oder in den Eigenen Datein von Windows via TSafeDialog temporär ablegen soll. Tritt das Problem auf. Der Pfad z.B. unter WindowsXP zum Desktop lautet dann nämlich nicht mehr c:\dokumente einstellungen\NutzerName\Desktop sondern c:\dokumente einstellungen\LocalService\Desktop! Und genau da liegt das Problem. Is ja auch klar, weil dem Nutzer SYSTEM LocalService als Zielpfad zugeordnet ist !
Gibt es vielleicht eine Möglichkeit den Druckauftrag als normalen Nutzer also nicht als Nutzer SYSTEM anzustoßen, damit wir das Problem umgehen können ? Irgendwelche speziefischen
API Calls für XP oder Win2k wie z.B. "LsaEnumerateLogonSessions" bringen uns auch nicht weiter, da das Ganze ja auch z.B. unter 98 laufen soll *g*
Vielleicht fällt euch ja noch was ein, wäre super !
Greets
Drysek