c# windows service 通过bat文件来安装和卸载自己写的服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# windows service 通过bat文件来安装和卸载自己写的服务相关的知识,希望对你有一定的参考价值。
如何、何时生成bat文件,安装包中怎样调用这个bat文件
安装:程序名 + /install 或程序名 + /service启动:net start + 服务名 或 sc start +服务名
停止:net stop + 服务名 或 sc stop +服务名
卸载:sc delete +服务名 或 程序名+ /uninstall
例:对C盘根目录下的AA.exe(服务名:AA)进行操作的BAT如下:
C:\\aa /install
sc start aa
sc stop aa
c:\\aa /uninstall 参考技术A @ECHO OFF
echo 准备安装服务
pause
REM The following directory is for .NET 4.0
set DOTNETFX2=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
set PATH=%PATH%;%DOTNETFX2%
echo 安装服务...
echo ---------------------------------------------------
InstallUtil /i Service.exe (这次是你的服务)
echo ---------------------------------------------------
echo 安装服务成功!
pause
==========================================
看上面的就Ok,我们现在用的就是这个额,服务生成之后直接运行这个bat就好了本回答被提问者和网友采纳
c# topshelf 编写windows service
使用topself写windows service
1. 在console程序的program.cs main函数中注册服务信息(安装服务时会调用)
...
static void Main(string[] args)
log4net.Config.XmlConfigurator.Configure();
log.Info("Main entry point");
try
var serviceName = ConfigurationManager.AppSettings["ServiceName"];
var serviceDisplayName = ConfigurationManager.AppSettings["ServiceDisplayName"];
var serviceDescription = ConfigurationManager.AppSettings["ServiceDescription"];
var serviceRunner = HostFactory.Run(config =>
config.Service<YourService>(service =>
service.ConstructUsing(name => new YourService());
service.WhenStarted(serviceConfig => serviceConfig.Start());
service.WhenStopped(serviceConfig => serviceConfig.Stop());
);
config.RunAsLocalSystem();
config.SetServiceName(serviceName);
config.SetDisplayName(serviceDisplayName);
config.SetDescription(serviceDescription);
);
var exitCode = (int)Convert.ChangeType(serviceRunner, serviceRunner.GetTypeCode());
Environment.ExitCode = exitCode;
log.Info("Main end point");
//StartConnect();
catch (Exception e)
log.Error("Exception in main", e);
...
2. 在YourService.cs:暴露start和stop方法即可。
public class YourService
public void Start()
...
public void Stop
...
以上是关于c# windows service 通过bat文件来安装和卸载自己写的服务的主要内容,如果未能解决你的问题,请参考以下文章
[windows service]C# 创建Windows Service(Windows服务)程序
使用 Amazon Web Services (EC2) 和 c# Windows Service/WCF 进行远程调试
C#创建Windows Service(Windows 服务)基础教程