Sie möchten Ihre Windows-Dienst als Shell haben, sollte es wenig Code sein in Da musst du es nicht testen.
Sie sollten alles haben, was Ihr Service in einer Klasse tun soll.
Sie können Ihre Klasse testen und wenn es funktioniert, dann verweisen Sie es auf Ihren Service.
Auf diese Weise, wenn Sie Klasse haben, tun Sie alles, was Sie wollen, dann, wenn es auf Ihren Dienst angewendet wird, sollte alles funktionieren. :)
Wird ein Ereignisprotokoll Sie können sehen, was Ihr Dienst tut, während es ausgeführt wird, auch eine nette Möglichkeit zu testen: D versuchen, dass.
namespace WindowsService
{
public partial class MyService : ServiceBase
{
public MyEmailService()
{
InitializeComponent();
if (!System.Diagnostics.EventLog.SourceExists("MySource")) // Log every event
{
System.Diagnostics.EventLog.CreateEventSource(
"MySource", "MyNewLog"); // Create event source can view in Server explorer
}
eventLogEmail.Source = "MySource";
eventLogEmail.Log = "MyNewLog";
clsRetriveEmail Emails = new clsRetriveEmail();
eventLogEmail.WriteEntry("Populateing database with mail"); // log event
Emails.EmailGetList(); // Call class
}
protected override void OnStart(string[] args)
{
eventLogEmail.WriteEntry("Started");
}
protected override void OnStop()
{
eventLogEmail.WriteEntry("Stopped");
}
protected override void OnContinue()
{
eventLogEmail.WriteEntry("Continuing");
}
}
}
diesen Artikel http Aussehen://msdn.microsoft.com/en-us/library/7a50syb3(v=vs.80).aspx. Es bezieht sich auch auf die folgenden Artikel: http://msdn.microsoft.com/en-us/library/htkdfk18(v=vs.80).aspx http://msdn.microsoft.com/en-us /library/ddhy0byf(v=vs.80).aspx –