[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

microsoft.public.dotnet.framework.interop

Accessing com+ object in a different machine from IIS

ak

7/30/2007 10:56:00 PM

Hi Guys,

I need some help on the topic.

I am trying to access a com+ object located in a physical machine
(let's say machine A). In another physical machine (machine B), I have
a web application running on IIS that will access the com+ object in
machine A. CreateObject() procedure is called from machine B to create
com+ object in the machine A.

I have registered the assembly using regsvr32 <dll file in machine A>
from machine B. However, everytime I run the application, I received
'Cannot Create ActiveX component.

FYI, both machines are running Windows Server 2003.

Any help will be greatly appreciated.

Kind Regards,
Andie

3 Answers

Johannes Passing

7/31/2007 6:29:00 PM

0

Do you refer to COM+ objects written in VB, .Net (ES) or C/C++?
CreateObject sounds like VB. So for VB, first make sure that the DLL or
the TLB is registered on the client machine. Also, you may want to check
what the exact return value of CoCreateInstanceEx (rather than
CreateObject) is (create a test app in C/C++ or check it in the debugger
- CreateObject should finally end up calling CoCreateInstanceEx).
CreateObject wraps several error codes of CoCreateInstanceEx into the
generic 'Cannot Create ActiveX' error, so you may miss the precise error
code here.

--Johannes

ak wrote:
> Hi Guys,
>
> I need some help on the topic.
>
> I am trying to access a com+ object located in a physical machine
> (let's say machine A). In another physical machine (machine B), I have
> a web application running on IIS that will access the com+ object in
> machine A. CreateObject() procedure is called from machine B to create
> com+ object in the machine A.
>
> I have registered the assembly using regsvr32 <dll file in machine A>
> from machine B. However, everytime I run the application, I received
> 'Cannot Create ActiveX component.
>
> FYI, both machines are running Windows Server 2003.
>
> Any help will be greatly appreciated.
>
> Kind Regards,
> Andie
>


--
Johannes Passing - http:...

ak

8/7/2007 6:19:00 AM

0

Hi Johannes,

It is COM+ object written in VB.

I've make sure that the DLL is registered in the client machine. I
created a small test Windows app that will call the CreateObject (e.g.
without going to IIS).

How do you call the CoCreateInstanceEx? I have difficulties finding
references on creating a test app for CoCreateInstanceEx. Will be
great if you have an example how to call it.

Kind Regards,
Andie
On Aug 1, 4:29 am, Johannes Passing
<jpassing_at_hotmail_...@nospam.com> wrote:
> Do you refer to COM+ objects written in VB, .Net (ES) or C/C++?
> CreateObject sounds like VB. So for VB, first make sure that the DLL or
> the TLB is registered on the client machine. Also, you may want to check
> what the exact return value of CoCreateInstanceEx (rather than
> CreateObject) is (create a test app in C/C++ or check it in the debugger
> - CreateObject should finally end up calling CoCreateInstanceEx).
> CreateObject wraps several error codes of CoCreateInstanceEx into the
> generic 'Cannot Create ActiveX' error, so you may miss the precise error
> code here.
>
> --Johannes
>
>
>
> ak wrote:
> > Hi Guys,
>
> > I need some help on the topic.
>
> > I am trying to access a com+ object located in a physical machine
> > (let's say machine A). In another physical machine (machine B), I have
> > a web application running on IIS that will access the com+ object in
> > machine A. CreateObject() procedure is called from machine B to create
> > com+ object in the machine A.
>
> > I have registered the assembly using regsvr32 <dll file in machine A>
> > from machine B. However, everytime I run the application, I received
> > 'Cannot Create ActiveX component.
>
> > FYI, both machines are running Windows Server 2003.
>
> > Any help will be greatly appreciated.
>
> > Kind Regards,
> > Andie
>
> --
> Johannes Passing -http:...


Johannes Passing

8/7/2007 11:16:00 AM

0

Hi Andie,

have a look at http://support.microsoft.com....

--Johannes

ak wrote:
> Hi Johannes,
>
> It is COM+ object written in VB.
>
> I've make sure that the DLL is registered in the client machine. I
> created a small test Windows app that will call the CreateObject (e.g.
> without going to IIS).
>
> How do you call the CoCreateInstanceEx? I have difficulties finding
> references on creating a test app for CoCreateInstanceEx. Will be
> great if you have an example how to call it.
>
> Kind Regards,
> Andie
> On Aug 1, 4:29 am, Johannes Passing
> <jpassing_at_hotmail_...@nospam.com> wrote:
>> Do you refer to COM+ objects written in VB, .Net (ES) or C/C++?
>> CreateObject sounds like VB. So for VB, first make sure that the DLL or
>> the TLB is registered on the client machine. Also, you may want to check
>> what the exact return value of CoCreateInstanceEx (rather than
>> CreateObject) is (create a test app in C/C++ or check it in the debugger
>> - CreateObject should finally end up calling CoCreateInstanceEx).
>> CreateObject wraps several error codes of CoCreateInstanceEx into the
>> generic 'Cannot Create ActiveX' error, so you may miss the precise error
>> code here.
>>
>> --Johannes
>>
>>
>>
>> ak wrote:
>>> Hi Guys,
>>> I need some help on the topic.
>>> I am trying to access a com+ object located in a physical machine
>>> (let's say machine A). In another physical machine (machine B), I have
>>> a web application running on IIS that will access the com+ object in
>>> machine A. CreateObject() procedure is called from machine B to create
>>> com+ object in the machine A.
>>> I have registered the assembly using regsvr32 <dll file in machine A>
>>> from machine B. However, everytime I run the application, I received
>>> 'Cannot Create ActiveX component.
>>> FYI, both machines are running Windows Server 2003.
>>> Any help will be greatly appreciated.
>>> Kind Regards,
>>> Andie
>> --
>> Johannes Passing -http:...
>
>


--
Johannes Passing - http:...