On December 17, 2004 11:18 am, Mike Hearn wrote:
Thanks Mike
On Fri, 17 Dec 2004 10:49:45 -0800, Bill Medland wrote:
Does anyone know anything about this? e.g. when starting a new thread where does the apartment get initialized?
It's supposed to get initialized in the call to CoInitialize[Ex] however the _LocalServerThread never calls this as it's an internal implementation detail of out of process DCOM.
This looks like we haven't got the design quite right here, the LocalServerThread doesn't exist in native DCOM as far as I can tell so it may need to be replaced by something else.
The code in StdMarshalImpl is correct, the problem is that the local server thread is violating the COM laws by using CoMarshalInterface before entering an apartment.
For now, does this patch help?
Well, it gets me past the illegal memory reference; I can start looking at what else failed now.