Forum: PC-Programmierung C# windows dienst und asp.net


von Martin (Gast)


Lesenswert?

Hallo.
Bin gerade an einem Problem bzw. der Lösungsuche und komme nicht weiter.
Ich entwickle einen Windows Dienst, der permanent auf einem Server läuft 
und Daten von clients entgegen nimmt und diese entsprechend an die 
zugehörigen embedded targets weiterleitet. Dies funktioniert auch bis 
hierher. Nun möchte ich aber eine Art Admin-Funktion einbauen (z.B. 
ändern der ListenPorts des Dienst usw.). Diese würde ich am liebsten 
anstatt in die Client Applikation einzubauen per Browser erreichbar 
machen. Hätte den Vorteil, dass ein Admin nicht die komplette Client 
Applikation installieren muss und dass diejenigen, die die 
Client-Applikationen benutzen, nicht mit den Admin-Funktionen in Kontakt 
kommen, da sie diese eh nicht ausführen dürfen können.
Die konkrete Frage lautet also:
Könnte ich (ASP.NET und C#) eine Webseite entwickeln, die auf dem selben 
Server wie der Windows Dienst liegt und beim Aufruf mit dem Windows 
Dienst zusammenarbeitet? Hab in Fachliteratur geblättert, bin aber nicht 
über diese Funktionalität gestolpert, deswegen die Frage ob jemand weiß, 
ob sowas möglich ist.
Wenn nicht, werde ich halt eine seperate Client-Applikation für Admins 
schreiben, wobei der andere Weg mir viel lieber wäre (auch wenn es 
vielleicht mehr Aufwand ist).

So, hoffe jemand hat sich die Zeit genommen den ganzen Text zu lesen und 
kann mir helfen. Vielen Dank.

von Peter (Gast)


Lesenswert?

wenn du asp.net verwenden willst musst du aber auf dem Rechner den IIS 
laufen lassen bzw erst installieren.

Und zum schluss kann die ASP seite auch nicht direkt mit dem Dienst 
reden, dafür muss du dir dann auch eine Kommunikation einfallen lassen.

Als Alternative könntest du selber einen kleine Webserver in deinem 
Dienst laufen lassen.

von Martin (Gast)


Lesenswert?

Oh man, natürlich.
Die einfachsten Sachen fallen einem nicht ein.
Hab ja sowieso nen TCP/IP server drauf laufen (zur Kommunikation mit den 
clients), nen http-web-server hatte ich mal in einer Anwendung auch 
gebastelt, den kann ich integrieren.
Danke für die Hilfe.

von Arc N. (arc)


Lesenswert?

Peter wrote:
> wenn du asp.net verwenden willst musst du aber auf dem Rechner den IIS
> laufen lassen bzw erst installieren.

Für lokale Sachen kann auch der mitgelieferte Development Server Cassini 
ausreichend sein:
http://blogs.msdn.com/dmitryr/archive/2008/10/03/cassini-for-framework-3-5.aspx

von Thomas L. (tom)


Lesenswert?

Warum so kompliziert? Klar kannst du eine ASP.NET Seite basteln, die 
ihrerseits serverseitig die neue Konfiguration zB in ein File schreibt 
(Serialisierung / Deserialisierung). Von der anderen Applikation aus 
kannst du dich bei Änderungen auf diesem File automatisch 
benachrichtigen lassen und es dann neu einlesen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.