I have written a basic activex and after creating a CAB file, it loads fine. As soon as I add a PARAM tag in the HTML file to load in a value to a property, it says the activex may be unsafe and asks if I want to continue with interacting. I say Yes and nothing comes up. I say no and it loads but not the property value I passed in.
I am using VB 6.0 SP6 so it has the fix with the registry setting and the safe script mode. I have my security settings to the lowest. Has anyone seen this before? I have been searching on here forever reading all replies and nothing helps.
I have had a problem where I add a PARAM tag to my OBJECT tag and then the control doesn't show up. To fix this I added WIDTH and HEIGHT tags to the OBJECT tag and then the control showed up.
Dunno if this will fix your problem.
On the other hand, do you have any idea how to read the value of a PARAM tag from an ActiveX control? I am going mental over trying to figure this out.
I have had a problem where I add a PARAM tag to my OBJECT tag and then the control doesn't show up. To fix this I added WIDTH and HEIGHT tags to the OBJECT tag and then the control showed up.
Dunno if this will fix your problem.
On the other hand, do you have any idea how to read the value of a PARAM tag from an ActiveX control? I am going mental over trying to figure this out.
Did you ever get this straightened out? I am going mental too.
Thank you Greg, for following up with me. Looks like the Read_PropertyBag was all I was missing, now I have my clients happily using my ActiveX Control (XP SP2 was not too cooperative). I'm not sure the Write_PropertyBag does anything in this context.
One problem is baffling me, though... Once a client has loaded the web page, and used my control, I cannot get that client to ever "upgrade" to a newer version of the same control.
The only way I can do it is by renaming the control. You know what I'm trying to say? Let me know if you have a good solution to this problem.
Its simple to upgrade to a newer version of the control...
In the VB6 Project properties dialog, select the MAKE tag. There you can set the version number of your control... Compile it now with the new version number and overwrite your old control on the web server.
Then, make sure you also update your HTML page so the OBJECT tag calling your control looks for the new version..
Set the version number as you have set it in VB6. Then when somebody comes to your web page, the browser will ask them if they want to download the new control.
Its simple to upgrade to a newer version of the control...
In the VB6 Project properties dialog, select the MAKE tag. There you can set the version number of your control... Compile it now with the new version number and overwrite your old control on the web server.
Then, make sure you also update your HTML page so the OBJECT tag calling your control looks for the new version..
Set the version number as you have set it in VB6. Then when somebody comes to your web page, the browser will ask them if they want to download the new control.
Actually I have tried that and that doesn't work. I can upload my project to prove it. In the HTML, I specify the new version as you describe. I have binary compatibility set up, so the CLSID is the same. Ieven delete all offline content in IE. I still get the old version.
OK, there is this .BAT file that gets generated when you use P&D Wizard. I have been using that .BAT file to re-generate the new .CAB, assuming the new version of the project would be contained within that new .CAB.
Apparently, that was an incorrect assumption. I used the P&D Wizard to re-build the .CAB with the new version of the project, and it specificalyt asked me if I wanted to use the new, or the old version.
I chose the new version, of course, and now the new .CAB produces the new version of the ActiveX control in my client's browser.
Thanks for all your help! If I had started this thread, I would mark it resolved
Too bad I'm getting all this working just when .NET is making it all obsolete....
Hee hee, well I guess ActiveX controls will be around for quite a while stilll until absolutely everybody has the .NET framework installed on their home PC!
I mean, cmon, how many people are going to download a 23mb file just to view your web page control?
Originally posted by greg_quinn Hee hee, well I guess ActiveX controls will be around for quite a while stilll until absolutely everybody has the .NET framework installed on their home PC!
I mean, cmon, how many people are going to download a 23mb file just to view your web page control?
You don't need the .NET framework on your PC to view an ASP.NET control on a web page. They are rendered as HTML, so all you need is a browser.
So, ActiveX controls will be around until absolutely every VB6er moves to .NET!
Originally posted by mendhak You don't need the .NET framework on your PC to view an ASP.NET control on a web page. They are rendered as HTML, so all you need is a browser.
So, ActiveX controls will be around until absolutely every VB6er moves to .NET!
Uhhh... We're not talking about rendered HTML pages/components. Rather, we're talking about actual COM components executing on the client side, inside the browser.
I'm not even sure a .NET equivalent exists to replace these client-side COM components we create...
If so, then, yes, they will need to download the .NET framework to use them.
I agree, this will remain an obstacle for a few years.
There is an equivalent, they are called Windows Form controls and can be placed in the browser like ActiveX controls were.
it is not called an asp.net control, it is the same as ACtiveX, in the sense that you get Windows App like functionality in a web page, but it is in .NET. This is where you need the .NET framework to run it, since it is a 'Windows App'