This is because some of the MS Active X controls need a developer license, otherwise the CREATEOBJECT() doesn't work. An easy workaround is to add the Active X to a form or form class and make calls to the Active X controls on this form. The license information is stored in the Registry in this key: HKEY_CLASSES_ROOT\Licenses. It'll probably work fine if you add the license info to your customer's registry. It just takes a little while to identify the correct license code for your the Active X control. Also, it is important to take note of the default value in the HKEY_CLASSES_ROOT\Licenses key:
Licensing: Copying the keys may be a violation of established copyrights.
Read more about it in the MSKB.
INFO: OLE Control Licensing in Visual FoxPro
http://support.microsoft.com/default.aspx?scid=KB;en-us;139154
I ran into a similar problem trying to use MSCOMM32.OCX on a client's machine. I searched for a fix in Microsoft's KB and found Microsoft Knowledge Base Article - 192693. Check it out at http://support.microsoft.com/default.aspx?scid=kb;EN-US;192693. Their suggestion is to subclass the control and instantiate the subclass. Worked for me.
Niciun comentariu:
Trimiteți un comentariu