Windows服务的快速搭建与调试(C#图解) 利用BAT批处理安装服务程序
一、什么是Windows 服务?
答:Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这使服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作的其他用户,需要长时间运行功能时使用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。
二、创建Windows 服务。
打开:Visual Studio 2010 => 新建 => 项目 => Windows 服务,如图:
点击确定 => 生成的Service1.cs 文件视图上右键 => 添加安装程序 => 生成的ProjectInstaller.cs视图页面设置serviceInstaller1 里的启动方式、Windows 服务名称,如图:
然后在设置serviceProcessInstaller1的账号信息,选择“本地系统”,如图:
至此,安装程序与框架已经搭建完毕,然后就在Service1.cs的OnStart代码视图中编写自己的业务代码即可,如图:
至此,完整windows 服务已经制作完毕。
安装服务:
@echo off
@echo off
set filename=LXServer.exe
set servicename=Service1
set Frameworkdc=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
if exist "%Frameworkdc%" goto netOld
:DispError
echo 您的机器上没有安装 .net Framework 4.0,安装即将终止.
echo 您的机器上没有安装 .net Framework 4.0,安装即将终止 >InstallService.log
goto LastEnd
:netOld
cd %Frameworkdc%
echo 您的机器上安装了相应的.net Framework 4.0,可以安装本服务.
echo 您的机器上安装了相应的.net Framework 4.0,可以安装本服务 >InstallService.log
echo.
echo. >>InstallService.log
C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe E:\Debug\SendSmsService.exe
net start SendSms
echo -----------------------------
echo 服务安装成功
echo -----------------------------
pause
net start “服务名称“
卸载服务:
net start “服务名称“
@echo off
net stop SendSms
C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe E:\Debug\SendSmsService.exe /u
echo -----------------------------
echo 服务卸载成功
echo -----------------------------
pause
三、调试Windows服务。
打开的Visual Studio 2010工具栏中的工具 => 附加到进程 => 点击确定,选择列表中的要调试服务名称 => 点击附加就可以调试了。程序中只需F9打点就可以调试,注意要windows服务保持版本一致哦。
如图:
转自他人:
http://www.cnblogs.com/Warmsunshine/p/4031367.html
http://www.cnblogs.com/stone_w/archive/2012/06/26/2563483.html