.NET Windows Service

.net包含的内容真的很多,即使从应用上来说。

从来没有接触过windows service的开发,但是需要承接的项目使用到了,于是阅读了一下微软的文档。

总体来说,windows service是一个继承ServiceBase类的应用,通过run方法启动的一个进程(线程?)。

通过InstallUtil.exe注册后,就像其他服务一样,出现在services.msc的列表中了。

ServiceBase类除了构造函数,关键的是几个事件的处理,OnStart/OnStop等等,感觉有点Android应用的样子。

每个OnXXX对应服务进行相应操作时,程序进行的操作。

总的来说概念不复杂,但具体使用上,还是有很多再学习的地方,比如肯定要用到的线程或者定时器之类的来进行服务的具体操作(服务不能再OnStart中进行死循环,只能进行一些初始设置)。

原文地址:https://www.cnblogs.com/mosakashaka/p/12607921.html

时间: 2024-10-08 17:44:46

.NET Windows Service的相关文章

Windows service wrapper 初探

Windows 服务包装器(Windows service wrapper),用于把.exe文件注册为windows服务.比如把Nginx.exe注册为windows服务,这样做的好处是,每次启动nginx时不用在命令行中输入命令,而且可以随windows系统启动而启动.不用担心服务器意外重启,服务挂掉. github地址:https://github.com/kohsuke/winsw 下载地址:https://github.com/kohsuke/winsw/releases 目前(2017

C# Windows Service中执行死循环轮询

用C#编写Windows Service时,执行轮询一般有两种方式,一种是用Timer,System.Timers或者是System.Thread下的,这种执行是按时间循环执行,缺点是也许上个执行还没有完成,又开始执行新的. 另一种方式是利用线程,在OnStart里单开一个线程去跑含有死循环结构的函数,这种方式的缺点是,对线程的控制困难,停止服务了,线程还有可能在执行,不过 .Net 4.0+ 给我们提供了 CancellationTokenSource,用来取消正在运行的线程(Task),代码

管理员控制Windows Service

C# 以管理员方式启动Winform,进而使用管理员控制Windows Service 问题起因: 1,) 问题自动分析Windows服务在正常运行时,确实会存在程序及人为原因导致该服务停止.为了在应用程序使用时确保该服务正常运行,于是有了该讨论主题. 2,)一般账户(尽管是管理员组账户)使用c#代码启动服务,依然会抛出异常,因为当前程序启动账户级别并不是管理员级别. 以管理员启动应用程序解决方案及测试: 为了解决程序以管理员组角色启动应用程序,我们需要在应用程序的工程中添加一个“Applica

在Windows Service 2012上安装IIS 8.0 IIS 6

我的目的是在服务器上安装IIS6 ,但是受到这边文章的启发和按照他的步骤,看到了"IIS 6管理兼容性",我的问题就决解了,我这里是因为要安装vss 2005 和u8等比较早期的软件才会遇到这个问题: 下面内容转载自:http://www.zhaomu.com/news/detail-394.html 内容如下: Windows 2012及其自带的IIS 8.0是微软公司新一代的Web服务器软件,和老版本的IIS相比,有很多破天荒的新功能.随着微软宣布不再支持Windows XP操作系

C# 创建Windows Service

当我们需要一个程序长期运行,但是不需要界面显示时可以考虑使用Windows Service来实现.这篇博客将简单介绍一下如何创建一个Windows Service,安装/卸载Windows Service. 新建Windows Service项目: 删除自动生成的Service1.cs文件,新建WindowsService类,继承ServiceBase. class WindowsService : ServiceBase { public WindowsService() { this.Ser

C# 开发Windows Service程序控制功能

在做一些计划任务时候难免用到Windows Service服务程序,而这个是没有操作界面的,每次启动.重启.关闭都需要服务界面找到服务进行操作,对普通的人来说是非常麻烦的,所以有时候就需要通过应用程序来控制Windows 服务,这里把之前写到的一个服务控制类贴出来. C# Windows 服务控制类代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syste

WCF注册Windows Service

WCF注册Windows Service 2014-06-14 返回 在前面创建一个简单的WCF程序,我们把WCF的服务寄宿到了Host这个控制台项目中了.下面将介绍如何把WCF的服务寄宿到Windows服务中: 1. 删除原来Host控制台项目,然后在solution上右键,新建一个WindowService项目.如下图: 2.对MyFirstWindowsService项目添加对Contracts项目.Service项目和System.ServiceModel的引用. 3.将MyFristW

C#创建一个Windows Service

Windows Service这一块并不复杂,但是注意事项太多了,网上资料也很凌乱,偶尔自己写也会丢三落四的.所以本文也就产生了,本文不会写复杂的东西,完全以基础应用的需求来写,所以不会对Windows Service写很深入. 本文介绍了如何用C#创建.安装.启动.监控.卸载简单的Windows Service 的内容步骤和注意事项. 一.创建一个Windows Service 1)创建Windows Service项目 2)对Service重命名 将Service1重命名为你服务名称,这里我

WCF: Hosting WCF in Windows Service

1. Create a windows service project 2. Add Reference to the assembly which contains the contract and its implementation. 3. Remove the Service1.cs, add a new Windows Service class and name it to CalculatorWindowsService 4. Override OnStart and OnStop

【翻译自mos文章】Windows Service Oracleremexecservice 是干什么的

来源于: What Is The Windows Service "Oracleremexecservice" ? (文档 ID 1433144.1) 适用于: Oracle Server - Enterprise Edition - Version 11.2.0.1 and later Oracle Server - Standard Edition - Version 11.2.0.1 and later Microsoft Windows (32-bit) Microsoft W