This page lists some of the most common questions regarding the ILNumerics licensing. If you have a specific question not answered here, please get in touch with us: firstname.lastname@example.org
My assembly runs fine on my machine but produces a license exception on other machines.
Make sure that the application was licensed and unlocked correctly on your developer machine. During build inspect the Output window, Build tab in Visual Studio. There will be a note saying:
> Licenses compiled to: [your project path]\ILNumerics_deploy\ilnumerics.lic
This means that your assembly is unlocked for any machine. If there is an error message / warning instead, read the message and follow any instructions provided. See this page if you need further help.
How to find out Which Modules are required for my application?
The required modules are easily identified by inspecting the list of references for your application. Each ILNumerics module corresponds to a single assembly.
Example: Assuming that the application references ILNumerics.Computing.dll, ILNumerics.Drawing.dll and ILNumerics.Toolboxes.Statistics.dll. In this case the modules “Computing Engine”, “Visualization Engine” and the “Statistics Toolbox” are required.
Note that the module ILNumerics.Core.dll is always required and comes free of charge.
How can I deactivate a developer seat? I need to assign the license to another developer.
There is no technical procedure for deactivating a developer seat. Once activated it remains activated. However, if your developer left the company / project and you need to reassign your subscription license to a new person get in touch with us! We will support you with the reassignment. Note, that there is no way to move a perpetual license, though.
I have to upgrade my licensed computer. Will ILNumerics work afterwards?
Yes. Just make sure that you use the same computer name and do not change the OS user account name. ILNumerics will pick up the license after the upgrade and keep working normally.
I am not working with Visual Studio. What are the steps I have to perform manually in order to license my application?
Here is what Visual Studio performs on your project transparently. This list is for very rare situations only. It is not recommended to perform those steps manually. With very few exceptions Visual Studio should be used instead:
- Add a folder named 'ILNumerics_deploy' with the following files: ILHelper.cs, ILNImports1.targets, ILNImports2.targets, ilnumerics.lic. Use Visual Studio to generate this folder or download one example from here (version 4.11).
- Make sure that ILHelper.cs is a regular code file of the project.
- Make sure that ilnumerics.lic is included in the project as embedded resource.
- In the project file import the ILNImports1.targets and ILNImports2.targets files as msbuild projects.
All this can be done by adding the following snippet to the source code of the project file (*.csproj, *.vbproj):
<ItemGroup> <Compile include="ILNumerics_deploy\ILNHelper.cs"/> <EmbeddedResource include="ILNumerics_deploy\ilnumerics.lic"/> <None Include="ILNumerics_deploy\ILNImports1.targets"/> <None Include="ILNumerics_deploy\ILNImports2.targets"/> </ItemGroup> <Import Condition="$(ILNLicCompile) != 'true'" project="ILNumerics_deploy\ILNImports1.targets"/> <Import Condition="$(ILNLicCompile) == 'true'" project="ILNumerics_deploy\ILNImports2.targets"/>
Afterwards, the project will create and maintain embedded licenses for execution on non-licensed machines when building with Visual Studio, Team Server or on the developer command line on a licensed seat.
Note that we do provide support for regular projects which were set up via Visual Studio and the ILNumerics extension package only.
I've got a license warning during build. What can I do?
Check that your project conforms to the following:
- All platform targets (AnyCPU / x86/x64) must match between the main assembly and all reference assemblies. ILNumerics targets AnyCPU platforms and can be referenced from projects targeting AnyCPU, x86, and x64. Make sure the target has been explicitly configured in your build configuration.
- Modularize your code! Seperate ILNumerics functionality from other aspects. Try to keep the list of references in your ILNumerics project assembly small! We often see problems with projects also dealing with techniques like IKVM _in the same assembly_. Seperating concerns will not only very likely remove the build issues but also help to maintain and improve your code.
- Check that your developer seat has a valid and activated license for all referenced modules (except ILNumerics.Core). Go to Visual Studio Options -> ILNumerics -> Licensing to read the list of activated modules.
- Consider removing the ILNumerics_deploy folder. Save the project and attempt to rebuild. ILNumerics will recreate the folder for you.
- Still no luck? Create a new, empty project with a mini-ILNumerics example and check if your seat is able to build it successfully. If yes: try to remove all unrelated references from your main project until you find the one causing problems / until the build succeeds.
If you followed above instructions but still get a warning during build contact our support services: email@example.com.
Suddenly my activation is lost and Visual Studio asks me to reactivate my developer seat?
In version 4.8 this could have been caused by certain major updates to Windows. This was fixed in version 4.9. However, an activation is only valid for one single OS account on one single machine. Note that the account name is case sensitive! It has been reported that on some computers the letter case of the username changed due to the way how to login to the machine (VPN). A new activation is required in this case. A simple work around is to make sure to always use the same account name, including the case of the letters.
Can you send me a quote?
Sure! Just follow the instructions here in order to receive your individual quote.