当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 给windows服务添加描述

ASP.NET
ASP.NET ViewState 初探 (2)
.net中即时消息发送的实现
改写即时消息的发送 包含同时给多人发送信息
asp.NET特写
TreeView使用笔记
ASP.Net中自定义Http处理及应用之HttpHandler篇
Asp.net+Xml实现无数据库论坛一点即通
ASP.NET HTTP运行时组成详解
在ASP.NET 2.0中使用页面导航控件
ASP.net组件编程中的两种事件编写方法
保存图片流到数据库之后固定显示新法
asp.net 2.0中一次性更新所有GRIDVIEW的记录
ASP.NET创建Web服务之设计方针
用ASP.Net(C#)连接Oracle数据库的方法
ASP.Net环境下使用Jmail组件发送邮件
通过探测邮件服务器进行Email地址有效性检验
如何在上传的图片上打自己的文字水印
ASP.NET的14个热点问题解答
.NET中如何取得IP或者用户名等信息
ASP.NET中使用数据处理插入数据注意的问题

ASP.NET 中的 给windows服务添加描述


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 193 ::
收藏到网摘: n/a


 最近写了个Windows服务(Windows Services),安装了以后,觉得和已有的Windows服务不一样。为什么?我的缺少描述,中间一栏是空的。
  再看.NET的ServiceBase类没有添加描述的属性。
  public class ProjectInstaller : System.Configuration.Install.Installer中也没有什么属性来添加。从网搜了后才知道要重载ProjectInstaller 的Install和UnInstall虚方法。其实重写这些虚方法就是为了在注册表相应服务中加一个鍵值"Description",其值填为相应的描述就可以了。
 public override void Install(IDictionary stateServer) { Microsoft.Win32.RegistryKey system, service, config;
try { //Let the project installer do its job base.Install(stateServer); system = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("System").OpenSubKey("CurrentControlSet").OpenSubKey("Services"); service = system.OpenSubKey(this.serviceInstaller1.ServiceName, true); service.SetValue("Description", "服务描述");
//添加额外的鍵 config = service.CreateSubKey("AdditionalInformation"); } catch(Exception e) {

} } public override void Uninstall(IDictionary stateServer) { Microsoft.Win32.RegistryKey system, currentControlSet, services, service;
try { system = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("System"); currentControlSet = system.OpenSubKey("CurrentControlSet"); services = currentControlSet.OpenSubKey("Services"); service = services.OpenSubKey(this.serviceInstaller1.ServiceName, true); //删除额外的鍵 service.DeleteSubKeyTree("AdditionalInformation"); //... } catch(Exception e) { } finally { base.Uninstall(stateServer); } }
注意这些代码是在ProjectInstaller 文件中的。
也许有更好的办法,望大家指教。