Using Python to call a DCOM server - "'Class not registered"

Thomas Jensen spam at ob_scure.dk
Sat Sep 7 10:55:21 EDT 2002


Mark Hammond wrote:
> Thomas Jensen wrote:

[snip - example of not working DCOM]

> Are you sure that the COM object you are using is correctly registered 
> for use as a DCOM server.  The code above insists that the COM object be 
> registered as LocalServer - ie, other than just InprocServer32.

I fought with this 'till 5 AM this morning (0300 CET) and finally got it 
working.
You are absolutely right! The components are made in VB6 (NOT my 
prefered language, but hey - I gotta make a living :-). I don't really 
know very much about the technicalities of COM (or DCOM for that 
matter), but when I saw how simple the testDCOM.py script was, I thought 
I'd give it a try :-)
I don't really know what the relation between an InprocServer32 and a 
LocalServer is, but I somehow figured out, that by changing the project 
type from "ActiveX DLL" to "ActiveX EXE", the component showed up in 
dcomcnfg.exe allowing me to finally get it working!

Now I just need to figure out how to unregister this new .EXE beast 
("regsvr32 /u" doesn't seem to work).

Is it safe to say that "ActiveX DLL" = InprocServer32 and "ActiveX EXE" 
= LocalServer and that I need the later to use DCOM? (I have some 
existing components that I'd rather keep as DLL - don't know why really? :-)

Anyhow, thanks alot for the reply and not least	for the great win32 package!


-- 
Best Regards
Thomas Jensen
(remove underscore in email address to mail me)




More information about the Python-list mailing list