关于.net下服务安装

王朝c#·作者佚名  2006-01-09
宽屏版  字体: |||超大  

本来我想从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个类应该也可以制作一些小的安装程序!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有