I'm seeing a strange problem when using the sysInfo procedure. I have a user with a very long username (16 characters). My application logs each user as they start the application, documenting various items from sysInfo, one of which is the userName. When this guy logs in though, the value saved in my log table contains the first 15 characters of his username concatenated with the path and filename of the BDE config file. Here is the relevant code:
I don't want to post my user's name, but if the user's id is averyloooongname, here is what I am seeing as the UserName stored in my table:
averyloooongnams:\Configuration Files\wts - Pdx Citrix.cfg
Notice that the last letter is missing from the username. We are currently running Paradox 9 on a Citrix server, but this user has the same issue on Paradox 10 and running the app from a desktop. The Citrix box is Windows 2000, the desktop is NT. If anyone has any idea what is going on here, or has a workaround, I'd appreciate hearing it.
Thanks.
Code:
method UserInfoLog() logical
var
UserSys DynArray[] AnyType
PdoxVersion String
DT DateTime
UserInfoLog_TC TCURSOR
Return_L LOGICAL
endvar
sysInfo(UserSys)
PdoxVersion = version()
DT = dateTime()
IF UserInfoLog_TC.open(":WRS:UserInfoLog") THEN
UserInfoLog_TC.edit()
IF UserInfoLog_TC.qlocate(UserSys["UserName"]) THEN
ELSE
UserInfoLog_TC.insertRecord()
ENDIF
UserInfoLog_TC.UserName = UserSys["UserName"]
UserInfoLog_TC.LastModDT = DT
UserInfoLog_TC.PdoxEdition = UserSys["Edition"]
UserInfoLog_TC.PdoxVersion = PdoxVersion
UserInfoLog_TC.BDEVersion = UserSys["EngineVersion"]
UserInfoLog_TC.BDEEngineDT = UserSys["EngineDate"]
UserInfoLog_TC.LocalShare = UserSys["LocalShare"]
UserInfoLog_TC.NetShare = UserSys["NetShare"]
UserInfoLog_TC.NetDir = UserSys["NetDir"]
UserInfoLog_TC.WinPlatform = UserSys["WindowsPlatform"]
UserInfoLog_TC.WinVersion = UserSys["WindowsVersion"]
UserInfoLog_TC.WinText = UserSys["WindowsText"]
UserInfoLog_TC.CPU = UserSys["CPU"]
UserInfoLog_TC.Memory = UserSys["Memory"]
UserInfoLog_TC.PdoxSysDir = UserSys["ParadoxSystemDir"]
UserInfoLog_TC.PdoxStartupDir = UserSys["StartupDir"]
UserInfoLog_TC.close()
Return_L = TRUE
ELSE
Return_L = FALSE
ENDIF
RETURN Return_L
endMethod
I don't want to post my user's name, but if the user's id is averyloooongname, here is what I am seeing as the UserName stored in my table:
averyloooongnams:\Configuration Files\wts - Pdx Citrix.cfg
Notice that the last letter is missing from the username. We are currently running Paradox 9 on a Citrix server, but this user has the same issue on Paradox 10 and running the app from a desktop. The Citrix box is Windows 2000, the desktop is NT. If anyone has any idea what is going on here, or has a workaround, I'd appreciate hearing it.
Thanks.