Voici un peu de code que vous pouvez utiliser pour attacher un débogueur. J'ai trouvé difficile de joindre un débogueur au début du processus dans le passé. Quand j'ai trouvé ce clip fantastique sur CodeProject, je crois.
Quoi qu'il en soit, ajoutez ceci à OnStart, créez, installez et démarrez votre service. Une fois que vous avez commencé, il semblera qu'il a été accroché. Fixer au processus de service (en vous assurant que vous avez la bonne Fixer à la base de code sélectionné et PRESTO vous pouvez même debug démarrer.
protected override void OnStart(string[] args)
{
#if DEBUG
while (!Debugger.IsAttached) // Waiting until debugger is attached
{
RequestAdditionalTime(1000); // Prevents the service from timeout
Thread.Sleep(1000); // Gives you time to attach the debugger
}
RequestAdditionalTime(20000); // for Debugging the OnStart method,
// increase as needed to prevent timeouts
#endif
// here is your startup code with breakpoints
}
HTH
Ce genre de chose est précisément ce que TopShelf automatise pour vous :-) –
Peut-être, mais c'est aussi 3 dlls supplémentaires sans aucune documentation facilement accessible et l'inquiétude habituelle au sujet des licences et à quel point c'est bien écrit. Si j'avais besoin de toutes les fonctionnalités supplémentaires, je suis sûr qu'il contient (même si je ne suis pas sûr de ce qu'ils sont, car la description est assez basique), je pourrais être intéressé. –