我的VS解决方案中有3个项目.其中一个是Web应用,第二个是Windows服务,最后一个是我的Web应用的安装项目.

我想要的是在我的安装项目中的web应用安装结束时,在我的自定义操作中try 并安装我的windows服务,因为那时我已经知道程序集的位置.

推荐答案

好的,这是真正对我有用的东西,它已经在多台具有不同操作系统(Vista、XP、Win2k、Win2003 server)的机器上进行了测试

这段代码是从here开始的,所以写这段代码的人将获得全部荣誉.

将dll或源文件添加到项目中后,请确保添加ServiceTools命名空间,然后您就可以访问一些非常方便的功能,例如...

//Installs and starts the service
ServiceInstaller.InstallAndStart("MyServiceName", "MyServiceDisplayName", "C:\\PathToServiceFile.exe");

//Removes the service
ServiceInstaller.Uninstall("MyServiceName");

//Checks the status of the service
ServiceInstaller.GetServiceStatus("MyServiceName");

//Starts the service
ServiceInstaller.StartService("MyServiceName");

//Stops the service
ServiceInstaller.StopService("MyServiceName");

//Check if service is installed
ServiceInstaller.ServiceIsInstalled("MyServiceName");

我希望这能帮到你.

.net相关问答推荐

AutoMapper在实体框架查询后不知从哪里带来数据

CLR如何在后台优化布尔比较操作?

IIS 发布 ASP.NET Core 应用程序而不关闭 IIS 网站

如何正确使用await using语法?

Erlang 的让它崩溃的哲学 - 适用于其他地方吗?

xunit Assert.ThrowsAsync() 不能正常工作?

为什么 .net 对字符串使用 UTF16 编码,但默认使用 UTF-8 来保存文件?

获取当前方法的名称

有什么方法可以在不重新编译的情况下覆盖 .NET Windows 服务名称?

如何使用反射在 .NET 中调用重载方法

是否可以更改 Winforms 组合框以禁用输入?

C#:获得完整的桌面大小?

将属性序列化为元素中的 Xml 属性

有没有办法只在 C# 中设置一次属性

在 C# 中将字符串转换为十六进制字符串

如何将 System.Type 转换为其可为空的版本?

使用 XmlDocument 读取 XML 属性

将 Dictionary 转换为匿名对象?

在 .Net 中调用 Web 服务时绕过无效的 SSL 证书错误

如何在 C# 中处理 XML