Continue to Site

Welcome to MCAD Central

Join our MCAD Central community forums, the largest resource for MCAD (Mechanical Computer-Aided Design) professionals, including files, forums, jobs, articles, calendar, and more.

Flexlm Flushing

Create a batch file (eg flush) with a line like:

ptcflush proe_lic_no servername 7788 %1

(with appropriate values for lic_no and servername...)

Run ptcstatus to check the handle (eg 120), then type:

flush 120

This is not quite automatic, but a fair bit quicker than typing in the whole ptcflush ... ... line every time..


You may also want to try looking at They are the owners/creators of FlexLM and may have a utility that flushes licenses.

we did not use the impact3d software. on the flexlm server find the ptc.opt option. set the value TIMEOUTALL to 1200 seconds. This flushes all licenses every 20 minutes. in you set the option SUPPRESS_LICENSE_LOSS_DIALOG to yes. this will suppress the regain dialog box that you will see after setting the option on the server.
Like Proed mentioned your best bet is to go with a customized .bat that semi-automates the task. We use a .bat that generates a menu of all of the used licenses that we can pick from and flush. It works great!
Here's a quick little batch file that a friend of mine and I came up with... You'll need to change one line in the file for it to work for you. You need to replace

[your licensenumber here] with your license numbershown when yourun ptcstatus, eliminate the end brackets

[your server name here] with your server name, no end brackets, also shown with ptcstatus

If you simply cut & paste this in to wordpad, make the changes and store it as kick.bat all you need to do is run it from Windows. You can do this with a comand line or just a shortcut to the file.


call ptcstatus
@echo off
> ~userin.vbs echo strUserIn = InputBox("Enter Last 3 Digits of License to Flush")
>> ~userin.vbs echo Set fs = Wscript.CreateObject("Scripting.FileSystemObject")
>> ~userin.vbs echo strFileName = fs.BuildPath(Wscript.ScriptFullName ^& "\..", "~userin.bat")
>> ~userin.vbs echo strFileName = fs.GetAbsolutePathName(strFileName)
>> ~userin.vbs echo Set ts = fs.OpenTextFile(strFileName, 2, True)
>> ~userin.vbs echo ts.WriteLine "set userin=" ^& strUserIn
>> ~userin.vbs echo ts.Close
start /w wscript.exe ~userin.vbs
del ~userin.vbs
call ~userin.bat
del ~userin.bat
if x==x%userin% goto NORUN
call ptcflush PROE_[your licensenumber here] [your server name here] 7788 %USERIN%
call ptcstatus
echo No File Selected

I get the error messaage:
lmremove: license handle 1214 not found on this license server.
I get it entering the whole License Nr or entering the last three digits of it.

The flash command in the batch file is:
call ptcflush PROE_Flex3C[servername] 7788 %USERIN%
In ptcstatusthere is the entry:
([user]@[Workstation]) PROE_Flex3C[servername] 7788 1214

What am i doing wrong?

Is your license number actually "Flex3C"? This should be the actuall license number that shows when you type ptcstatus. It's not the license 'type' but the actual number. All this batch routine does is types the ptcflush command out for you. The syntax needs to be exactly as you would type it yourself. If you can get ptcflush to work, make sure what is in the batch file matches what you hand type.



Articles From 3DCAD World