我希望将小型 .NET 控制台应用程序转换为 Windows 服务。我想构建两个版本,一个使用 .NET 2.0 ,另一个使用 .NET 3.5 。
是否需要采取完全不同的方法,或者 2.0 版本是否大致等同于 3.5 版本?哪里有很好的信息来源(即基于网络的指南)可以引导我完成设置服务的步骤?
谢谢!功放
我希望将小型 .NET 控制台应用程序转换为 Windows 服务。我想构建两个版本,一个使用 .NET 2.0 ,另一个使用 .NET 3.5 。
是否需要采取完全不同的方法,或者 2.0 版本是否大致等同于 3.5 版本?哪里有很好的信息来源(即基于网络的指南)可以引导我完成设置服务的步骤?
谢谢!功放
实际上,.NET 3.5确实稍微改变了 C# 代码。例如,您可以使用 var 关键字,并且可以将隐藏的私有变量用于属性。它仍然基于 CLR 2.0。
msdn上有一篇非常好的文章,它讨论了 Windows 服务并指导您构建一个。
为了补充 Rick 的答案,我建议MSDN 演练
它非常冗长,涉及事件记录和安装程序。
我相信这是一个不错的截图和代码示例。我想这可能是我写的第一个 Windows 服务所使用的。我认为它是在 .NET 1.1 中写回的,但仍应能帮助您完成整个过程。至于 2.0 和 3.5 之间的差异,我想说可以/将会有你想要的差异。我不相信您将需要更改任何内容,但正如其他海报所提到的并且您可以在 SO 中找到所有内容,.NET 3.5 附带了许多非常有益的新功能。
要记住的是 .NET 3.5 是 .NET 2.0 之上的一组附加库,因此,除非您计划利用 .NET 3.5(或 .NET 3.0)提供的任何附加功能,如 LINQ 或 WCF代码将是相同的。
尝试查看ServiceBase的文档,这是您需要继承的基类,以开始工作。
至少有一个地方需要注意服务代码才能使其在 .net2/vs2005 与 .net35/vs2008 中工作。
如果您使用 c# 2.0 编写服务和安装程序并使用 .net35/vs2008 编译和部署,则尤其如此,下面的链接可能会为您节省一些时间:
这里是学习指南windows service
。