Hi,
We have recently upgraded one of our RFSDK 6.0 applications (DOS client) to RFSDK 7.0 (VT220 mode using Wavelink client) and have struck some problems.
Terminal users have an "Exit" option on their menu which calls RFSApplication1.RFEnd. Under RFSDK 6.0 this would disconnect them and shut down the DOS client. Under RFSDK 7.0 this disconnects them, but it doesn't appear to release the license (RFSController1.LicensesInUse doesn't decrement).
When the same terminal reconnects, it occupies another license. As you can imagine it's not long before users start getting locked out.
After some testing, I noticed that after RFEnd was called, the SessionClosed() event was NOT running. I modified the code to call RFEnd and then the RFSApplication1.SessionClose() method explicitly, and THEN it started freeing up the licenses.
The RFSDK help file seems to recommend called RFEnd and suggests that SessionClosed() will happen automatically, but I wonder if this is still accurate, because I notice this help file appears to have hardly changed since the RFSDK 6.0 version. E.g. there is no mention of RFSController1.LicensesInUse or the TooManyConnections() event etc.
Interestingly, we have installed WMS Professional 5.3 at another site using VT220 mode and have noticed problems with sessions not closing properly depending on how you exit them. This client also regularly finds their terminals won't connect and has to close and re-open the RF Server program - could it be a similar issue?
Any ideas?
Thanks,
Michael