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





Следует помнить, что .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 и рассказывается о том, как их создавать.
Этот Я считаю, что это неплохая прогулка со скриншотами и примерами кода. Думаю, это могло быть то, что я использовал для первой написанной мной службы Windows. Я думаю, что это было написано еще в .NET 1.1, но все же должно помочь вам в этом процессе. Что касается различий между 2.0 и 3.5, я бы сказал, что разница может быть настолько велика, насколько вы хотите. Я не верю, что вам нужно будет что-то менять, но, как уже упоминалось в других плакатах и как вы можете найти повсюду в SO, есть много новых функций, которые могут быть очень полезными, которые появились в .NET 3.5.
Чтобы дополнить ответ Рика, я бы предложил Пошаговое руководство MSDN
Он невероятно подробный и касается регистрации событий, а также установщика.
Есть по крайней мере одно место, где служебный код потребует некоторого внимания, чтобы заставить его работать в .net2 / vs2005 по сравнению с .net35 / vs2008.
Это особенно верно, если вы пишете свою службу и установщик, используя C# 2.0, а компилируете и развертываете, используя .net35 / vs2008, ссылка ниже может сэкономить вам немного времени:
Вот гид, чтобы узнать о windows service.
Он изменяет код C# только в том случае, если вы решите использовать новые языковые функции. Ничто в языке не заставляет вас делать это, и вы все равно можете писать код в «старом стиле .NET 2.0», если хотите.