dcom active x dll problem 
Author Message
 dcom active x dll problem

I created a dll on a remote server using the remote server option in the
properties and then I register it on the remote server.  This dll was a dcom
test so the only thing I tried to do is return a string from it.

I then created a local dll on a different server that would be called by my
asp to return the value,  this dll included a reference to the remote dll on
the other server. This dll was registered also.

All of this will run fin and return info using a vb form to trigger data
return but when I use the asp, a createobject of the local dll is successful
but as soon as it tries to do a createobject of the dll on the other server
within it, it fails with a "Microsoft VBScript runtime error '800a01ad'

ActiveX component can't create object "

I have designed stand alone components, but the were always .exe's

What am I doing wrong or forgetting to do?

Thanks in advance



Sun, 31 Aug 2003 04:05:49 GMT  
 dcom active x dll problem
You didn't mention if you are using MTS or COM+.  If you are NOT, then this
will not work.  You would have to create an ActiveX exe.  This is because
dll's run in another process' context & memory.

Brian Griffin


Quote:
> I created a dll on a remote server using the remote server option in the
> properties and then I register it on the remote server.  This dll was a
dcom
> test so the only thing I tried to do is return a string from it.

> I then created a local dll on a different server that would be called by
my
> asp to return the value,  this dll included a reference to the remote dll
on
> the other server. This dll was registered also.

> All of this will run fin and return info using a vb form to trigger data
> return but when I use the asp, a createobject of the local dll is
successful
> but as soon as it tries to do a createobject of the dll on the other
server
> within it, it fails with a "Microsoft VBScript runtime error '800a01ad'

> ActiveX component can't create object "

> I have designed stand alone components, but the were always .exe's

> What am I doing wrong or forgetting to do?

> Thanks in advance



Sun, 31 Aug 2003 04:19:16 GMT  
 dcom active x dll problem
I have done this before without MTS or COM+ but it has been a few years and
I do not recall what I did to make it work.


Quote:
> You didn't mention if you are using MTS or COM+.  If you are NOT, then
this
> will not work.  You would have to create an ActiveX exe.  This is because
> dll's run in another process' context & memory.

> Brian Griffin



> > I created a dll on a remote server using the remote server option in the
> > properties and then I register it on the remote server.  This dll was a
> dcom
> > test so the only thing I tried to do is return a string from it.

> > I then created a local dll on a different server that would be called by
> my
> > asp to return the value,  this dll included a reference to the remote
dll
> on
> > the other server. This dll was registered also.

> > All of this will run fin and return info using a vb form to trigger data
> > return but when I use the asp, a createobject of the local dll is
> successful
> > but as soon as it tries to do a createobject of the dll on the other
> server
> > within it, it fails with a "Microsoft VBScript runtime error '800a01ad'

> > ActiveX component can't create object "

> > I have designed stand alone components, but the were always .exe's

> > What am I doing wrong or forgetting to do?

> > Thanks in advance



Sun, 31 Aug 2003 05:22:02 GMT  
 dcom active x dll problem
There is an article in MSDN that might be worthwhile checking out:

      PRB: ASP Returns VBScript Runtime Error '800a01ad'

ID: Q194801


Quote:
> I created a dll on a remote server using the remote server option in the
> properties and then I register it on the remote server.  This dll was a
dcom
> test so the only thing I tried to do is return a string from it.

> I then created a local dll on a different server that would be called by
my
> asp to return the value,  this dll included a reference to the remote dll
on
> the other server. This dll was registered also.

> All of this will run fin and return info using a vb form to trigger data
> return but when I use the asp, a createobject of the local dll is
successful
> but as soon as it tries to do a createobject of the dll on the other
server
> within it, it fails with a "Microsoft VBScript runtime error '800a01ad'

> ActiveX component can't create object "

> I have designed stand alone components, but the were always .exe's

> What am I doing wrong or forgetting to do?

> Thanks in advance



Sun, 31 Aug 2003 17:01:38 GMT  
 dcom active x dll problem
I think you might have missed the key statement here:

Quote:
>> a createobject of the local dll is successful

but as soon as it tries to do a createobject of the dll on the other server
within it, it fails with a "Microsoft VBScript runtime error '800a01ad' <<

The article you supplied deals with a locally deployed ActiveX dll.

The key info here is that the poster is trying to instantiate an ActiveX
object from an ActiveX dll on another machine via DCOM.  Based on these
facts I would say "Well of course it doesn't work!".  The reason being that
is not possible unless the ActiveX dll is running within MTS, COM+, or some
other COM object broker service.  ActiveX dll's have NO ability to create
their own process space.  This is the very reason that we need ActiveX
exe's.  The exe provides the process space and security context for the
component.

If the component must be a dll, the component will either have to be located
locally on any machine that will need it, or it will need to be migrated to
MTS/COM+.  If MTS/COM+ is not an option AND the component must reside on a
separate machine, the poster will have to implement as an ActiveX EXE.

The poster has already responded to my original response and is adamant that
they have accessed an ActiveX dll via DCOM some three years ago with no MTS
in the mix.  The poster is apparently mistaken, as this goes against all the
principals of COM & DCOM.

Brian Griffin


Quote:
> There is an article in MSDN that might be worthwhile checking out:

>       PRB: ASP Returns VBScript Runtime Error '800a01ad'

> ID: Q194801



> > I created a dll on a remote server using the remote server option in the
> > properties and then I register it on the remote server.  This dll was a
> dcom
> > test so the only thing I tried to do is return a string from it.

> > I then created a local dll on a different server that would be called by
> my
> > asp to return the value,  this dll included a reference to the remote
dll
> on
> > the other server. This dll was registered also.

> > All of this will run fin and return info using a vb form to trigger data
> > return but when I use the asp, a createobject of the local dll is
> successful
> > but as soon as it tries to do a createobject of the dll on the other
> server
> > within it, it fails with a "Microsoft VBScript runtime error '800a01ad'

> > ActiveX component can't create object "

> > I have designed stand alone components, but the were always .exe's

> > What am I doing wrong or forgetting to do?

> > Thanks in advance



Sun, 31 Aug 2003 23:21:47 GMT  
 dcom active x dll problem
Precisely.

However as I pointed out, you are not directly accessing the dll.
dllhost.exe provides the process and security context for the dll.

Brian Griffin



Quote:
> You can specify somewhere (on remote pc) to run ActiveX DLL under a
> Dllhost.exe. MTS is one of the host.
> Careful with passing arrays from out of process dll.



> > I think you might have missed the key statement here:

> > >> a createobject of the local dll is successful
> > but as soon as it tries to do a createobject of the dll on the other
> server
> > within it, it fails with a "Microsoft VBScript runtime error '800a01ad'
<<

> > The article you supplied deals with a locally deployed ActiveX dll.

> > The key info here is that the poster is trying to instantiate an ActiveX
> > object from an ActiveX dll on another machine via DCOM.  Based on these
> > facts I would say "Well of course it doesn't work!".  The reason being
> that
> > is not possible unless the ActiveX dll is running within MTS, COM+, or
> some
> > other COM object broker service.  ActiveX dll's have NO ability to
create
> > their own process space.  This is the very reason that we need ActiveX
> > exe's.  The exe provides the process space and security context for the
> > component.

> > If the component must be a dll, the component will either have to be
> located
> > locally on any machine that will need it, or it will need to be migrated
> to
> > MTS/COM+.  If MTS/COM+ is not an option AND the component must reside on
a
> > separate machine, the poster will have to implement as an ActiveX EXE.

> > The poster has already responded to my original response and is adamant
> that
> > they have accessed an ActiveX dll via DCOM some three years ago with no
> MTS
> > in the mix.  The poster is apparently mistaken, as this goes against all
> the
> > principals of COM & DCOM.

> > Brian Griffin



> > > There is an article in MSDN that might be worthwhile checking out:

> > >       PRB: ASP Returns VBScript Runtime Error '800a01ad'

> > > ID: Q194801



> > > > I created a dll on a remote server using the remote server option in
> the
> > > > properties and then I register it on the remote server.  This dll
was
> a
> > > dcom
> > > > test so the only thing I tried to do is return a string from it.

> > > > I then created a local dll on a different server that would be
called
> by
> > > my
> > > > asp to return the value,  this dll included a reference to the
remote
> > dll
> > > on
> > > > the other server. This dll was registered also.

> > > > All of this will run fin and return info using a vb form to trigger
> data
> > > > return but when I use the asp, a createobject of the local dll is
> > > successful
> > > > but as soon as it tries to do a createobject of the dll on the other
> > > server
> > > > within it, it fails with a "Microsoft VBScript runtime error
> '800a01ad'

> > > > ActiveX component can't create object "

> > > > I have designed stand alone components, but the were always .exe's

> > > > What am I doing wrong or forgetting to do?

> > > > Thanks in advance



Tue, 02 Sep 2003 23:56:31 GMT  
 dcom active x dll problem
You can specify somewhere (on remote pc) to run ActiveX DLL under a
Dllhost.exe. MTS is one of the host.
Careful with passing arrays from out of process dll.


Quote:
> I think you might have missed the key statement here:

> >> a createobject of the local dll is successful
> but as soon as it tries to do a createobject of the dll on the other
server
> within it, it fails with a "Microsoft VBScript runtime error '800a01ad' <<

> The article you supplied deals with a locally deployed ActiveX dll.

> The key info here is that the poster is trying to instantiate an ActiveX
> object from an ActiveX dll on another machine via DCOM.  Based on these
> facts I would say "Well of course it doesn't work!".  The reason being
that
> is not possible unless the ActiveX dll is running within MTS, COM+, or
some
> other COM object broker service.  ActiveX dll's have NO ability to create
> their own process space.  This is the very reason that we need ActiveX
> exe's.  The exe provides the process space and security context for the
> component.

> If the component must be a dll, the component will either have to be
located
> locally on any machine that will need it, or it will need to be migrated
to
> MTS/COM+.  If MTS/COM+ is not an option AND the component must reside on a
> separate machine, the poster will have to implement as an ActiveX EXE.

> The poster has already responded to my original response and is adamant
that
> they have accessed an ActiveX dll via DCOM some three years ago with no
MTS
> in the mix.  The poster is apparently mistaken, as this goes against all
the
> principals of COM & DCOM.

> Brian Griffin



> > There is an article in MSDN that might be worthwhile checking out:

> >       PRB: ASP Returns VBScript Runtime Error '800a01ad'

> > ID: Q194801



> > > I created a dll on a remote server using the remote server option in
the
> > > properties and then I register it on the remote server.  This dll was
a
> > dcom
> > > test so the only thing I tried to do is return a string from it.

> > > I then created a local dll on a different server that would be called
by
> > my
> > > asp to return the value,  this dll included a reference to the remote
> dll
> > on
> > > the other server. This dll was registered also.

> > > All of this will run fin and return info using a vb form to trigger
data
> > > return but when I use the asp, a createobject of the local dll is
> > successful
> > > but as soon as it tries to do a createobject of the dll on the other
> > server
> > > within it, it fails with a "Microsoft VBScript runtime error
'800a01ad'

> > > ActiveX component can't create object "

> > > I have designed stand alone components, but the were always .exe's

> > > What am I doing wrong or forgetting to do?

> > > Thanks in advance



Mon, 01 Sep 2003 16:22:24 GMT  
 
 [ 7 post ] 

 Relevant Pages 

1. active x dll + dcom + client program

2. Problem accessing remote DLL using RDS and DCOM

3. Userdoc - Active X EXE as apposed to Active X DLL

4. Userdoc - Active X EXE as apposed to Active X DLL

5. Userdoc - Active X EXE as apposed to Active X DLL

6. Active connection occurs problem (asp, vb dll , Oracle) but no error message to be raised

7. memory problems with active dll and ocx

8. Problem Adding Form to Active X DLL

9. DCOM, DCOM , DCOM!!!

10. active-X DLL - Helpfile not found using the compiled dll

11. Problems building install file - AutPrx32.dll, AutMgr32.dll, RACMGR32.dll, CLIREG32.exe NOT FOUND

12. DCOM, Remote Automation Setup (VB Bug: AutPrx32.dll???)

 

 
Powered by phpBB® Forum Software