On Wed, Apr 25, 2001 at 10:24:26PM +0200, Juergen Schmied wrote:
My question, is anyone currently working on implementing CLSCTX_LOCAL_SERVER in compobj.c:CoGetClassObject, or have plans to work on this in the near future? If not, I may go back to trying to figure out what is happening with the 'native' configuration.
This will require a lot of work, basically you will need to implement all of the OLE out of process, marshalling, rpc stuff.
This is not a trivial 100 line patch, its more like 20000+ lines.
The CLSCTX_LOCAL_SERVER is used for function calls in another process on the same machine. So you wouldn't need any rpc, and I wouldn't think you would need marshalling .. In the case of InstallShield v6 it isn't really requesting anything from another process. It's requesting an object from an EXE, instead of a DLL.
Ok, not rpc but lpc so we might get along with 10000+ lines. ;-) Mashalling is nessesary in any case since the function calls have to go from one process to an other. The com object in the exe is likely an automation server.
This getes me back to the other part of the question, is anyone currently working on this? I know people at CodeWeavers supposedly were working on getting the various mutations of InstallShield working, this error seems to be pretty common across all InstallSheild v6 based installers I've seen. I had also heard there was progress getting Alice install working at TransGaming, is that InstallSheild v6 based?
Unfortunately I've hit crunch time at work so all non-work related efforts have been paused. Hopefully in a week I'll get back to trying to figure out what was up with the 0x80070008. I think it my just be because I need to use native com dlls as well as the ole ones, but that is pure speculation at this point.
As for doing the 10k+ lines of coding myself, I have experience in (de)marshalling and network coding, spent many years doing it, it's more a matter of available time and learning the com wire protocols, neither of which are currently available to me. Here's to hoping someone is already working on it ;).