2

我目前正在使用 nServiceBus 版本 4.0.0-unstable3223(预发布)

NSB配置如下:

private static readonly IBus Bus =
Configure
.With(typeof(IBaseMessage).ReferencedAssemblies())
.DefiningCommandsAs(t => t.Namespace != null && t.Namespace.Contains(".Messages."))
.DefaultBuilder()
.XmlSerializer()
.UseTransport<Msmq>()
.UnicastBus()
.SendOnly();

当我尝试访问 WebAPI 方法时,出现错误。当我调试以了解发生了什么时,这是我得到的异常:

{"Requested registry access is not allowed."}

Stack Trace:
at Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable)
at NServiceBus.Licensing.LicenseDescriptor.get_HKCULicense() in c:\TeamCity\buildAgent\work\28bfdd0d351fb1d3\src\NServiceBus.Core\Licensing\LicenseDescriptor.cs:line 30

注意:我在一个有 10 多个开发人员的环境中使用相同的代码库。我是目前唯一遇到此问题的人。我尝试删除我的本地代码,从存储库中提取新代码,并在不更改代码的情况下进行重建。

任何帮助/指导将不胜感激。

4

2 回答 2

3

NServiceBus 正在尝试从中读取许可证,HKEY_CURRENT_USER\Software\NServiceBus\4.0看起来您正在运行 NServiceBus 的用户帐户无权准备该注册表位置。
您能否确认用户帐户对该注册表项具有读取权限?

据我了解,通常 NT 帐户有权在HKEY_CURRENT_USER!

于 2013-07-18T22:39:52.550 回答
0

如果您在应用程序中使用 Windows 身份验证,请确保 IIS 身份验证设置正确。Windows 身份验证必须是唯一启用的身份验证方法。这为我解决了这个问题。

于 2013-08-25T21:00:51.040 回答