Wie man den aktuellen windows-Benutzernamen aus der windows-Dienst im multiuser-Umfeld benutzen .NET

Ich habe einen windows-Dienst ausführen, eine WPF-Anwendung die ganze Zeit für alle angemeldeten Benutzer, welche gut funktioniert, jetzt in der WPF-Anwendung, die ich nicht bekommen kann eine aktuelle username Umgebung.UserName; gibt 'SYSTEM', was verständlich ist. also, was ich dachte, war, eine session-id des aktuellen Prozesses, die abgerufen werden konnten, durch den Prozess.GetCurrentProcess().SessionId und dann bekommen Sie die Liste aller angemeldeten Benutzer in die Maschine und Durchlaufen Sie zu finden, die die session-id-übereinstimmung mit Prozess-session-id und später seinen Benutzernamen.

aber ich weiß nicht, wie man die Liste aller angemeldeten Benutzer, oder ich wäre dankbar, wenn mir jemand helfen kann mit alternativen.

  • Kann man sich alle aktiven Prozesse mit einem Fenster und bekommen die Benutzer dieses Prozesses. Ein Dienst läuft als SYSTEM sollte die Rechte, dies zu tun.
  • Warum nicht einfach senden Sie die Benutzername, um Ihren Dienst, wenn es beginnt, zu tun, was es für Sie tut. Prozess.GetCurrentProcess werden Ihren service in der service -...
  • Erstens kann ich nicht den Benutzernamen aus der windows-Dienst und zweitens nehme ich alles "winlogon" - Prozess, d.h. die Anzahl der angemeldeten Benutzer und Angabe der WPF-Anwendung in den einzelnen Benutzer-session.
  • Ich nicht fangen Szenario! jeder Benutzer ausgeführt, es ist ein eigenes WPF-Anwendung oder gibt es nur eine WPF-Anwendung und einer Menge von Benutzern zu den gleichen Zeiten?
  • Sie sind auf der Suche nach "Identität Anrufer". Es gibt eine gute chance, dass Wie: die Identität des Ursprünglichen Aufrufers in WCF ist der Artikel, den Sie versuchen, zu finden.
  • Szenario ist ein windows-Dienst pro Maschine, und eine WPF-Anwendung pro Benutzer auf der gleichen Maschine, ist jetzt auf einmal ist die WPF-app ausgeführt wird, ich möchte den angemeldeten Benutzernamen und es sind viele andere angemeldet als auch mit Ihren eigenen WPF-Anwendungen laufen
  • Als ich versuchte, Sie zu sagen, bevor Der Weg zum tun ist, um die wpf-Anwendung zu senden, die Sie an den Dienst. Alle service-Bedürfnisse einige comms und einen Ort zum speichern (es / Sie) und definitiv keine Notwendigkeit für alle Reifen man stolpern durch jetzt.

InformationsquelleAutor Syed Waqas | 2014-02-10
Schreibe einen Kommentar