ActiveX help
Author
Discussion

KITT

Original Poster:

5,345 posts

271 months

Tuesday 7th June 2005
quotequote all
I've written a very basic activeX control in C++ and would like to deploy it via a website.

However, I cannot get it to download and run without Internet Explorer giving this error:

[i]"Your current security settings prohibit running ActiveX controls"[/i]

Now, I know my settings are fine as I've gone to number of website with ActiveX and they work fine. So there must be a problem with mine. I probably need to sign it or something (like with Java applets running outside the sandbox) but can't find any useful websites to help.

Any ideas folks? :)

pdV6

16,442 posts

291 months

Tuesday 7th June 2005
quotequote all
It needs signing first. You'll have to pay for the privelege via one of the security providers such as Thwaite or Verisign.

KITT

Original Poster:

5,345 posts

271 months

Tuesday 7th June 2005
quotequote all
pdV6 said:
It needs signing first. You'll have to pay for the privelege via one of the security providers such as Thwaite or Verisign.
I figured as much. Can I not use a test cerfiticate signed with the ROOT authority?

It works for Java applets, but requires quite a few steps to get a signed JAR and CAB file out of it. I really need a step by step guide for ActiveX controls (OCX file). Any pointers?

pdV6

16,442 posts

291 months

Tuesday 7th June 2005
quotequote all
Not really my field, but can't you fiddle the IE settings to allow it? Not that I use IE very much, but there appear to be a whole raft of settings regarding downloading, installing and running Active-X components, both signed and unsigned.

>> Edited by pdV6 on Tuesday 7th June 10:59

KITT

Original Poster:

5,345 posts

271 months

Tuesday 7th June 2005
quotequote all
pdV6 said:
Not really my field, but can't you fiddle the IE settings to allow it? Not that I use IE very much, but there appear to be a whole raft of settings regarding downloading, installing and running Active-X components, both signed and unsigned.
Not really my field either but I've been asigned to find out!

All my IE settings are fine, so it's definatly to do with how I've signed it. The certificate comes up and IE askes if I want to run it. I say OK, but it then comes up with the error mentioned above

pdV6

16,442 posts

291 months

Tuesday 7th June 2005
quotequote all
Try this maybe?

http://support.microsoft.com/?scid=kb;en-us;836942

{edited to add:} Obviously, substitute appropriate URL(s) for your circumstances...

>> Edited by pdV6 on Tuesday 7th June 11:58

r32

401 posts

282 months

Wednesday 8th June 2005
quotequote all
There is a setting in IEs security settings (click the custom level button) which allows you to run unsigned active x controls. Check this is set to prompt or enabled.

KITT

Original Poster:

5,345 posts

271 months

Thursday 9th June 2005
quotequote all
Thanks chaps, but I'm still struggling. I can get it to work on my machine by pre-registering the contol into the registry. However, I cannot expect end users of the website to do this, so there must be something silly I'm doing wrong.

I'm convinced it's to do with signing, but can't figure it out. Java applets are easy, but this ActiveX stuff had me stumped

I've got a big meeting with some clients in London on Tuesday and have to have this working by then

I've posted on some other newsgroups but no replies yet.

>> Edited by KITT on Thursday 9th June 10:22

pdV6

16,442 posts

291 months

Thursday 9th June 2005
quotequote all
Found the following at www.ssware.com/shcmbbox/faq.htm#usage

Some web page said:

Actually, I won't quote it here, as it includes html that will screw the posting


Looks like the kind of thing you're doing...

rdhawkins

322 posts

313 months

Friday 10th June 2005
quotequote all
Its been a while since a looked at ActiveX but I'm sure I had the same issue as you are having.

I think you have to mark your control as safe for scripting, you can do this by inheriting from certain Com objects.

I think its this one you have to use:

<b>public IObjectSafetyImpl < CCTLAX, INTERFACESAFE_FOR_UNTRUSTED_CALLER></b>