我在Visual Studio 2010中用C#编写Windows服务。
我的服务需要注册表项HKLM \ system \ currentcontrolset \ services \ myservicename \ parameters。它还需要一个自定义事件源。我无法在服务中创建其中任何一个,因为这两个操作都需要在Win7上运行提升,并且我不希望我的服务升级。
事件源似乎是由安装程序自动创建的(我希望我知道如何/在哪里并且可以找到此文档)。
创建和填充Parameters注册表项的正确位置是什么?它是安装程序的AfterInstall()事件吗?如果我的操作失败并且我不确定我是否可以在AfterInstall()中执行此操作,我希望能够回滚安装。
答案 0 :(得分:0)
AfterInstall是个好地方;它发生在所有Install方法之后,但在Commit或Rollback逻辑之前,因此如果安装失败,您可以检查是否创建了密钥并将其删除。
请记住使用类似的逻辑删除AfterUninstall事件处理程序中的密钥。