C#制作Windows service服务系列一:制作一个可安装、可启动、可停止、可卸载的Windows...

因为windows service 工作中最近开始频繁使用,而手工部署的方式,最好的是用BAT文件,可是程序要部署到别的服务器上时,就会发现路径是一个问题:当然也可以用全局变量来控制,这里不赘述。

给出一个手工部署的例子
setupServer.bat

 
 
echo       off  
 
if       exist       "   %SystemRoot%Microsoft.NETFramework 2.0.50727   "       goto    netOld
 
:DispError  
 
echo    您的机器上没有安装    .   net    FrameWork    2.0  
 
pause  
 
goto    LastEnd
 
:netOld  
 
cd    %SystemRoot%   Microsoft   .   NET   Framework   v2   .   0.50727  
 
echo    您的机器上安装了相应的   .   net    FrameWork   ,   可以安装本服务,按任意键继续…………
 
echo       off  
 
pause  
 %SystemRoot%
  Microsoft   .   NET   Framework   v2   .   0.50727   installutil C:   TradeMatchService2007   TradeMatchService2007   bin   Debug   TradeMatchService2007   .   exe
 
net       start       "   servTradeMatch2007   "  
 
:LastEnd  
 
rem    exit



卸载如下:
unInstallServer.bat

 
 
echo       off  
 
if       exist       "   %SystemRoot%Microsoft.NETFramework 2.0.50727   "       goto    netOld
 
:DispError  
 
echo    您的机器上没有安装   .   net    FrameWork    2.0   ,   安装即将终止
 
pause  
 
goto    LastEnd
 
:netOld  
 
echo    即将卸载本服务,按任意键继续…………
 
echo       off  
 
pause  
 
net    stop    "   servTradeMatch2007   "  
 
cd    %SystemRoot%   Microsoft   .   NET   Framework   v2   .   0.50727  
 %SystemRoot%
  Microsoft   .   NET   Framework   v2   .   0.50727   installutil    /   uninstall C:   TradeMatchService2007   TradeMatchService2007   bin   Debug   TradeMatchService2007   .   exe
 
:LastEnd  
 
rem    exit  
 


也可以同时判断两个以上的net FrameWork版本

这里要介绍的是一个完整的安装程序,所以服务本身就略去,如果有朋友需要学习,可以跟我联系
3w@live.cn

好了,言归正传
假定 windows Service已写好,服务名为servTradeMatch2007,可执行文件名为TradeMatchService2007.exe

 


一、首先在解决方案中创建一个安装部署的项目,右键点击项目名称,在菜单中选择[添加]-->[项目输出],
在弹出的"添加项目输出组"窗口中,第一个下拉框会列出该解决方案中其他的项目,
选择需要制作安装的windows service项目,再选择主输出,点[确定]。如图:


 


依次在”目标计算机上的文件系统“--”应用程序文件夹“下添加以下四个文件
1、msiexec.exe
2、start.bat
3、stop.bat
4、主输出文件

 




其中msiexec.exe位于Windows\System32下
stopbat文件内容如下:

  echo       off  
 
net    stop    "   servTradeMatch2007   "  
 
exit


startbat文件内容如下:

 
 
echo       off  
 
net       start       "   servTradeMatch2007   "  
 
exit


在"用户的程序文件夹下",新建一文件夹”蔬菜网全文检索服务“,分别制作这前三个文件的快捷方式到这里


 

右键单击”卸载服务“(msexec.exe对应的快捷方式)

输入一串值 

 

其中"/x  "后面对应和数值来自
Setup_TradeMatchService2007.vdproj文件

 


OK ! 生成安装包,

别急,安装完后,windows service并没有安装成服务。
还必须在安装项目中添加自定义操作。右击安装项目->视图->自定义操作.
如下图:分别添加自定义操作,在应用程序文件夹中选择刚才添加的主输出即可.

 

 


安装过程如下:

 



 



 



 



卸载:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值