#
Troubleshooting .NET Reactor Activation
Use this guide when .NET Reactor itself does not activate, remains in demo mode, or reports a licensing error during a build.
.NET Reactor activation, not customer licensing
The files described here activate the .NET Reactor tool. They are not the customer license files generated for your protected applications. For licensing your own software, see Understanding the License System and Offline licensing.
#
Find the right solution
#
How activation works
.NET Reactor activation uses two different license files:
The files are not interchangeable. When requesting a new hardware license, upload the original license.license file—not an existing .v3lic file.
#
Standard activation procedure
- Locate the original
license.licensefile received at the time of purchase. - Start .NET Reactor.
- Open Help > Registration.
- Select
license.license, confirm the dialog, and restart .NET Reactor. - .NET Reactor detects the registration license and displays the Hardware ID required for activation.
- Open reactoractivation.com.
- Upload
license.license, enter the Hardware ID displayed by .NET Reactor, and enter your email address. - The new hardware license is normally sent to that email address within a few minutes. Also check the spam or junk folder.
- Save the attached
license.v3licfile locally. - Start .NET Reactor again, open Help > Registration, and select
license.v3lic. - Restart .NET Reactor and open Help > About. The dialog should now identify the installation as the full version.
Keep the original registration license
Keep the original license.license file in a safe place. It is required whenever a new hardware-bound license must be requested.
The Registration menu is hidden after .NET Reactor recognizes a valid full-version license. If the menu is not visible and Help > About shows the full version, activation is already complete.
#
license.license is not detected
Check the following:
- Run .NET Reactor as administrator before using Help > Registration.
- Confirm that the file is named
license.licenseand has not becomelicense.license.txt. - Select the extracted file, not a file that is still inside a ZIP archive or email preview.
- Make sure the file is readable and has not been blocked or quarantined by endpoint security software.
- Temporarily move obsolete or unrelated
.licenseand.v3licfiles out of the .NET Reactor installation and shared license directories before retrying. - Restart .NET Reactor after installing the file. License files are checked during startup.
- If the original file is damaged or missing, contact support and include the purchase email address or order information.
The registration dialog installs the selected file into the shared .NET Reactor license directory and, where possible, next to the executable. On Windows, the shared directory is:
%ProgramData%\Eziriz\.NET Reactor
The account running .NET Reactor or the build agent must be able to read the installed license file.
#
The activation email does not arrive
- Allow a few minutes for delivery and check the spam or junk folder.
- Confirm that the email address entered on the activation page is correct.
- Submit the original
license.licensefile, not a.v3licfile. - Confirm that the Hardware ID was copied completely from the target computer.
- If the message still does not arrive, contact support with the purchase details, email address and Hardware ID.
#
The received .v3lic file does not activate the product
A .v3lic file is valid only for the Hardware ID for which it was generated.
- Open Help > About and copy the current Hardware ID.
- Compare it with the Hardware ID used on the activation website.
- Confirm that you installed the new
.v3licfile rather than selecting the original.licensefile again. - Run .NET Reactor as administrator, reinstall the
.v3licfile through Help > Registration, and restart the application. - Remove older
.v3licfiles that may belong to another computer. - If the Hardware ID has changed, request a new
.v3licusing the originallicense.licensefile and the current Hardware ID.
Do not rename, edit, or modify the contents of either license file.
#
The Hardware ID changed
The Hardware ID can change after significant hardware, firmware, operating-system, or virtual-machine changes. Cloning a VM, restoring it on another host, or recreating a virtual machine may also produce a different ID.
Request a new hardware license using:
- the original
license.licensefile - the Hardware ID from the computer or VM that will run .NET Reactor
- your email address
If the Hardware ID changes repeatedly without an intentional system change, record the IDs and contact support with details about the operating system, virtualization platform, and recent hardware or VM changes.
#
.NET Reactor returns exit code 101 with -licensed
When the -licensed command-line option is used, return/error code 101 means that .NET Reactor cannot find a valid license for the current environment.
Common causes include:
- no
.v3licfile is installed - the build account cannot read the license file
- the
.v3licbelongs to a different Hardware ID - an old or invalid license file is being discovered instead of the intended file
- the installed product version is not covered by the license's update period
- a cloud or virtual build agent was recreated and now reports different virtual hardware
Exit code 101 is a licensing result, not a general protection or project-file error. Use the
#
Cloud build servers and changing virtual hardware
Hardware-bound workstation licenses are often unsuitable for ephemeral cloud build agents. Cloud providers may assign different virtual hardware whenever an agent, VM, or container is recreated. This changes the Hardware ID, so the existing .v3lic no longer matches and -licensed returns code 101.
Customers with a company license can contact .NET Reactor support to request an appropriate build license. Build licenses are designed for build servers and virtual environments where the underlying virtual hardware may change.
When contacting support, include:
- confirmation that a company license is available
- the CI/CD provider or virtualization platform
- the relevant order or customer information
Do not repeatedly generate workstation hardware licenses for short-lived hosted agents. Use the build-license option supplied by support.
For pipeline setup and secure license storage, see GitHub Actions, Azure DevOps, and Build Integration Manager.
#
Console activation on Linux and macOS
Open a terminal in the .NET Reactor directory and run:
./dotNET_Reactor
If .NET Reactor is not activated, it displays the current Hardware ID. Use that Hardware ID together with the original license.license file to request a hardware license at reactoractivation.com.
When the new license.v3lic file arrives:
- Copy
license.v3licinto the same directory as thedotNET_Reactorexecutable. - Make sure the user or build account running .NET Reactor can read the file.
- Run
./dotNET_Reactoragain. - Confirm that the output now shows Full Version.
If the shell reports Permission denied when starting the executable, make it executable and retry:
chmod +x ./dotNET_Reactor
#
Always use -licensed in automated protection commands
It is recommended to add -licensed to every command that protects software, especially in CI/CD environments:
./dotNET_Reactor -licensed -file ./MyApplication.dll [other options]
The -licensed option prevents .NET Reactor from protecting the software when it is not running as the full version. In that situation, .NET Reactor terminates with exit code 101 instead of creating output under an unintended demo or unlicensed state.
Ensure that the build script preserves and evaluates the process exit code. Treat code 101 as an activation failure and do not publish the build output. See Command Line Parameters for the parameter reference.
#
A newer .NET Reactor version shows an upgrade or renewal message
A perpetual license can continue to cover eligible product versions, while access to newer program updates depends on the update/subscription period associated with the purchase.
If an older installation activates but a newer release does not:
- Verify that the same license files were installed for the new release.
- Check the purchase date and update entitlement.
- Use a product version covered by the license, or renew the update subscription and request updated license files if required.
This situation is different from a Hardware ID mismatch.
#
Command-line diagnostics
Display the current Hardware ID:
dotNET_Reactor.Console.exe -gethardwareid
Write the Hardware ID to a text file:
dotNET_Reactor.Console.exe -gethardwareid hardware-id.txt
Run these commands under the same user account and in the same environment as the actual build. A license visible to an interactive administrator account may not be readable by a CI service account.
#
Information to send to support
If activation still fails, contact support and provide:
- the .NET Reactor version
- operating system and architecture
- whether the GUI or command-line edition is used
- the status shown under Help > About
- the current Hardware ID
- whether
license.licenseandlicense.v3licare present and where they were installed - the exact message or exit code
- whether the computer, VM, container, or build agent recently changed
- purchase email address or order information
License files contain customer-specific information. Do not post them publicly. Send them only through an official support channel when requested.
#
Related topics
Order Online · The Main Menu · Command Line Parameters · Build Integration Manager
GitHub Actions · Azure DevOps · Technical Support