A Guide to ActiveReports Licensing Types & Licensing Troubleshooting

When you are preparing to add ActiveReports.NET to your project, the first step is to determine which licensing type you need. When licensing an AR.NET solution in Visual Studio, there are three main types of licensing: Licensing a Project, Licensing Compiled Code, and Licensing in a Pipeline.

As a reminder, your developer machine will always need to be licensed. When publishing to a physical server, the server will also need to be licensed. We will cover the steps necessary to properly license your solution and troubleshoot common issues and errors that may arise.

Want the Latest Version of ActiveReports.NET? Download it today!

Licensing A Project

You will need to use the licenses.licx file when your project directly uses ActiveReports references.
Generating the licenses.licx file is as simple as adding any report type to your project. This will automatically generate the licenses.licx file.

License for (control name) could not be found

This error typically occurs when there are additional or missing lines in your licenses.licx file. This can be remedied by opening the licenses.licx file and deleting any unused strings, ensuring that the correct strings are added, and ensuring that there are no unnecessary spaces in the file. A list of the licensing strings can be found in the table below and the following documentation.

Incorrect licenses.licx file:

Incorrect


Correct licenses.licx file:

Correct License

 

Component

License String

Section report engine

GrapeCity.ActiveReports.SectionReport, GrapeCity.ActiveReports

Page and RDL report engine

GrapeCity.ActiveReports.PageReport, GrapeCity.ActiveReports

WinForms viewer control

GrapeCity.ActiveReports.Viewer.Win.Viewer, GrapeCity.ActiveReports.Viewer.Win

WPF viewer control

GrapeCity.ActiveReports.Viewer.Wpf.Viewer, GrapeCity.ActiveReports.Viewer.Wpf

PRO (some features) PDF export

GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport, GrapeCity.ActiveReports.Export.Pdf

PRO ONLY: WebViewer, HTTP handlers

GrapeCity.ActiveReports.Web.WebViewer, GrapeCity.ActiveReports.Web

PRO ONLY: End-user designer

GrapeCity.ActiveReports.Design.Designer, GrapeCity.ActiveReports.Design.Win

PRO ONLY: JSViewer

GrapeCity.ActiveReports.Aspnet.WebViewer, GrapeCity.ActiveReports.Aspnet.Viewer

PRO ONLY: Web Designer

GrapeCity.ActiveReports.Aspnet.WebDesigner, GrapeCity.ActiveReports.Aspnet.Designer

Using Version Number at the End of Licensing Strings

Occasionally when the licenses.licx file is created automatically, the strings are longer, and include additional values, like this:

GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport, GrapeCity.ActiveReports.Export.Pdf, Version = 16.X.XXXX.X, Culture = neutral, PublicKeyToken = xxxxxxxxxxxxx

These longer strings can cause issues when you update your ActiveReports build, as it looks for that specific version of the file.

You can safely remove these specific version values and set the SpecificVersion property of the ActiveReports references to False.

Specific Version

 

Licenses.licx file is not present in the project

If the licenses.licx file is not generated or has accidentally been deleted. There is no need to worry. Manually generating the licenses.licx file is easy to do and a simple fix.

  1. In Visual Studio, right-click your project and Add > New Item…
  2. Choose Text Document.
  3. Change the name to licenses.licx and select done.
  4. Open the new licenses.licx file and add the correct licensing strings, which can be found above.
  5. Ensure that the Build Action property of the licenses.licx file is set to Embedded Resource

Build Action

Licensing Compiled Code

When ActiveReports is embedded in a custom library that is called by another application, or you are using Azure Functions, you will want to generate a .gclicx file.

Generating the .gclicx file

Follow the steps below to generate a .gclicx file:

  1. Open the command line as administrator on Windows and change the working directory to:

C:\ProgramData\GrapeCity\gclm             

  1. Open the following in a text editor and edit as needed for your solution:
gclm.exe "5e0b5f44-1a6b-4aff-a007-17b9224bca83" -lc [output dir].gclicx "[entry assembly name].[calling assembly name].dll"

Note: [entry assembly name] is the starting application that does not have direct references to ActiveReports; it will reference the [calling assembly name] that has the ActiveReports references.


To license a project on an Azure Functions application, the command will be as follows:

gclm.exe "5e0b5f44-1a6b-4aff-a007-17b9224bca83” -lc .\.gclicx Microsoft.Azure.WebJobs.Script.WebHost.[assembly name].dll
  1. Run the command.
  2. It generates a .gclicx file in the output directory. Copy the .gclicx file and paste it into your application where ActiveReports assemblies are used in any folder.
  3. Change the build action of the .gclicx file to Embedded Resource.
  4. Rebuild the solution and run the project.

Errors when debugging in Azure Functions

If you would like to run an Azure Functions App in debug mode, then some alterations will need to be made to the generation of the. gclicx file. When debugging in Azure Functions the project is opened in an Azure Emulator, thus the entry application name will be different. This entry application will be func, rather than the Microsoft.Azure.WebJobs.Script.WebHost so we will want to change the following line from:

gclm.exe "5e0b5f44-1a6b-4aff-a007-17b9224bca83" -lc .\.gclicx Microsoft.Azure.WebJobs.Script.WebHost.[assembly name].dll

to

gclm.exe "5e0b5f44-1a6b-4aff-a007-17b9224bca83" -lc .\.gclicx func.[assembly name].dll

Other common issues

The hash of the command changes based on the version of ActiveReports that you are using. For example ActiveReports 16 uses “5e0b5f44-1a6b-4aff-a007-17b9224bca83“ and ActiveReports 15 uses “e88c1aa3-2781-44bb-b639-765c9ef6d15c”. If the incorrect hash is used, there will be an error stating that your solution does not have a license.

Licensing in a Pipeline

You will want to use the pipeline licensing when using ActiveReports in a continuous integration and continuous deployment (CI/CD) or pipeline environment. With ActiveReports 16, we have upgraded our Pipeline Licensing Structure. For more details on the pipeline licensing and pricing, please contact sales at activereports.sales@grapecity.com or call 1.800.858.2739.

If you have any specific questions regarding Licensing, feel free to reach out to our support team and create a ticket.

Want the Latest Version of ActiveReports.NET? Download it today!

comments powered by Disqus