Windows Dienste starten als Benutzer XY

Tagchen Xperten,
ich seitze grad vor dem Problem einen bestimmten externen Windows dienst, der bereits als solcher eingetragen ist quasi umzustarten.

Er soll nciht als lokales Systemkonto, sondern bspw als Benutzer XY laufen.

Nru leider finde ich trotz langer Googelei nur Links, wie man denn Dienste unter C# programmeirt und nicht, wie man bereits gestartete manipuliert .

Ich hoffe, mir kann da jemand helfen.

MfG
Christoph

Hallo Herr Krause.

Zu freundlich dieselbe Frage auch unter http://www.entwickler-forum.de zu stellen. Route .NET - C# - ‚Titel wie oben‘
Und der Kollege dort scheint recht zu haben (ja, ich kenne die Debatte von wg. Antworten via google). Aber trotzdem: http://www.google.de/search?hl=de&biw=1280&q=Managem


Das soll jetzt keine Abwertung dieses Forums darstellen. Im Gegenteil: es zeigt, dass auch andere Quellen konsultiert werden :smile:
Dennoch ist ein solcher DP-Charakter eher Àrgerlich. Ausserdem ist das Entwickler Forum auf Fragen solcher Art spezialisierter als w-w-w :wink:

HTH
mfg M.L.

ps.: das schlaue Buch ‚C# GE-PACKT‘ hat hierauf ĂŒbrigens keine Antwort

HaHa, sehr witzig
Danke fĂŒr die wenig hilfreiche Antwort.

Bei Google finde ich massig Tipps, wie ich eigene Services schreibe, leider aber nicht das, was ich suche.

Da ich schon einmal vor etwa einem Monat eine Àhnliche Anfrage stellte, auf die es leider auch nur solche Antworte (s.o.) gab, habe ich dieses mal beschlossen, die Anfrage etwas zu fÀchern.

Es wĂ€re echt schön, wenn der Link „Antwort schreiben“ wörtlich genommen wĂŒrde und es sich tatsĂ€chlich um Antworten und nicht um Kommentare handeln wĂŒrde!

MfG
Christoph
PS.
Hast Du Dir die Google suche eigentlich mal angeguckt oder die einfach nur so eingestellt???

1 Like

Jetzt hat der Doppelposting-Sheriff-Wahn offenbar eine neue Dimension erreicht: Nun werden Leute schon angepflaumt, wenn sie auf einer anderen Webseite auch Ihre Fragen stellen, ich glaub’s ja kaum!

Kannst Du Dir _BITTE_ solche Kommentare in Zukunft verkneifen?

*kopfschĂŒttel*

Martin

[Bei dieser Antwort wurde das Vollzitat nachtrÀglich automatisiert entfernt]

1 Like

Hallo.

Jetzt hat der Doppelposting-Sheriff-Wahn offenbar eine neue
Dimension erreicht: Nun werden Leute schon angepflaumt, wenn
sie auf einer anderen Webseite auch Ihre Fragen
stellen, ich glaub’s ja kaum!

Kannst Du Dir _BITTE_ solche Kommentare in Zukunft verkneifen?

Klar. Nur: WO ist DEINE Antwort auf die Frage ?

In diesem Sinne
mfg M.L.

1 Like

Die Antwort
Damit sich jemand, der irgendwann mal ein Ă€hnliches Problem hat evt freut und nicht ĂŒber einen Thread mit nichtssagenden Antworten flucht:

Die Lösung:

 public void Change(string ServiceName, string Username, string Password) 
 { 
 ManagementPath myPath = new ManagementPath(); 
 ManagementBaseObject outParams = null; 
 myPath.Server = System.Environment.MachineName; 
 myPath.NamespacePath = @"root\CIMV2"; 
 myPath.RelativePath = "Win32\_Service.Name='" + "ServiceName" + "'"; 
 ManagementObject service = new ManagementObject(myPath); 
 ManagementBaseObject inputArgs = service.GetMethodParameters("Change"); 
 inputArgs["StartPassword"]= Password; 
 inputArgs["StartName"] = Username; 
 service.InvokeMethod("Change",inputArgs,null); 
 } 

Wobei man darauf achten sollte, dass dem lokalen Benutzernamen ein „.“ vorangestellt werden muss.