.NET服务安装程序中的自定义操作

时间:2010-10-22 14:16:53

标签: .net windows-services

我在Visual Studio 2010中用C#编写Windows服务。

我的服务需要注册表项HKLM \ system \ currentcontrolset \ services \ myservicename \ parameters。它还需要一个自定义事件源。我无法在服务中创建其中任何一个,因为这两个操作都需要在Win7上运行提升,并且我不希望我的服务升级。

事件源似乎是由安装程序自动创建的(我希望我知道如何/在哪里并且可以找到此文档)。

创建和填充Parameters注册表项的正确位置是什么?它是安装程序的AfterInstall()事件吗?如果我的操作失败并且我不确定我是否可以在AfterInstall()中执行此操作,我希望能够回滚安装。

1 个答案:

答案 0 :(得分:0)

AfterInstall是个好地方;它发生在所有Install方法之后,但在Commit或Rollback逻辑之前,因此如果安装失败,您可以检查是否创建了密钥并将其删除。

请记住使用类似的逻辑删除AfterUninstall事件处理程序中的密钥。