Component: NServiceBus
NuGet Package NServiceBus (3.x)
Standard support for version 3.x of NServiceBus has expired. For more information see our Support Policy.

License details

See the Licensing page for license specifics.

License validity

Version 3 to 4.5

The license is valid if the LicenseVersion attribute in the license data is greater than or equal to the {major}.{minor} part of the fileversion for the NServiceBus assembly used by the endpoint.

Version 4.5 to 5

The license is valid if the ExpirationDate or the UpgradeProtectionExpiration attribute in the license data is greater than or equal to the release date of the {major}.{minor}.0 version of the NServiceBus assembly used by the endpoint. To view the release dates for the various versions, see NServiceBus Packages Versions.

Only the Major/Minor part is relevant. Eg. if using NServiceBus 6.1.1 it's the release date of 6.1.0 that counts.

Throughput limitations

The number of worker threads used by the endpoint are limited to 1.

License management

There are several options available for installing the license file.

While all of the options below work for NServiceBus, using the registry, ServiceControl utilities, or ServiceInsight are the only options that lets the other platform tools share the same license file. More information about this can be found in the ServiceControl licensing and the ServiceInsight licensing pages.

Using the registry

The license can be stored in a registry key called [HKEYCURRENTUSER\Software\NServiceBus\{Major.Minor}\License].

To install the license in the registry, use one of these options:

  • The LicenseInstaller.exe tool that comes with the NServiceBus install.
  • The Install-License PowerShell commandlet.
  • If the trial license has expired and running in debug mode, the endpoint shows a dialog that allows installing the license.

Using a license subdirectory

A file located at [AppDomain.CurrentDomain.BaseDirectory]/License/License.xml will be automatically detected.

Using app.config appSettings

It is possible to specify the license in app.config:

  • Use the key NServiceBus/LicensePath to specify the path where NServiceBus looks for the license:
  <add key="NServiceBus/LicensePath"
       value="C:\NServiceBus\License\License.xml" />
  • Use the key NServiceBus/License to store the XML-encoded contents of the license directly in app.config:
  <add key="NServiceBus/License" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;&lt;
license id=&quot;1222e1d1-2222-4a46-b1c6-943c442ca710&quot; expiration=&quot;2013-11-30T00:00:00.0000000
&quot; type=&quot;Standard&quot; LicenseType=&quot;Standard&quot; LicenseVersion=&quot;4.0
&quot; MaxMessageThroughputPerSecond=&quot;Max&quot; WorkerThreads=&quot;Max
&quot; AllowedNumberOfWorkerNodes=&quot;Max&quot;&gt;
. . .
&lt;/license&gt;" />


Failed to initialize the license

The license management code requires write permissions to store metadata. If the process credentials don't have write permissions the following fatal event log item can be generated:

FATAL NServiceBus.Features.LicenseReminder Failed to initialize the license
System.UnauthorizedAccessException: Access to the path 'C:\Windows\system32\config\systemprofile' is denied.

Ensure that the process has write permissions at the specified location. If necessary, either modify the location, change permissions, or use another process that has appropriate permissions.

Related Articles

Last modified