Posts: 40,483
Threads: 491
Joined: Aug 2002
So I (somewhat foolishly) upgraded Visual C++ today. It was just a dot-dot upgrade (16.8.3 to 16.8.4) but all hell broke loose because of some stricter standards compliance stuff being enabled. Since I know that some of the things it was complaining about are going to be issues on Linux (where the compilers are going to be enforcing these same things), I've been trying to work through them all day. I've got most of it straightened out, but I've hit one thing that's just stumped me. It may be a compiler bug, so I posted some questions for the language lawyers. But I may end up having to revert Visual C++, though presumably the changes made today are still valid and will be good for compatibility with compliant Linux compilers.
Dean Roddey
Explorans limites defectum
Posts: 40,483
Threads: 491
Joined: Aug 2002
OK, I figured that issue out and have the code base updated for the 'non-permissive' mode, which was a very confusing but very useful step forward, since it means that the code should be fully compliant and be much happier on Linux. And of course it means that the compiler is watching my back more.
Dean Roddey
Explorans limites defectum
Posts: 720
Threads: 124
Joined: May 2019
01-27-2021, 03:14 PM
(This post was last modified: 01-27-2021, 03:28 PM by gReatAutomation.)
Finally bit the bullet and upgraded from 914 to 917, then 917 to 920.. No issues thus far and I am using, among other drivers:
- GC-100 serial
- Network Monitor
- RadioRA2
- RTI serial
- Run Timer
- SMS gateway
- SONOS Zone Player
- Variable driver
Is there any way to update the SMS driver? I ask because there is no way to set the NewMessage and NewCommand fields back to False.
NewMessage has a R/W field, however, when you try to set it back to False, the following error is noted:
Code: 01/27 18:18:48-AUTOMATION, CQCServer, CQCDrv_SMSGatewayThread26
{
CQCKit, CQCDriver_DriverBase.cpp.7065, Failed/Not Found, Error: 2016/0/0
The value written to field SMSGateway.NewMessage was rejected by the driver. Reason=Unhandled
Write Not Handled
<CQCServer> CQCDriver_DriverBase.cpp - 8612
<CQCServer> CIDOrb_ThisFacility.cpp - 611
<CQCAdmin> CQCKit_CQCSrvAdminClientProxy.cpp - 2040
<CQCAdmin> CQCAdmin_DrvMonTab.cpp - 1330
}
I can work around this by setting a trigger on the ReceiveCommand and ReceiveMessage field ("Send a Trigger on Any Value Change"), however, if you send the same command or message, the trigger will never fire because the value never changes.
Ideally, the NewMessage and NewCommand fields should each be R/W boolean fields that turn to True if a new command or a new message is received, at which point it would be incumbent on us to set back to False after we are done doing what we want to do.
Posts: 40,483
Threads: 491
Joined: Aug 2002
If the driver was intended for them to work that way, it would be easy enough to change them to do that. The NewMessage one is marked as R/W but apparently the driver doesn't look for that write, which is why the error you are getting. Even if it doesn't do anything in response it needs to indicate it handled the write. The NewCommand one is marked read only, so I'm not sure if it was intended to be changed from the outside, or if that was just an oversight.
Dean Roddey
Explorans limites defectum
Posts: 1,507
Threads: 143
Joined: May 2007
01-27-2021, 11:45 PM
(This post was last modified: 01-27-2021, 11:45 PM by kblagron.)
Fixing the driver to handle the write is fairly easy so it does nothing and doesn't issue an error message. I don't know enough about the driver to know whether you could get it to react to the write event easily.
Posts: 720
Threads: 124
Joined: May 2019
01-28-2021, 08:56 AM
(This post was last modified: 01-28-2021, 01:00 PM by gReatAutomation.)
I am updating it now and will post it when completed. I would really like to have the SMS driver be updated to send MMS (i.e., pictures) but my skills are limited at this time.
Changes posted: https://www.charmedquark.com/vb_forums/s...#pid158230
Posts: 720
Threads: 124
Joined: May 2019
Been on the 920 for several days. No further issues noted.
Posts: 951
Threads: 111
Joined: Jan 2008
02-04-2021, 11:29 AM
(This post was last modified: 02-04-2021, 11:33 AM by George M.
Edit Reason: Add info
)
Just tried to update to 920. Coming from 914
Failed with this info copied from the end of the CQCInstall.txt:
2/04 12:19:48-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Copying room config
}
02/04 12:19:48-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Upgrading installation server data
}
02/04 12:19:48-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Upgrading security server data
}
02/04 12:19:49-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_InstallThread.cpp.3616, Failed/Internal, Error:1019/0/0
{
The source Security repository should not have been created
<CQCInst> CQCInst_InstallThread.cpp - 1036
}
02/04 12:19:49-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
CIDLib exception in install thread
}
02/04 12:19:49-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Installation failed, recovering
}
02/04 12:19:49-CQCInst: CQCInst, CQCInstInstallerThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Installation is complete
}
02/04 12:19:49-CQCInst: CQCInst, MainThread, CQCInst_ThisFacility.cpp.357, Status/App Status
{
Waiting for installer thread to stop
}
Thanks
George M
Posts: 40,483
Threads: 491
Joined: Aug 2002
Hmmm... That would seem to indicate it didn't get the new security info repo moved over. You didn't perhaps go up past 914, then go back without doing a restore of that 914 or before content did you?
Dean Roddey
Explorans limites defectum
Posts: 951
Threads: 111
Joined: Jan 2008
(02-06-2021, 11:10 AM)Dean Roddey Wrote: Hmmm... That would seem to indicate it didn't get the new security info repo moved over. You didn't perhaps go up past 914, then go back without doing a restore of that 914 or before content did you? I didn't. I've been on 914 for a while now, and just tried to go to 920.
I didn't need to go to 917 first did I?
Thanks
George M
|