当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 关于.net下服务安装

ASP.NET
ASP.NET 多附件上传实现代码
asp.net 类库中使用ConfigurationManager.ConnectionStrings
asp.net AjaxControlToolKit--TabContainer控件的介绍
ASP.NET环境下为网站增加IP过滤功能
asp.net访问Access数据库溢出错误
ASP.NET AJAX 4.0的模版编程(Template Programming)介绍
asp.net StringBuilder的用法 实例代码
asp.net Accee数据库连接不稳定解决方案
ASP.NET2.0 SQL Server数据库连接详解
asp.net Repeater之非常好的数据分页
C# 生转换网页为pdf
浅谈ASP.NET的Postback 实例代码
asp.net Ext grid 显示列表
通过ASP.net实现flash对数据库的访问
如何创建一个AJAXControlToolKit的扩展控件
asp.net 简单验证码验证实现代码
asp.net 在客户端显示服务器端任务处理进度条的探讨
Asp.net treeview实现无限级树实现代码
asp.net INI文件读写类
asp.net下检测SQL注入式攻击代码

ASP.NET 中的 关于.net下服务安装


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


本来我想从Process.Strat()用Installutil.exe 把服务程序安装上去的,但是调试时可以,发布后执行就怎么也不行了,什么错也不报,语句Process.Strat(...)也执行了,就是装不了 ,可能是哪里权限不对。
后来在网上找到.net里的几个类,可以用来安装:
TransactedInstaller和AssemblyInstaller
TransactedInstaller是用来安装多个AssemblyInstaller的,我只用AssemblyInstaller就够了!
要引用System.Configuration.Install.dll和
using System.Configuration.Install;
很简单
安装:
AssemblyInstaller myAssemblyInstaller;
myAssemblyInstaller=new AssemblyInstaller();
myAssemblyInstaller.UseNewContext=true;
myAssemblyInstaller.Path="XXXService.exe";
Hashtable mySavedState=new Hashtable()
myAssemblyInstaller.Install(mySavedState);
myAssemblyInstaller.Commit(mySavedState);
myAssemblyInstaller.Dispose();
卸载服务:
AssemblyInstaller myAssemblyInstaller;
myAssemblyInstaller=new AssemblyInstaller();
myAssemblyInstaller.UseNewContext=true;
myAssemblyInstaller.Path="XXXService.exe";
myAssemblyInstaller.CommandLine=new string[1]{"/u"};

myAssemblyInstaller.Uninstall(null);
myAssemblyInstaller.Dispose();
这2个类应该也可以制作一些小的安装程序!