Save 15% On All Single Licences! Loading... GET OFFER

BricsCAD Licence Pooling

Quick answer: By default, when multiple licence levels are available on a Network License Server, seats are handed out in the order of the ID number in the licence file. You can control this more precisely by editing the bricsys.opt options file, using options like RESERVE, MAX, INCLUDE, and EXCLUDE to control who gets access to what. For reserving a specific licence level per user or group, an additional setup involving the RLM_PROJECT environment variable is available, this part is an IT department task, not something individual users configure themselves.

Editing Pooling Options

Two ways to do this:

Whichever method you use, reread or restart the licence server afterwards for the change to take effect.

Commonly Used Options

Option What it does Syntax Example
GROUP Defines a group of usernames GROUP name list-of-usernames GROUP engineers userA userB userC
HOST_GROUP Defines a group of hostnames HOST_GROUP name list-of-hostnames HOST_GROUP firstFloor machineA machineB machineC
INTERNET_GROUP Defines a group of IP addresses (wildcards allowed) INTERNET_GROUP name list-of-ip-addresses INTERNET_GROUP networkGhent 192.168.1.* 192.168.2.*
RESERVE Reserves a set number of seats for a specific user, host, or group RESERVE num product user|host|group|host_group|internet|internet_group|project who [id=nnn] RESERVE 20 bricscad GROUP engineers id=nnn
MAX Caps the number of seats available to a specific user, host, or group MAX num product user|host|group|host_group|internet|internet_group|project who [id=nnn] MAX 5 bricscad HOST_GROUP firstFloor id=nnn
INCLUDE Only allows the named user, host, or group to use the licence; everyone else is excluded INCLUDE product user|host|group|host_group|internet|internet_group|project who [id=nnn] INCLUDE bricscad GROUP bricscadusers id=nnn
EXCLUDE Blocks the named user, host, or group from using the licence EXCLUDE product user|host|group|host_group|internet|internet_group|project who [id=nnn] EXCLUDE bricscad INTERNET_GROUP networkGhent 192.168.1.* id=nnn
TIMEOUT Sets the inactivity timeout for a specific product (minimum 3600 seconds) TIMEOUT secs
]
TIMEOUT 3600 bricscad id=nnn
TIMEOUTALL Sets the inactivity timeout for every licence on the server (minimum 3600 seconds) TIMEOUTALL secs TIMEOUTALL 3600

A Configuration Mistake to Avoid

If reserved seats across multiple GROUPs add up to all the seats on the licence, only the first GROUP listed can actually get a licence. Every other group hits error -22, “All licenses in use,” even though seats were technically reserved for them too. When setting up RESERVE rules for several groups, make sure the numbers actually leave room for everyone you intend to cover.

Licence File Identifiers

Every licence file has an identifier, used to target pooling options at that specific licence:

Adding [id=nnn] to any option above limits that option to the seats from the matching licence file only.

Reserving Specific Licence Levels with RLM_PROJECT

When multiple licence levels (for example, Lite and Pro) are activated on the same server, you can make sure specific users get a specific level by setting the RLM_PROJECT environment variable on their machine. This requires setup on both the server and each client, and is an IT department task.

On the server, reserve seats per project in bricsys.opt, referencing each licence file’s identifier:

RESERVE 5 bricscad PROJECT bc_lite id=xxxxxxxx
RESERVE 5 bricscad PROJECT bc_pro id=yyyyyyyy

On each client, a launch script sets RLM_PROJECT before starting BricsCAD, rather than users opening it directly. For Command Prompt (.CMD):

@echo off
set RLM_PROJECT=bc_lite
call "C:\Program Files\Bricsys\BricsCAD V26 en_US\bricscad.exe"

For PowerShell (.PS1):

$env:RLM_PROJECT = "bc_lite"
Start-Process -FilePath "C:\Program Files\Bricsys\BricsCAD V26 en_US\bricscad.exe"

Swap bc_lite for bc_pro in either script to launch at the other reserved level instead.

Because every seat is reserved this way, BricsCAD won’t get a licence at all if RLM_PROJECT is missing or doesn’t match one of the server’s reserved projects, it doesn’t fall back to a different level. Adjusting the RESERVE numbers up or down changes how many seats stay available outside this reserved system. RLM_PROJECT can also be combined with INCLUDE and EXCLUDE for more specific setups.

Frequently Asked Questions

What happens if reserved seats for multiple groups add up to all available seats? Only the first group listed gets access. The rest hit error -22, “All licenses in use,” despite having reservations set up.

What happens if a user’s RLM_PROJECT variable doesn’t match any reservation? If all seats are reserved by project, BricsCAD won’t get a licence at all, it doesn’t default to a different level.

Where does a licence’s ID number come from? It’s generated automatically the first time a network licence is activated, and stays the same through later upgrades.

Is RLM_PROJECT pooling something end users set up themselves? No. It’s an IT department task: reserving seats on the server and distributing the launch scripts that set the environment variable on each machine.

Powered by Full Pelt Ltd