windows服务的编写,手动安装与卸载
windows服务的编写
1.要添加的引用
using System.ServiceProcess;
using System.ServiceModel ;
using WcfServiceLibraryAgain;//自己写的WCF服务的名称
2.写windows服务
public partial class MainService : ServiceBase
{
ServiceHost host;
public MainService()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
Type serviceType = typeof(Service1);//托管REST或非REST服务,方式一样。Service1就是要托管的wcf服务的类
host = new ServiceHost(serviceType);
host.Open();
}
}
注意:要将WCF中的配置文件拷贝到windows服务程序的配置文件中。(这点很重要)
手动安装windows服务
1.将Windows服务程序切换到设计视图, 右击设计视图选择“添加安装程序”


2.切换到刚被添加的ProjectInstaller的设计视图
设置serviceInstaller1组件的属性:
1) ServiceName = 服务名称
2) StartType = Automatic ,即自动,Manual是手动,剩下那个是禁用,不过这都不重要,安装好后再服务管理器中可以很方便的设置。
设置serviceProcessInstaller1组件的属性
1) Account = LocalSystem,账户一般设置为本地系统
DisPlayName中设置的名字即你打开服务管理器中服务的名称,我这里叫MyService1
然后重新生成一下
3.右键点击开始按钮,选择命令提示符(管理员)(A),也就是以管理员身份运行cmd,按如下路径找到对应安装服务的程序C-windows-Microsoft.NET-Framework-v4.0.30319-InstallUtil.exe,在cmd中输入 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319(即InstallUtil.exe的路径,在其属性中拷贝,必需右键粘贴),回车运行(注意cd 后要留空格)

右键解决方案,选择在资源管理器中打开文件夹,找到要安装的windows服务的exe文件,WindowService1-bin-Debug,拷贝其路劲,然后再cmd中继续输入命令InstallUtil.exe+空格+路径(注意路径要完整,Debug后还要加上\名称.exe),然后回车运行完成安装,关键截图如下:




至此服务已安装成功!打开服务管理器查看服务是否存在。

手动卸载windows服务
如果觉得写的服务有问题或者是其他原因想卸载服务,在cmd中与安装是几乎相同的,第一步完全以样,第二步的命令变为InstallUtil.exe +空格+ –u +路径(注意路径要完整,Debug后还要加上\名称.exe)

补充:还可以用VS自带的工具完成服务的安装与下载,这时不需要做cmd中的第一步,直接到第二步就可以了,要方便一点,卸载时该用命令\u,下面详细说一下用VS自带的工具怎么卸载服务:


这时要注意还是要以管理员身份运行

安装几乎相同,就不用说了!
总结:手动安装是服务安装最老旧的方法,我们不能一直用这个方法,但是学会了手动安装会让我们对服务的装原理更了解一些,对写自动安装与卸载还是有帮助的,希望对大家有所帮助!
windows服务的编写,手动安装与卸载的更多相关文章
- Windows服务的创建、安装、卸载
1.新建Window服务项目 2.添加安装配置文件 3.serviceProcessInstaller1右键属性,设置Account属性为LocalSystem. serviceInstaller1右 ...
- C# windows服务制作(包括安装及卸载)
开篇语 因工作内容需要做一个windows服务,此前并没有相关经验,所以做了一个demo来跑跑这个梗(高手跳过,需要的来踩)- 效果如下:打开服务,可以找到我们新增的一个windows服务,这个dem ...
- Windows服务的新建,安装,卸载,调试以及调用!
一.前言: 写这篇博文之前,我正顶着压力在尝试着调试我一无所知的Windows自建服务.历经千辛万苦,找了无数零散文档拼凑关于VisualStudio2015中怎样创建和调试服务程序!最后终于调试成功 ...
- Windows服务的创建,安装,卸载
我公司项目的产线系统要与WMS物流系统做借口对接,需要我创建一个windows服务的项目,里面含有7个服务 创建Windows服务: 1.如图:点击 windows->经典桌面->wind ...
- 关于windows服务的编写/安装/与调试
前注: 首先,这篇文章是从网上转过来的,因为最近有个项目,需要编写一个Windows Service来定时执行程序,网上很容易找到了这篇文章,大概看了一下,文章讲的还是很详细的.不过这篇文章应该是.n ...
- Windows环境下使用.bat安装和卸载服务
一.Windows环境下使用.bat安装和卸载服务 win7环境 例子中“”Valwell.Dms.HttpService.exe“”为服务程序名称 安装服务 %SystemRoot%\Microso ...
- C#Windows Service程序的创建安装与卸载
C#Windows Service程序的创建安装与卸载 一.开发环境 操作系统:Windows7x64 sp1 专业版 开发环境:Visual studio 2013 编程语言:C# .NET版本: ...
- win10操作系统下oracle11g客户端/服务端的下载安装配置卸载总结
win10操作系统下oracle11g客户端/服务端的下载安装配置卸载总结 一:前提 注意:现在有两种安装的方式 1. oracle11g服务端(64位)+oracle客户端(32位)+plsql(3 ...
- c#创建windows服务(代码方式安装、启动、停止、卸载服务)
转载于:https://www.cnblogs.com/mq0036/p/7875864.html 一.开发环境 操作系统:Windows 10 X64 开发环境:VS2015 编程语言:C# .NE ...
随机推荐
- android开发音乐播放器--Genres和Art album的获取
最近在做一个项目,其中涉及到音乐播放器.当用到Genres和Art album时花费了一些时间才搞定,今天把方法草草列出,以供自己以后忘记时查看,也希望可以帮助碰到同样问题的道友!! 一.Genres ...
- Android自定义组件系列【5】——进阶实践(1)
接下来几篇文章将对任老师的博文<可下拉的PinnedHeaderExpandableListView的实现>分步骤来详细实现,来学习一下大神的代码并记录一下. 原文出处:http://bl ...
- windll对象
回过头来,再看一下windll和oledll的差别,这两者之间最大的差别是oledll调用的函数都是固定返回HRESULT类型的值,而windll是不固定的类型的.在Python 3.3版本号之前,都 ...
- Unity3d优化包的大小
http://wenku.baidu.com/link?url=MEUtNP6k1W7gXK2LcHdKXGqwoTD4HZDsBpsu9iFYjuL3WCIXgl2-rBHhBWP_zo5Xm4Yx ...
- js进阶正则表达式6转义字符(加\转义)(.符号)(|符号)
js进阶正则表达式6转义字符(加\转义)(.符号)(|符号) 一.总结 转义字符:{} () / $ # & * . ....... //3.特殊字符,都要加转义\ 点符号:var reg2= ...
- Android onKeyDown监听返回键无效
当我们的Activity继承了TabActivity,在该类中重写onKeyDown是监听不到返回键的, 具体解决方法如下: 重写dispatchKeyEvent /** * 退出 */ @Overr ...
- Git提交到多个远程仓库(多看两个文档)
Git提交到多个远程仓库(多看两个文档) 一.总结 一句话总结: 二. Git提交到多个远程仓库(多看两个文档) 有两种做法,先看第一种 一.通过命令行进行操作 例如我有下面两个仓库: Mybatis ...
- JAVA中String类的intern()方法的作用
一般我们变成很少使用到 intern这个方法,今天我就来解释一下这个方法是干什么的,做什么用的 首先请大家看一个例子: public static void main(String[] args) t ...
- tcp注意点
tcp注意点 tcp服务器一般情况下都需要绑定,否则客户端找不到这个服务器 tcp客户端一般不绑定,因为是主动链接服务器,所以只要确定好服务器的ip.port等信息就好,本地客户端可以随机 tcp服务 ...
- uiwebview的常用属性1-故事版