写好的windows服务程序,怎么打包 ?

 
主  题: 写好的windows服务程序,怎么打包 ?
作  者: x_ch (flying)
等  级: 
信 誉 值: 100
所属论坛: .NET技术 VB.NET
问题点数: 20
回复次数: 15
发表时间: 2007-1-10 13:09:15
   
 
   

不想用installutil.exe 手动安装。制作成一个安装包,安装后在服务中就可以看到 并启动
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-10 13:53:10得分:5
 
 
?

若要安装服务,请创建从 Installer 类继承的项目安装程序类,并将该类的 RunInstallerAttribute 属性设置为 true。在项目中,为每个服务应用程序创建一个 ServiceProcessInstaller 实例,并为应用程序中的每个服务创建一个 ServiceInstaller 实例。在项目安装程序类构造函数中,使用 ServiceProcessInstaller 和 ServiceInstaller 实例设置服务的安装属性,并将这些实例添加到 Installers 集合中....

---------
更多的参见MSDN:
ServiceInstaller 类


Top
 
 回复人:Knight94(愚翁) ( 五星(高级)) 信誉:1102007-1-10 14:12:25得分:5
 
 
?

Install a Windows service the way YOU want to!
http://www.codeproject.com/vb/net/WindowsServiceInstall.asp
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 13:10:42得分:0
 
 
?

to hbxtlhx(平民百姓) msdn中的看不明白
to Knight94(愚翁) 这个地址打不开 能否粘贴过来
谢谢
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 14:00:04得分:0
 
 
?

大家帮忙阿
Top
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-11 14:33:02得分:8
 
 
?

按如下的几步来作就可以给服务程序作安装程序了:

将安装程序添加到服务应用程序
1:在“解决方案资源管理器”中,访问要为其添加安装组件的服务的“设计”视图。

2:单击设计器的背景以选择服务本身,而不是它的任何内容。

3:设计器具有焦点时,右击然后单击“添加安装程序”。

这时项目中就添加了一个新类 ProjectInstaller 和两个安装组件 ServiceProcessInstaller 和 ServiceInstaller,并且服务的属性值被复制到组件。

4:单击 ServiceInstaller 组件,验证 ServiceName 属性的值已为与服务本身的 ServiceName 属性的值相同。

5:若要确定如何启动服务,请单击 ServiceInstaller 组件并将 StartType 属性设置为适当的值。
StartType :
值 结果
Manual
服务安装后,必须手动启动。有关更多信息,请参见如何:启动服务。

Automatic
每次计算机重新启动时,服务都会自动启动。

Disabled
服务无法启动。


6:若要确定将要运行服务的安全上下文,请单击 ServiceProcessInstaller 组件并设置适当的属性值。(比如:如果要用系统用户,请选择LocalSystem而不是user)

7:重写需要为其执行自定义处理的所有方法。


8:创建您的安装项目和自定义操作,部署和安装您的服务。

按以上的几步就完成服务程序的安装程序制作,编译好后就可以安装了.
安装成功后,可以打开控制面板里的服务查看刚刚安好的服务程序是否存在.
Top
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-11 14:33:23得分:0
 
 
?

再有问题联系我:)
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 15:44:15得分:0
 
 
?

to hbxtlhx(平民百姓)
7:重写需要为其执行自定义处理的所有方法。是什么意思?

我刚才试验了下仍然不行。我是这样做的 你看那里有问题
按照你的第六步完成后,没有做第七步,接着以下
8.创建安装项目servicesetup,右键-〉添加-〉项目输出-〉主输出-〉选择活动服务
9.视图-〉自定义操作,右键自定义操作 选择应用程序文件家下的主输出,这时在安装、提交、回滚、卸载均添加了主输出。
10.生成 安装
结果 :
在管理工具-〉服务中可以找到此服务的名称但是没有启动。当选择启动时,出错
“在本地计算机系统无法启动<ServiceName>服务,服务并未返回错误,这可能是一个windows内部错误。如问题持续存在请与您的系统管理员联系”
我把系统切换到administrator登陆重新安装启动时候依然是这样。


求救阿 明天就交了。

Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 15:47:46得分:0
 
 
?

其中有几个疑问
1. 7:重写需要为其执行自定义处理的所有方法。是什么意思?
2.当我添加主输出的时候,为什么主输出文件output是指向../obj/debug下的exe文件,并且目录不能修改 。bin目录与obj目录有什么区别?
3.按照上面陈述的安装后不能启动,但当我把bin/debug目录下的文件都拷贝到安装目录下时候,在管理工具-〉服务中启动就可以。
Top
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-11 15:50:22得分:0
 
 
?

这个和安装已经没有关系了,可能是你的服务程序有问题,或许你可以通过系统日志找到问题所在.
我在我机子上试了,是可以运行的.
Top
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-11 15:53:19得分:0
 
 
?

重写需要为其执行自定义处理的所有方法
是指自定义安装的部分,当然可以没有.如果有特殊的要求才会有自定义操作.
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 17:16:38得分:0
 
 
?

怎么分析日至呢?
Top
 
 回复人:hbxtlhx(平民百姓-自已动手,丰衣足食) ( 四星(高级)) 信誉:1122007-1-11 17:24:30得分:2
 
 
?

去系统日志里看一下有没有记录下你的程序的日志.

另:我的服务程序代码不多,只是测试了一下服务能否运行,安装程序能否正常的安装服务.
可能你的程序写的比较复杂,请楼主多试,多想:)
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 20:16:36得分:0
 
 
?

搞定 非常感谢 在这里鞠躬了

Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-11 20:20:19得分:0
 
 
?

还有个问题
请教 ,web程序有个button用来启动windows服务,在调试里没问题

可是发布网站然后打开此网站 提示

服务不能访问,system.componentModel.win32exception 拒绝访问

我想使不是权限的问题。可是要设置什么权限呢?
又对此服务进行权限摄制的吗?
Top
 
 回复人:x_ch(flying) ( 二级(初级)) 信誉:1002007-1-12 8:30:21得分:0
 
 
?

up
Top
 
 

该问题已经结贴 ,得分记录: hbxtlhx (5)、 Knight94 (5)、 hbxtlhx (8)、 hbxtlhx (2)、
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值