Лучшее руководство по созданию служб Windows в C# .NET?

Я хочу преобразовать небольшое консольное приложение .NET в службу Windows. Я хотел бы создать две версии: одну с .NET 2.0, а другую с .NET 3.5.

Существуют ли радикально другие подходы, которые необходимо использовать, или версия 2.0 будет примерно эквивалентна версии 3.5? Где найти хороший источник информации (например, веб-руководство), который поможет мне пройти этапы настройки службы?

Спасибо! П.А.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
19
0
25 988
6

Ответы 6

Следует помнить, что .NET 3.5 - это набор дополнительных библиотек поверх .NET 2.0, поэтому, если вы не планируете использовать какие-либо дополнительные функции, предоставляемые .NET 3.5 (или .NET 3.0), такие как LINQ или WCF код будет идентичным.

Попробуйте посмотреть документацию для ServiceBase, который является базовым классом, который вам нужно наследовать, чтобы начать работу.

Фактически, .NET 3.5 делает меняет код C# на маленький. Например, вы можете использовать ключевое слово var и использовать скрытые частные переменные для свойств. Он по-прежнему основан на CLR 2.0.

Есть неплохая статья в msdn, в которой рассказывается о службах Windows и рассказывается о том, как их создавать.

Он изменяет код C# только в том случае, если вы решите использовать новые языковые функции. Ничто в языке не заставляет вас делать это, и вы все равно можете писать код в «старом стиле .NET 2.0», если хотите.

Scott Dorman 06.11.2008 23:06

Этот Я считаю, что это неплохая прогулка со скриншотами и примерами кода. Думаю, это могло быть то, что я использовал для первой написанной мной службы Windows. Я думаю, что это было написано еще в .NET 1.1, но все же должно помочь вам в этом процессе. Что касается различий между 2.0 и 3.5, я бы сказал, что разница может быть настолько велика, насколько вы хотите. Я не верю, что вам нужно будет что-то менять, но, как уже упоминалось в других плакатах и ​​как вы можете найти повсюду в SO, есть много новых функций, которые могут быть очень полезными, которые появились в .NET 3.5.

Чтобы дополнить ответ Рика, я бы предложил Пошаговое руководство MSDN

Он невероятно подробный и касается регистрации событий, а также установщика.

Есть по крайней мере одно место, где служебный код потребует некоторого внимания, чтобы заставить его работать в .net2 / vs2005 по сравнению с .net35 / vs2008.

Это особенно верно, если вы пишете свою службу и установщик, используя C# 2.0, а компилируете и развертываете, используя .net35 / vs2008, ссылка ниже может сэкономить вам немного времени:

Пользовательские действия изменены

Вот гид, чтобы узнать о windows service.

Другие вопросы по теме