Windows服务的创建、安装、卸载
1.新建Window服务项目

2.添加安装配置文件

3.serviceProcessInstaller1右键属性,设置Account属性为LocalSystem。
serviceInstaller1右键属性,设置Description、DisplayName、StartType。
这些设置在安装后的服务中可以看到。
cmd下输入services.msc,可以看到系统的服务。
Description:为服务中显示的描述信息。
DisplayName:为服务名称。
StartType:启动类型,常用的有手动(Manual)、自动(Automatic)。
设置好后,点击保存。
4.编写服务执行的代码
双击Services1.cs,右键查看代码。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text; namespace WindowsService1
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
} protected override void OnStart(string[] args)
{
} protected override void OnStop()
{
}
}
}
显示了服务开始事件、停止事件。
我们如果要实现定时任务的话,可以在构造方法中使用Timer。
public Service1()
{
InitializeComponent(); Timer timer = new Timer();
timer.Interval = * * AppHelper.Interval;
timer.Enabled = true;
timer.Elapsed += TimedEvent;
}
private void TimedEvent(object sender, System.Timers.ElapsedEventArgs e)
{
}
5.至此一个服务创建完成,下来介绍服务的安装。
找到服务项目bin/debug下的文件,Copy到D:\WindowsService下。
当然这个路径是任意的,执行安装任务、卸载任务的时候需要使用。
去C:\Windows\Microsoft.NET\Framework64\v4.0.30319下找到InstallUtil.exe这个文件。
因为我用的64位的系统,32位前往C:\Windows\Microsoft.NET\Framework\v4.0.30319中找这个文件。
将这个安装、卸载文件Copy到D:\WindowsService下。
所有准备工作做好了,下来说安装。
管理员身份运行cmd,之后执行D:\WindowsService\InstallUtil.exe D:\WindowsService\WindowsService1.exe 回车
cmd下输入services.msc根据名称就可以看到我们安装的服务了。
服务安装好运行起来后,我们想要用vs调试下服务代码怎么操作了?
选择vs上的debug(调试)-》附加到进程-》勾选显示所有用户的进程,这个时候就能看到我们安装的进程了,选择这个进程。
对于定时任务,定时器执行的事件处设置好断点,等到定时器间隔到时,就会看到程序走到断点处了。
6.服务卸载
管理员身份运行cmd,之后执行D:\WindowsService\InstallUtil.exe -u D:\WindowsService\WindowsService1.exe 回车
Windows服务的创建、安装、卸载的更多相关文章
- windows服务项目的 安装 卸载 查看
安装服务:installutil.exe C:\a.exe卸载服务Installutil.exe /u C:\a.exe 查看服务状态 services.msc
- C# Windows服务的创建、安装、调试
一.查看已有的Windows服务 选择菜单"开始"-〉"控制面板"-〉"管理工具"-〉"服务"来查看现有系统中的服务 二 ...
- windows服务的创建、安装、调试全过程及引发的后续学习
前几天做项目的时候需要用到window服务,研究一段时间,算是掌握了最基本的使用方法吧,现总结如下: 引言:在项目过程中碰到一个问题:需要不断的扫描一个大型数据库表,并获取dataset,以便做后续的 ...
- 玩转Windows服务系列——创建Windows服务
创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Windows服务项目. 生成的解决方案包含两个项目:Servi ...
- 玩转Windows服务系列——创建Windows服务
原文:玩转Windows服务系列——创建Windows服务 创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Wi ...
- C#Windows Service服务程序的安装/卸载、启动/停止 桌面客户端管理程序设计
C#Windows Service服务程序的安装/卸载.启动/停止 桌面客户端管理程序设计 关于Windows Service程序的安装与卸载如果每次使用命令行操作,那简直要奔溃了,太麻烦而且还容易出 ...
- 关于windows服务的编写/安装/与调试
前注: 首先,这篇文章是从网上转过来的,因为最近有个项目,需要编写一个Windows Service来定时执行程序,网上很容易找到了这篇文章,大概看了一下,文章讲的还是很详细的.不过这篇文章应该是.n ...
- Windows服务的创建,安装,卸载
我公司项目的产线系统要与WMS物流系统做借口对接,需要我创建一个windows服务的项目,里面含有7个服务 创建Windows服务: 1.如图:点击 windows->经典桌面->wind ...
- C# Windows服务创建安装卸载
一.创建Windows服务 使用VS创建一个新的windows服务应用程序 创建完成之后 二.相关配置 修改Service1名称为StartService(可以不改,自行选择) 添加安装程序并修改配置 ...
- windows服务的创建、安装和调试
1.创建 windows服务 项目 文件 -> 新建项目 -> 已安装的模板 -> Visual C# -> windows ,在右侧窗口选择"windows 服 ...
随机推荐
- sping 对 hibernate进行事务管理--Annotation, xml, 大多数使用XML
1. UserServiceTest.java: package com.bjsxt.service; import org.junit.Test; import org.springframewor ...
- tomcat 优化配置 java-8 tomcat-7
tomcat 优化配置 , 说明 一.并发优化 1.JVM调优 以下为1G物理内存tomcat配置: JAVA_OPTS="-server -Xms512M -Xmx512M -Xss256 ...
- Mysql安装脚本
Mysql PS:要先看懂脚本在复制粘贴运行脚本,每个人的环境不一样 #/bin/bash #--------变量 #num=` + ` now_lujing=`pwd` #------------- ...
- Sequence Classification
Natural Language Processing with Python Charpter 6.1 import nltk from nltk.corpus import brown def p ...
- Delphi获取文件的大小(实际&物理)
源:获取文件的大小(实际&物理) class function TDuoFile.GetFileSize(const AFile: TFileName): Int64; var sr:TSea ...
- C语言实现求字符串子集问题
这个问题在于实现Apriori算法的时候需要求各个频繁集的关联规则,而这时需要在求得最大的频繁集中求各个频繁集的真子集.然后在实现这一步的时候被卡主了,第一反应是用递归完成,但是面对数据挖掘中庞大的项 ...
- 一、Hadoop基本操作命令
查看hadoop版本 hadoop version 启动与关闭 启动Hadoop 1. 进入HADOOP_HOME目录. 2. 执行sh bin/start-all.s ...
- ios开发获取SIM卡信息
.加入一个Framework(CoreTelephony.framework). .引入头文件 #import<CoreTelephony/CoreTelephonyDefines.h> ...
- laravel无法显示路由界面
安装完laravel项目后,开启了重写,/app/storage也设置好了权限,但是始终无法显示出页面,并出现: "Whoops, looks like something went wro ...
- Qt下libusb-win32的使用(转)
源:Qt下libusb-win32的使用(一)打印设备描述符 主要是在前一篇的基础上,学习libusb-win32的API使用.程序很简单,就是打印指定USB设备的设备描述符(当然其他描述符也是可以的 ...