ASP and ActiveX control client side - 101

S

Stephanie Stowe

Hi. I have never worked on a project that requires IE. So I have done the
vast majority of my work server side, delivering cross-browser compliant
HTML to the client. I am working on a bug fix to a system that is a munch of
ASP, ASP.NET with hard-core client side JScript, VBScript (client-side) and
ActiveX controls. The problem in question involves functionality that is
common to an ActiveX control delivered to the client. I have never
understood how the ActiveX control gets delivered to the client from the
server. So I came here to you helpful folks.

Let's say I have an ASP project that contains an ActiveX control. What do I
put on the server to ensure the control gets downloaded? A CAB file for the
control? How does the server deliver the control to the client? What could
prevent the control from making it to the client?

I do not even know for sure if these questions make sense. The weird thing
is that if a client hits the page which uses the control from one web
*server* it works fine. When the same client hits the same page on a
different server, they get an error that the Object doesn't support this
property or method. It is clearly a client-side VBScript error.

So if you have an app that is sitting on several servers behind a load
balancer, what signature is required on the control to tell the client that
it is the same one?

Anyway, I am fumbling a little, but sometimes when I ramble, someone has
some pointers to give me a push into directions to look at. The code on the
servers is the same. I checked that.

Thanks for your help.

S
 
T

Tom Kaminski [MVP]

Stephanie Stowe said:
Hi. I have never worked on a project that requires IE. So I have done the
vast majority of my work server side, delivering cross-browser compliant
HTML to the client. I am working on a bug fix to a system that is a munch
of
ASP, ASP.NET with hard-core client side JScript, VBScript (client-side)
and
ActiveX controls. The problem in question involves functionality that is
common to an ActiveX control delivered to the client. I have never
understood how the ActiveX control gets delivered to the client from the
server. So I came here to you helpful folks.

Let's say I have an ASP project that contains an ActiveX control. What do
I
put on the server to ensure the control gets downloaded? A CAB file for
the
control? How does the server deliver the control to the client? What could
prevent the control from making it to the client?

A CAB or the OCX. You reference it with the codebase property so the client
knows where to get it.
I do not even know for sure if these questions make sense. The weird thing
is that if a client hits the page which uses the control from one web
*server* it works fine. When the same client hits the same page on a
different server, they get an error that the Object doesn't support this
property or method. It is clearly a client-side VBScript error.

So if you have an app that is sitting on several servers behind a load
balancer, what signature is required on the control to tell the client
that
it is the same one?

It's the control's version number - that should be included as part of the
codebase in your client-side code for the object. The client looks at the
version installed versus what the code says.
Anyway, I am fumbling a little, but sometimes when I ramble, someone has
some pointers to give me a push into directions to look at. The code on
the
servers is the same. I checked that.

Here's an example:

<OBJECT id=control1 name=control1
codeBase=http://server/controls/control.cab#Version=2,6,3,2 >

--
Tom Kaminski IIS MVP
http://www.microsoft.com/windowsserver2003/community/centers/iis/
http://mvp.support.microsoft.com/
http://www.iisfaq.com/
http://www.iistoolshed.com/ - tools, scripts, and utilities for running IIS
http://www.tryiis.com
 
S

Stephanie Stowe

Tom Kaminski said:
A CAB or the OCX. You reference it with the codebase property so the client
knows where to get it.


It's the control's version number - that should be included as part of the
codebase in your client-side code for the object. The client looks at the
version installed versus what the code says.


Here's an example:

<OBJECT id=control1 name=control1
codeBase=http://server/controls/control.cab#Version=2,6,3,2 >


Sweet. Thanks.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top