Zum Inhalt springen

[c#] Starten eines externen Programms aus einem Dienst


Empfohlene Beiträge

Geschrieben

Hallo,

Ich habe einen Dienst erstellt welcher mir Dateien erzeugt. Zu einem bestimmten Zeitpunkt wird ein Thread gestartet in dem ich ein externes Programm starten will ( sqlplus ). Das ganze mache ich mit


System.Diagnostics.ProcessStartInfo sInfo = new System.Diagnostics.ProcessStartInfo();

sInfo.FileName = "sqlplus.exe";

 sInfo.Arguments = "userid/password@db @" + strTmp;

System.Diagnostics.Process prz = System.Diagnostics.Process.Start(sInfo);

try

{

    prz.WaitForExit();

}

catch (System.ComponentModel.Win32Exception ex)

{

}

catch (SystemException ex)

{

}

Das ganze startet auch aber es tut sich absolut nichts. D.h. der Prozess wird nie beendet bzw. tut einfach nichts. Die Ausführung bleibt bei WaitForExit hängen ( soll ja auch so sein ). Wenn ich das gleiche nicht aus einem Dienst starte funktioniert alles!

Ist es irgendwie möglich eine Konsolenanwendung aus einem Dienst heraus zu starten die dann auch abläuft?

Geschrieben

Naja der Dienst hat ja erstmal keinen Desktop zur Verfügung um die Konsole darzustellen.

Wenn du dir in der Windowsverwaltung die Optionen zu einem beliebigem Dienst anschaust dann siehst du auf dem Reiter Anmelden bei Lokalem Systemkonto die Option "Datenaustausch zwischen Dienst und Desktop zulassen".

Diese musst du entwqeder manuell oder mit dem Programm das den Dienst anlegt setzten. Dann sollte es gehen.

Geschrieben

eher schlecht, da der Dienst unter einem Benutzer ausgeführt wird. Wenn ich ihn mit LocalSystem laufen lassen will startet er gar nicht.

Und ja, der Benutzer hat Admin Rechte

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...