ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
880
880
EMPFEHLEN
-
Hallo Tutorials,
kann mir hier einer anhand eines kurzen Beispiels zeigen, wie man mit #develope einen Dienst erstellt und nach erstellen des Combines installiert, so das man diesen Testen kann?
Link zu einem guten Tutorial wäre auch praktisch...
Der Dienst sollte später wie jeder Dienst über die Dienst-Verwaltung im Windows 2k/Xp zu bedienen sein.
Danke,
D12
-
Bitteschön:
Dienste und Parameter auf SDH
Dienstbeschreibung festlegen
Chris
-
Hallo Chris,
danke erst mal für Deine Hilfe. Habe das soweit umgesetzt, beim Kompilieren fragt #develop nach einem Ausführungsbefehl. Habe das eigentliche Programm, das vom Dienst ausgeführt werden soll, als auch das InstallUtil.exe ausprobiert. Beide führten ins Leere.
Hoffe hier hat noch jemand einen sinnvollen Tip für mich.
LG D12
Zitat von XChris
-
Hallo Tutorials,
Mittlerweile bin ich soweit, das ich einen Dienst installiert bekomme. Aber es hat noch Probleme.
Obwohl ich den Dienst mit dem Namen TestDienst benenne, wird dieser nur als „Hello Service Template“ in den Diensten angezeigt.Hier ist der dazugehörige Code. Vielleicht weis hier wer, was ich falsch gemacht habe?Wenn ich diesen Dienst starte, dann wird der definierte Code in der Methode „OnStart“ nicht ausgeführt, dieser soll als Zähler Werte in eine Datei schreiben!
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
using System; using System.IO; using System.Collections; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.ServiceProcess; using System.Configuration.Install; using System.Windows.Forms; namespace testdienst { /// <summary> /// This is the class for my Service /// </summary> public class MyService : System.ServiceProcess.ServiceBase { public MyService() { InitializeComponents(); this.ServiceName = "TestDienst"; ProjectInstaller pi = new ProjectInstaller(); // TODO: Add any further initialization code } private void InitializeComponents() { this.ServiceName = "TestDienst"; } /// <summary> /// This method starts the service. /// </summary> public static void Main() { System.ServiceProcess.ServiceBase.Run(new System.ServiceProcess.ServiceBase[] { new MyService() // To run more than one service you have to add them here }); } /// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose(bool disposing) { // TODO: Add cleanup code here (if required) base.Dispose(disposing); } /// <summary> /// Start this service. /// </summary> protected override void OnStart(string[] args) { StreamWriter sw; int i = 1; if ( !File.Exists("c:\test.txt")) {//*** Wenn die Datei für den Test nicht existiert, dann soll die neu angelegt werden sw = new StreamWriter(File.Open("c:\test.txt", FileMode.Create)); sw.WriteLine("Das ist ein Test"); sw.Close(); } //*** Hier wird ein Zähler von 1 bis 1000 in die Datei geschrieben sw = new StreamWriter(File.Open("c:\test.txt", FileMode.Append)); while (i<1000) { sw.Write(i.ToString() + " "); i++; } sw.Close(); } /// <summary> /// Stop this service. /// </summary> protected override void OnStop() { // TODO: Add tear-down code here (if required) // to stop your service. } } } [RunInstaller(true)] public class ProjectInstaller : Installer { ServiceInstaller si = new ServiceInstaller(); public ProjectInstaller() { ServiceProcessInstaller spi = new ServiceProcessInstaller(); spi.Account = ServiceAccount.LocalSystem; ServiceInstaller si = new ServiceInstaller(); si.ServiceName = "TestDienst"; si.StartType = ServiceStartMode.Automatic; Installers.AddRange(new Installer[] {spi, si}); } public override void Install(IDictionary stateServer) { base.Install(stateServer); Microsoft.Win32.RegistryKey desc; try { desc = Microsoft.Win32.Registry.LocalMachine.OpenSubKey( "System\CurrentControlSet\Services\" + si.ServiceName, true); desc.SetValue("Description", "Das ist ein erster Testdienst"); desc.Close(); } catch(Exception ex) { MessageBox.Show(ex.ToString()); } } protected override void OnAfterInstall(IDictionary savedState) { base.OnAfterInstall(savedState); Microsoft.Win32.RegistryKey image; try { image = Microsoft.Win32.Registry.LocalMachine.OpenSubKey( "System\CurrentControlSet\Services\" + si.ServiceName, true); si.ServiceName = "TestDienst"; image.SetValue("ImagePath", image.GetValue("ImagePath") + " - Service"); image.Close(); } catch(Exception ex) { MessageBox.Show(ex.ToString()); } } }
Ähnliche Themen
-
Windows Dienst aus C# Projekt installieren.
Von eXistenC im Forum .NET Application und Service DesignAntworten: 16Letzter Beitrag: 04.05.09, 10:40 -
Dienst installieren und starten
Von DrMueller im Forum .NET Application und Service DesignAntworten: 0Letzter Beitrag: 06.03.08, 15:22 -
Windows-Dienst installieren
Von theindra im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 22.06.04, 18:19 -
Windows-Dienst installieren
Von theindra im Forum .NET ArchivAntworten: 0Letzter Beitrag: 17.06.04, 18:04 -
XP Pro - Dienst installieren ?
Von Andreas Späth im Forum Microsoft WindowsAntworten: 2Letzter Beitrag: 12.03.04, 21:50





Zitieren
Login





