十步完成windows服务的安装.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
十步完成windows服务的安装

十步完成windows服务的安装 2008-07-30 23:59 可能是太过于懒惰的原因,研究个windows 服务的安装程序都花了大半天时间。在网上看了一些示例,大部分都言过其实,把过程搞得太过复杂,老是需要去研究如何利用InstallUtil.exe及其参数。事实上,既然要安装.net下制作的windows服务,肯定首先得在目标机器上安装有.net框架。因此,InstallUtil.exe也一定已经存在目标机器上了,因而利用微软的傻瓜式操作就能很好地解决windows服务安装和卸载的问题。 过一段时间估计还要狠狠地利用windows服务来完成一些功能,为了加深印象,又回过头弄了一个名叫HelloWorldService的windows服务,用最简单的demo来完成所有的操作。这个服务的功能,仅仅是在它启动的时候创建一个HelloWorld.txt文件,里边写上Hello World!这几个简单的字母而已。 1、选择Visual C#-Windows-Windows 服务,创建一个HelloWorldService项目。 2、通过ServiceName更改服务的名称为”HelloWorldService“,这是最后在安装服务成功后在服务管理面板出现的名称。 3、将Service1.cs更名为HelloWorldService.cs,在其OnStart方法中写入简单的代码,用来实现创建文件并写入“Hello World!这几个经典字母。 4、在HelloWorldService.cs的设计界面点右键,在弹出菜单中选择”添加安装程序“。 点击后出来的设计界面上添加了两个控件——ServiceProcessInstall和ServiceInstaller。 ServiceProcessInstall安装一个可执行文件,该文件包含扩展 ServiceBase 的类。该类由安装实用工具(如 InstallUtil.exe)在安装服务应用程序时调用。在这里主要是修改其Account属性。ServiceAccount指定服务的安全上下文,安全上下文定义其登录类型。 LocalService??? 充当本地计算机上非特权用户的帐户,该帐户将匿名凭据提供给所有远程服务器。? LocalSystem??? 服务控制管理员使用的帐户,它具有本地计算机上的许多权限并作为网络上的计算机。? NetworkService??? 提供广泛的本地特权的帐户,该帐户将计算机的凭据提供给所有远程服务器。? User??? 由网络上特定的用户定义的帐户。如果为 ServiceProcessInstaller.Account 成员指定 User,则会使系统在安装服务时提示输入有效的用户名和密码,除非您为 ServiceProcessInstaller 实例的 Username 和 Password 这两个属性设置值。? ServiceInstaller安装一个类,该类扩展 ServiceBase 来实现服务。在安装服务应用程序时由安装实用工具调用该类。在这里主要修改其StartType属性。此值指定了服务的启动模式。 Automatic?指示服务在系统启动时将由(或已由)操作系统启动。如果某个自动启动的服务依赖于某个手动启动的服务,则手动启动的服务也会在系统启动时自动启动。? Disabled?指示禁用该服务,以便它无法由用户或应用程序启动。? Manual?指示服务只由用户(使用“服务控制管理器”)或应用程序手动启动。? 5、上面这些都是安装包最终要安装/卸载的对象。下面就来看看如何用.net制作安装包。 需要在解决方案里边添加一个安装项目,取其名称为HelloWorldSetup。 6、添加工程后,在默认的视图界面右键点击”应用程序文件夹“,选择”添加“-”项目输出“。 在弹出的窗口中选择”主输出“,点击”确定“。 7、上面的步骤定义了最后在应用程序文件夹中包含的内容。下面来定义其他方面的内容。在项目上点右键,选择 视图-自定义操作。 8、出来如下的界面,然后在”自定义操作“上点右键,选择”添加自定义操作“。 在弹出的窗口中双击”应用程序文件夹“。 然后选择”主输出来自HelloWorldService(活动)“,点击”确定“。 选择之后会发现所有的操作下边都添加了刚才选定的项。做到这一步,就能使安装程序卸载时不仅把程序卸载下来,也能把服务卸载下来。 9、接下来在安装项目上点右键,选择”生成“,就能使安装程序正常发布了,成功后会生成两个文件。 把这两个文件拷到目标机器上,双击HelloWorldSetup.msi文件,就可以开始安装服务的征途了。 安装成功后,就可以从服务管理面板中欣喜地看到我们梦寐以求的服务程序了。 不过在我点启动的时候,还出

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档