AV License Server — Manual v26.10.28.0 ← Back to AV License Server
English Italiano Français Deutsch Español 中文 日本語

AV License Server — Manual

┌─────────────────────────────┐ │ Server PC │ │ │ │ AV_LicenseServer.exe │ ← Windows Service, always running │ (listens on the network, │ │ default TCP port 7788) │ │ │ │ AV_LicenseManager.exe │ ← opened only to administer it │ (Service / Licenses) │ │ │ │ AV_LicenseServer.ini │ ← configuration │ Code.txt │ ← activation code (seats, expiry) │ AV_LicenseServer.log │ ← log └──────────────┬───────────────┘ │ LAN network (TCP, port 7788) ┌─────────┼──────────┐ │ │ │ ┌───▼───┐ ┌───▼───┐ ┌────▼──┐ │ SPC │ │ SPP │ │ ... │ ← Client PCs, each with └───────┘ └───────┘ └───────┘ Server=<server IP> Port=7788 in their settings

Contents

  1. What it is and how it works
  2. Requirements
  3. Installation
  4. Activation: the Code.txt file
  5. AV License Manager: day-to-day use
  6. Configuring Clients (SPC, SPP, ...)
  7. How client licenses are managed
  8. Network and Firewall
  9. Updating
  10. Troubleshooting
  11. Quick reference

1. What it is and how it works

AV License Server manages "concurrent seat" (floating) licenses: each product (e.g. SPC, SPP) has a maximum number of seats that can be used at the same time, set in the customer's activation code. It is not tied to a single PC: any client on the network can use a free seat, until they are all in use.

The system is made of two programs, installed on the same PC (the server):

  • AV_LicenseServer.exe — runs as a Windows Service in the background, always active (even with no user logged in). It is the one answering clients on the network. It has no graphical interface.
  • AV_LicenseManager.exe — the administration console: used to start/stop the service, view the log, and manage the activation file. It does not need to stay open: the server works independently of it.

The Clients (SPC, SPP, etc., installed on other PCs on the network) connect to the server over the network (TCP) at startup, request a license, and keep it active by sending a periodic signal ("heartbeat") for as long as they stay open.

2. Requirements

  • Windows with Administrator privileges for installation (needed to register the Windows Service and write to Program Files).
  • The PC chosen as the server must have a fixed or reserved IP address on the local network (if it changes, every client must be reconfigured). It is recommended to assign it via a DHCP reservation on the router, or set it as static.
  • No other software prerequisite: the installer includes everything needed.

3. Installation

  1. Copy the installer <yyyymmdd>_AV_LicenseServer_x64.exe (built from the kit into Kit\Output\; the name starts with the build date, e.g. 20261010_AV_LicenseServer_x64.exe) to the PC chosen as the server and run it.
  2. Confirm the Administrator privileges request (UAC).
  3. In the wizard's optional tasks page:
    • "Install and start the AV License Server Windows service" — checked by default. Leave it checked to start the service right away; uncheck it only to install the files without activating the service yet.
    • "Create a desktop icon for AV License Manager" — unchecked by default, convenient if you administer the system often from that PC.
  4. Finish the installation. If the service was installed, the installer:
    • registers and starts it (internal name AV_LicenseServer, shown in services.msc as "AV License Server");
    • automatically opens the Windows Firewall exception for AV_LicenseServer.exe, restricted to the Domain and Private network profiles (not Public) — without this exception, clients on other PCs would not be able to reach the server (see §8).
  5. Files installed in C:\Program Files\AV License Server\:
    • AV_LicenseServer.exe (the service)
    • AV_LicenseManager.exe (the console — its Start Menu/Desktop shortcuts are set to already launch as Administrator, needed to control the service)
    • AV_LicenseServer.ini — sample configuration with default values (Port=7788, etc.); it is never overwritten by a later update.
    • AV_LicenseServer_Manual.html — this manual, also opened from the Start Menu ("AV License Server Manual").
  6. At this point the server is active but with no license enabled yet: the customer's Code.txt activation file (§4) must be installed before real clients can obtain a license. Until then, clients still attempt to connect and automatically get a 30-day trial period (see §7).

4. Activation: the Code.txt file

Code.txt is the file that determines which products are enabled on this server, how many concurrent seats, and until when. It is customer-specific and tied to the server PC's hardware (it does not work if copied to another PC).

4.1 Requesting the activation code

In the Licenses tab of AV License Manager, the "Code request" button automatically detects this PC's two hardware identifiers (SystemID and NetworkID) and opens the browser on the Arolo page to request the code, with them already filled in. There is no need to write them down by hand.

4.2 Installing the received code

Once the Code.txt file is received (by email or another channel) from whoever generates the activation:

  1. Open AV License Manager, Licenses tab.
  2. Click "Select Code.txt..." and choose the received file: it is validated and automatically copied into the server's folder.
  3. The data (customer, enabled products, seats, expiry dates) immediately appears in the list, read-only.
  4. Restart the service (Service tab → Stop, then Start, or the Refresh status button to check the state): Code.txt is read by the server only at startup — installing it while the app is open has no effect on licenses already in progress until the service is restarted.

The "Remove license file" button removes the current activation (use it only to replace it; without Code.txt no real license can be granted, only the trial period).

4.3 What it contains

For each product: name, maximum authorized version, number of concurrent seats, issue date and expiry date (or "no expiry"), and which optional features of the product are enabled (options, e.g. ResidualAnalysis and CutOptimization for SPC; all or none). The file is encrypted on disk: opening it with a text editor shows nothing readable.

5. AV License Manager: day-to-day use

Three main elements, all in the Service tab:

  • Header label — shows the name, the installed AV License Server version, and the IP address:port clients must connect to (e.g. Service: AV_LicenseServer (AV License Server) v26.10.28.0 - 192.168.0.31:7788). This is the value to use when configuring each client (§6).
  • Service status (Running / Stopped / not installed), refreshed every 2 seconds, with buttons:
    • Start / Stop — starts or stops the service.
    • Install service / Uninstall service — registers or removes the Windows Service (normally already done by the installer; only needed for manual reinstalls).
    • Refresh status — updates the state immediately without waiting for the timer.
  • Log — the latest lines of AV_LicenseServer.log, with manual or automatic refresh every 2s, and a button to open the log folder in Explorer. Useful to understand why a client is not receiving a license (the exact reason for a refusal is always written here).

All service operations require Administrator privileges: if denied, the app offers to restart itself elevated.

The Licenses tab shows the data of the active Code.txt and the buttons to request a new one or install a received one (see §4). The Available column shows, for each product, how many licenses are still free right now: seats minus the licenses in use and the borrowed ones (see §7.1). It is read from the running service when the tab is opened or with Refresh and shows, for example, 3 of 5 or 2 of 5 (1 borrowed); 0 (expired) if the product's license in Code.txt has expired; n/a (service not running) with the service stopped; n/a (restart the service) for a product of a new Code.txt that the service has not loaded yet (§4.2). The Options column shows the optional features of each product enabled by Code.txt: All, None or their list (e.g. ResidualAnalysis, CutOptimization).

The Borrowed tab lists the licenses currently on loan (see §7.1): product, user, computer, borrow date, expiry date and days left. It is read-only — a borrow ends only when the client returns it or when it expires — and is updated when the tab is opened or with Refresh.

6. Configuring Clients (SPC, SPP, ...)

Each client application has a settings file (e.g. settings.xml) with a node such as:

<License Server="192.168.0.31" Port="7788" Product="SPC"/>
  • Server: the IP address of the server PC, the one shown in the Service tab of AV License Manager (see §5) — never 127.0.0.1/localhost if the client runs on a different PC than the server (that would only work by coincidence if client and server are on the same machine: see §8).
  • Port: the port configured on the server (AV_LicenseServer.ini, default 7788) — must match.
  • Product: the product name expected in Code.txt (case-insensitive).

If the server's IP address should change in the future (new PC, reconfigured network), it must be updated on every client.

7. How client licenses are managed

  • On startup, the client connects to the server and requests a license for its product/version. If a seat is free (and the product is enabled in Code.txt), it gets one; otherwise it receives an error (e.g. "no seat available").
  • While in use, the client sends a signal ("heartbeat") every 30 seconds to confirm it is still active and keep the license.
  • On (normal) close, the client explicitly releases the license, which immediately becomes available again for another user.
  • In case of a crash, power outage, or disconnected network cable: if the TCP connection drops, the server releases the license immediately; if instead the connection is left "hanging" without further heartbeats, the server releases it anyway after HeartbeatTimeoutSec (default 90 seconds, configurable in AV_LicenseServer.ini). In practice a seat is never stuck for long because of a client that disappeared without disconnecting properly.
  • Trial period: if the requested product is not enabled for any reason (no Code.txt, product not listed, hardware mismatch, expired...), the client still gets a 30-day trial from its own executable's build date, with no seat limit. It cannot be "reset" by installing/removing Code.txt: the reference is fixed to the client's build.
  • Upcoming-expiry warning: a real (non-trial) license that is about to expire (configurable threshold, default 15 days) triggers a non-blocking warning in the client — the license is still granted.
  • License holder: a real license also exposes the name of the customer it is registered to (from Code.txt), which the client can display in its interface.
  • Product options: a real license also tells the client which optional features of the product are enabled (Options in Code.txt, see §4.3); the client application enables only those. During the trial period all options are enabled. A borrowed license keeps the options it had when it was borrowed.

Server stopped or restarted: license state is kept in memory by the service, so after a restart it has no record of the seats in use. Client programs already running keep working (the license is only checked at startup) and, at their next heartbeat (within 30 seconds), automatically log in again and take a seat back, with no manual action. So that they find it, for 40 seconds after a restart the server holds the seats of the clients that were connected before: a new client starting in that window is told to try again in a few seconds. If there is no valid license (the server stays unreachable for about 90 seconds, or in the meantime other users have taken all the seats), SPC and SPP show a message: SPC then disables its controls, exactly as at startup with an invalid license, and enables them again by itself as soon as the license is back (the client keeps retrying every 30 seconds); SPP closes. To avoid this, restart the server outside working hours.

7.1 Working outside the network: borrowed licenses

A user who has to work away from the office (laptop at a customer site, at home, travelling) can borrow a license before leaving:

  • Borrow (while still on the network): from the client application, choose the borrow command and the number of days. The server keeps one seat reserved for that computer for that period and sends it a signed ticket, saved on the computer. The server grants at most MaxBorrowDays days (default 30, key in AV_LicenseServer.ini; 0 disables borrowing) and never beyond the expiry date of the license in Code.txt. Trial licenses cannot be borrowed.
  • Outside the network: the client starts and works normally without reaching the server, until the borrow expires. The ticket only works on the computer it was issued for, cannot be modified, and stops working if the system clock is moved back.
  • The seat stays taken: while the license is borrowed, the server counts that seat as in use, even after a restart of the service, so it is not available to other users. Borrowed licenses are listed in AV License Manager, Borrowed tab.
  • Back on the network: the client goes back to the server by itself, on the same borrowed seat. To free the seat earlier, use the client's return command (the server must be reachable).
  • Expiry: if the license is not returned, at the end of the borrow period the server frees the seat automatically and, at the same moment, the ticket stops working on the computer. A lost or broken computer therefore keeps its seat until the borrow expires: there is no way to free it earlier, so choose the number of days accordingly.

7.2 Without a License Server: stand-alone license

A single computer that does not use a License Server (e.g. a company with only one PC) can be licensed with a stand-alone license: a file (.lic) that authorizes one product on that computer only, with no server, network or seats.

  • Request: in the client application's License window, Stand-alone license box, the Copy button copies the Computer code to the clipboard: send it to your vendor, who issues the .lic file (product, maximum version, options, issue date and expiry date or no expiry).
  • Install: in the same box, click Import license... and choose the received file. It is checked (this computer, this product, dates, version) and saved in %ProgramData%\AV_License\, valid for all users of the computer; it is used immediately and any network seat in use is released. A <product>.lic file placed next to the client executable is used as well.
  • Use: at startup the client looks for the stand-alone license first; if there is none or it cannot be used, it contacts the License Server as usual (network license, borrowing, trial). With a stand-alone license, the upcoming-expiry warning, the license holder and the product options work as with a network license; borrowing is not needed and is refused.
  • Protection: the file only works on the computer and for the product it was issued for, cannot be modified, and stops working if the system clock is moved back. If it is present but cannot be used (expired, issued for another computer...), the client shows the reason.
  • Remove: Remove license deletes it from the computer; the client then goes back to the License Server.

8. Network and Firewall

The server listens on all network interfaces of the PC (not on a single address), which is why:

  • from a client on the same PC as the server, both the network IP (e.g. 192.168.0.31:7788) and 127.0.0.1:7788 (loopback) work;
  • from a client on a different PC, only the server's network IP address works — never 127.0.0.1, which would point to the client itself.

The Windows Firewall on the server PC must allow inbound connections on this port, otherwise remote clients cannot connect (see §10 for the symptoms). The installer automatically creates this exception (restricted to Domain/Private networks, not Public — consistent with a service meant only for the company LAN). It only needs to be recreated manually if:

  • the service was installed without going through the official kit;
  • the exception was removed manually or by a firewall reset;
  • the server PC is connected to a network classified as "Public" instead of "Private"/"Domain" (in that case the exception does not apply: check the network profile in Windows, Settings > Network & Internet).

Command to (re)create it manually, run as Administrator on the server PC (adjust the path if installed elsewhere):

netsh advfirewall firewall add rule name="AV License Server" dir=in action=allow program="C:\Program Files\AV License Server\AV_LicenseServer.exe" enable=yes profile=domain,private

9. Updating

Run the new installer (<yyyymmdd>_AV_LicenseServer_x64.exe) on the server PC just like a first installation: it overwrites the executables but does not touch the existing AV_LicenseServer.ini or Code.txt (the customer's configuration and activation stay intact). The service is stopped, the files are updated, and the service is restarted automatically if the relevant task stays checked.

10. Troubleshooting

Symptom in the clientMost likely causeWhat to check
Communication error with the License Server: Connect timed out The packet never reaches its destination: the Windows Firewall on the server PC is blocking the port, or the IP/network is wrong. From a client PC: Test-NetConnection <server IP> -Port 7788. If False, check the firewall exception on the server (§8) and that client and server are on the same reachable network/subnet.
Communication error with the License Server: Socket Error #10061 - Connection refused The PC responds, but nothing is listening on that port/IP: service stopped, or the configured port differs between client and server. On the server PC: netstat -an | findstr 7788 (should show LISTENING); check the service state in AV License Manager (Service tab) and that Port= in AV_LicenseServer.ini matches what is configured in the client.
NO_SEATS_AVAILABLE / "no seat available" All concurrent seats for that product are already in use. Check how many users currently have the program open; if more seats are needed, request a new Code.txt with a higher NumberOfLicense.
LICENSE_EXPIRED The product is listed in Code.txt but its expiry date has passed. Request a renewal (new Code.txt) from whoever manages the activations.
VERSION_NOT_LICENSED The client version is newer than the maximum version authorized for that product in Code.txt. Request a new Code.txt that covers the new version, or keep using a client version not above the authorized one.
TRIAL_EXPIRED The product has no valid license (no Code.txt, product not listed, hardware mismatch) and the 30-day trial period of the client has ended. Install the customer's Code.txt (§4) and restart the service; the exact reason is written in the log.
SERVER_STARTING The service has just been restarted: for 40 seconds it holds the seats of the clients that were connected before (§7). Wait a few seconds and start the client again.
BORROW_DISABLED / BORROW_NOT_ALLOWED Borrowing is turned off on the server (MaxBorrowDays=0), or the product only has a trial license, which cannot be borrowed. Set MaxBorrowDays to a value greater than 0 in AV_LicenseServer.ini and restart the service; for a trial, install the customer's Code.txt first.
"The stand-alone license has expired" / "...was issued for another computer" / "...is not valid" The stand-alone license (§7.2) found on the computer cannot be used: expired, issued for another computer or product, damaged or modified, or the system clock has been moved back. Restore the correct date and time if needed; otherwise ask your vendor for a new .lic file for this computer's code and import it (§7.2). Meanwhile the client uses the License Server, if configured.
The client shows "Trial version expires in: N days" even with Code.txt installed The service has not been restarted yet after installing the new Code.txt (read only at startup), or the SystemID/NetworkID in the file do not match this PC. Restart the service from the Service tab; check the exact reason written at startup in the log (AV_LicenseServer.log).
AV License Manager cannot start/stop/install the service Missing Administrator privileges. Answer "Yes" to the elevated-restart prompt offered by the app, or launch it with "Run as administrator".

11. Quick reference

  • Default port: TCP 7788 (configurable in AV_LicenseServer.ini, key Port).
  • Windows service name: AV_LicenseServer (shown as "AV License Server" in services.msc).
  • Typical install folder: C:\Program Files\AV License Server\.
  • Main files: AV_LicenseServer.exe, AV_LicenseManager.exe, AV_LicenseServer.ini, Code.txt, AV_LicenseServer.log.
  • Heartbeat timeout: 90 seconds by default (key HeartbeatTimeoutSec).
  • Trial period: 30 days from the client's build date, fixed, not configurable.
  • Upcoming-expiry warning: 15 days by default (key ExpiryWarningDays).
  • Log retention: 15 days by default (key LogRetentionDays).
  • Borrowed licenses: at most 30 days by default (key MaxBorrowDays, 0 = disabled); state kept in AV_LicenseServer.borrows.
  • Stand-alone license: %ProgramData%\AV_License\<product>.lic (or next to the client executable); no License Server needed (§7.2).