On systems with the REV11 licensing upgrade package installed, the SERIAL routine will not return the new, longer registration string used by REV11 licensing. Instead, SERIAL returns "New---R-eg FN---" or it may return a portion of the longer string.
(SERIAL does return the longer string in Synergy/DE 11, but this enhancement is not, of course, present on older versions of Synergy that are running the licensing upgrade package. Also note that users of v11 will need to change the size of the variable they use with SERIAL to accommodate the longer string.)
To help find occurrances of SERIAL in your code, first do a case-insensitive search for "serial" and then look for instances of "xcall serial" (in case there are tabs, spaces, or returns between the words).
On pre-v11 systems, it still possible to get the system’s REV11 registration string. One technique is to run the lmu command in an open pipe and obtain the registration string from the lmu output. Below is a simple example of a subroutine that uses an open pipe to return the REV11 registration string –
subroutine getnewreg
a_newregstr ,a;string ;Be sure to pass at least a 35 byte alpha (31 for
; the registration string and 4 for dashes)
proc
begin
data pchn ,int
data lmuinfo ,a 255
data cmd ,string ,"|lmu.exe"
data pos ,int
open(pchn=0, I, cmd)
repeat
begin
reads(pchn, lmuinfo, eof)
if pos = %instr(1, lmuinfo, "Registration String:")
begin
a_newregstr = lmuinfo(pos+21, trimz(lmuinfo))
end
end
eof,
close pchn
xreturn
end
endsubroutine
THE INFORMATION PROVIDED TO YOU IN THIS SERVICE IS FOR YOUR USE ONLY. THE INFORMATION MAY HAVE BEEN DEVELOPED INTERNALLY BY SYNERGEX OR BY EXTERNAL SOURCES. SYNERGEX MAKES NO WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS INFORMATION, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SYNERGEX BE LIABLE FOR ANY DAMAGES OR LOSSES INCURRED BY YOU IN USING OR RELYING ON THIS INFORMATION, INCLUDING WITHOUT LIMITATION GENERAL DAMAGES, DIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES, OR LOSS OF PROFITS, EVEN IF SYNERGEX HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.