Welcome to the SRP Forum! Please refer to the SRP Forum FAQ post if you have any questions regarding how the forum works.
SRP_COM vs OI com programming
We experience OI crashes every now and then.
We read that OI com programming is partly responsible for those crashes.
Is the use of SRP_COM a good practice to avoid crashes?
In our srp_editor, when we use SRP_COM, more services popup then there are service documented on your wiki pages.
Are those extra services documented somewhere?
Regards
Ed Keeman
We read that OI com programming is partly responsible for those crashes.
Is the use of SRP_COM a good practice to avoid crashes?
In our srp_editor, when we use SRP_COM, more services popup then there are service documented on your wiki pages.
Are those extra services documented somewhere?
Regards
Ed Keeman
Comments
Can you provide a list of those services you are seeing which aren't documented in the Wiki? It is possible these are internal services that are not meant to be exposed, but our service logic would catalog them anyway so that could be why you are seeing them.
GETAXOBJECT
HASERROR
SET_REF
I think that GETAXOBJECT = GetActiveXObject.
In VB I wrote my own com-dll to connect to already running classes, so we can connect to running Excel, Word etc applications. Maybe you can do this also with SRP_COM in the next release :)
It can connect to an already running class, if the class isn't running it createss one.
In vb I use GetObject and CreateObject to do the trick.
Regards,
Ed Keeman
Is it faster?
Just a point of clarification, that thread and my references to "COM" was in the context of ActiveX (i.e., OLE, which is a visual wrapper around COM). I have no reason to suspect that the Basic+ COM libraries (i.e., OLECreateInstance, OLECallMethod, OLEGetProperty, OLEPutProperty, etc.) have ever caused OI to crashed when used properly. Therefore, I think you might have gotten confused and are looking for culprits when there are likely to be none.
You're right, I was suspecting the COM programming to be a reason for unexplained crashes.
So that leaves all our beautifull SRP conrtrols maybe to be the cause. Have to look in replacing the ALL_OLES switch.
Regards
Ed
If we know what conditions can cause the crash, we'll do everything we can to workaround it even if the problem isn't really ours. We just want systems to run without falling over.
Don't forget to answer about the undocumented Services in SRP_COM and my question about GetObject/CreateObject.
Regards,
Ed
As for connecting to running applications, that is handled on the side of the COM API in question, thus SRP_COM's CREATE method should be all that is needed. The MS Office Automation objects are always created because you are creating an object that will access Word--you are not creating an instance of Word. The Automation object, once created, then allows you to decide if you are going to access a running instance of Word or generate a new instance. If SRP_COM's CREATE service is not working for you for some reason, let me know and I can investigate.