在Service Fabric中启动无状态服务期间更改注册表

问题描述 投票:0回答:1

我正在使用一个库在注册表中搜索一个DLL。可以通过在Service Fabric群集中运行MSI来安装该DLL,并且将设置此路径。

但我想避免在群集中安装MSI,并在包本身中提供所需的dll。在启动服务期间,我正在创建注册表项并在我的包中给出dll的位置。一切都按预期工作。

这种方法是否理想?我们是否允许对注册表进行更改?如果没有,我们如何解决这个问题?任何指针都表示赞赏。

azure-service-fabric service-fabric-stateless
1个回答
1
投票

如果库必须使用注册表,除了注册值之外,没有什么可以做的。如果您可以更改DLL以从配置文件中检索此信息将是理想的解决方案。

您可以在SF中执行此操作,正确的方法是使用ServiceManifest的SetupEntryPoint选项执行这些管理任务,并从Application清单中设置策略以指定应运行这些策略的用户。它描述了here更多细节

使用此方法在SF上遇到的主要问题是您的应用程序可能会在群集中移动而您必须在每个节点上注册它,并且当应用程序不再运行时也可能将其删除以避免注册表中的垃圾。

© www.soinside.com 2019 - 2024. All rights reserved.