Lisp HUG Maillist Archive

COM:register-server error

Hi

getting closer....

I get the following error in conjunction with COM:REGISTER-SERVER.

> 
> CL-USER 4 > (defvar claxs::*claxs-factory* (com:make-factory-entry
>                                             :clsid (com:make-guid-from-string claxs::+cl-active-scripting-component-uuid+)
>                                             :implementation-name 'claxs::active-script-impl
>                                             :prog-id "CLAXS.1"
>                                             :version-independent-prog-id "CLAXS"))
> CL.ACTIVEX-SCRIPTING::*CLAXS-FACTORY*
> 
> CL-USER 5 > (com:register-class-factory-entry CL.ACTIVEX-SCRIPTING::*CLAXS-FACTORY*)
> (#S(COM::FACTORY-ENTRY COM::CLSID #<REFGUID C107FDEF-4945-4E26-BF72-FC2239719314> COM::IMPLEMENTATION-NAME CL.ACTIVEX-SCRIPTING::ACTIVE-SCRIPT-IMPL COM::CONSTRUCTOR-FUNCTION COM:DEFAULT-COM-IMPLEMENTATION-CONSTRUCTOR COM::CONSTRUCTOR-EXTRA-ARGS (CL.ACTIVEX-SCRIPTING::ACTIVE-SCRIPT-IMPL) COM::FRIENDLY-NAME NIL COM::PROG-ID "CLAXS.1" COM::VERSION-INDEPENDENT-PROG-ID "CLAXS" COM::REGCLS-FLAGS 1))
> 
> CL-USER 6 > (com:register-server :clsctx com:CLSCTX_LOCAL_SERVER)
> 
> Error: Do not know how to convert lisp object NIL to registry value STRING.
>   1 (abort) Return to level 0.
>   2 Return to top loop level 0.
> 
> Type :b for backtrace, :c <option number> to proceed,  or :? for other options
> 
> CL-USER 7 : 1 > :b
> Call to WIN32:SET-REGISTRY-VALUE
> Call to (SETF WIN32:REGISTRY-VALUE)
> Call to (SUBFUNCTION COM::REGISTER COM:REGISTER-SERVER)
> Call to COM::MAP-FACTORY-ENTRIES-WITH-KEYS
> Call to COM:REGISTER-SERVER
> Call to SPECIAL::%EVAL-NOHOOK
> Call to IV:PROCESS-TOP-LEVEL
> Call to CAPI::CAPI-TOP-LEVEL-FUNCTION
> Call to CAPI::INTERACTIVE-PANE-TOP-LOOP
> Call to (SUBFUNCTION 1 MP::INITIALIZE-PROCESS-STACK)
> 
> CL-USER 7 : 1 > :v
> Call to WIN32:SET-REGISTRY-VALUE
>   WIN32::VALUE         : NIL
>   WIN32::SUBKEY        : ""
>   WIN32::VALUE-NAME    : NIL
>   WIN32::ROOT          : 694
>   WIN32::EXPECTED-TYPE : :STRING
>   WIN32::ERRORP        : T
> 
> CL-USER 12 : 1 > 


I suppose this is because of the way I call COM:MAKE-GUID-FROM-STRING.

The value of CLAXS::+cl-active-scripting-component-uuid+
is a string obtained via UUIDGEN.EXE in the MSVC suite.

Any ideas about what is going wrong here?

Thanks

--
Marco Antoniotti





Re: COM:register-server error

Just thinking out loud...

Does it mean that I need to create N factories for each interface that 
my "implementation" (done with COM:DEFINE-COM-AUTOMATION) implements?

Thanks

Marco

PS. Please forgive the extra mess that I may be causing with these 
messages.  I lost all the messages sent to the list since yesterday 
late afternoon.


On Tuesday, Mar 11, 2003, at 17:50 America/New_York, Marco Antoniotti 
wrote:

> Hi
>
> getting closer....
>
> I get the following error in conjunction with COM:REGISTER-SERVER.
>
>> CL-USER 4 > (defvar claxs::*claxs-factory* (com:make-factory-entry
>>                                             :clsid 
>> (com:make-guid-from-string 
>> claxs::+cl-active-scripting-component-uuid+)
>>                                             :implementation-name 
>> 'claxs::active-script-impl
>>                                             :prog-id "CLAXS.1"
>>                                             
>> :version-independent-prog-id "CLAXS"))
>> CL.ACTIVEX-SCRIPTING::*CLAXS-FACTORY*
>> CL-USER 5 > (com:register-class-factory-entry 
>> CL.ACTIVEX-SCRIPTING::*CLAXS-FACTORY*)
>> (#S(COM::FACTORY-ENTRY COM::CLSID #<REFGUID 
>> C107FDEF-4945-4E26-BF72-FC2239719314> COM::IMPLEMENTATION-NAME 
>> CL.ACTIVEX-SCRIPTING::ACTIVE-SCRIPT-IMPL COM::CONSTRUCTOR-FUNCTION 
>> COM:DEFAULT-COM-IMPLEMENTATION-CONSTRUCTOR 
>> COM::CONSTRUCTOR-EXTRA-ARGS 
>> (CL.ACTIVEX-SCRIPTING::ACTIVE-SCRIPT-IMPL) COM::FRIENDLY-NAME NIL 
>> COM::PROG-ID "CLAXS.1" COM::VERSION-INDEPENDENT-PROG-ID "CLAXS" 
>> COM::REGCLS-FLAGS 1))
>> CL-USER 6 > (com:register-server :clsctx com:CLSCTX_LOCAL_SERVER)
>> Error: Do not know how to convert lisp object NIL to registry value 
>> STRING.
>>   1 (abort) Return to level 0.
>>   2 Return to top loop level 0.
>> Type :b for backtrace, :c <option number> to proceed,  or :? for 
>> other options
>> CL-USER 7 : 1 > :b
>> Call to WIN32:SET-REGISTRY-VALUE
>> Call to (SETF WIN32:REGISTRY-VALUE)
>> Call to (SUBFUNCTION COM::REGISTER COM:REGISTER-SERVER)
>> Call to COM::MAP-FACTORY-ENTRIES-WITH-KEYS
>> Call to COM:REGISTER-SERVER
>> Call to SPECIAL::%EVAL-NOHOOK
>> Call to IV:PROCESS-TOP-LEVEL
>> Call to CAPI::CAPI-TOP-LEVEL-FUNCTION
>> Call to CAPI::INTERACTIVE-PANE-TOP-LOOP
>> Call to (SUBFUNCTION 1 MP::INITIALIZE-PROCESS-STACK)
>> CL-USER 7 : 1 > :v
>> Call to WIN32:SET-REGISTRY-VALUE
>>   WIN32::VALUE         : NIL
>>   WIN32::SUBKEY        : ""
>>   WIN32::VALUE-NAME    : NIL
>>   WIN32::ROOT          : 694
>>   WIN32::EXPECTED-TYPE : :STRING
>>   WIN32::ERRORP        : T
>> CL-USER 12 : 1 >
>
>
> I suppose this is because of the way I call COM:MAKE-GUID-FROM-STRING.
>
> The value of CLAXS::+cl-active-scripting-component-uuid+
> is a string obtained via UUIDGEN.EXE in the MSVC suite.
>
> Any ideas about what is going wrong here?
>
> Thanks
>
> --
> Marco Antoniotti
>
>
>
>
--
Marco Antoniotti
NYU Courant Bioinformatics Group		tel. +1 - 212 - 998 3488
715 Broadway 10th FL				fax. +1 - 212 - 998 3484
New York, NY, 10003, U.S.A.


Updated at: 2020-12-10 09:00 UTC