Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
OLE problems
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Classes - VCX
Titre:
Divers
Thread ID:
00123030
Message ID:
00132715
Vues:
27
>George -
>
>Thanks for the advice.
>
>I found another thread from June where you discussed versions of the control causing you a problem and GPF when you try to access the Printer tab of the control property sheet. I am getting that as well, so perhaps that is part of my problem.
>
>So I have 3 questions: 1) How do I check which version of the control I have, and more important, get the correct one if needed? 2) Assuming I still have problems accessing the property sheet in design mode, how do you even know what they are to change them programmatically if you can't see them? 3) Is this one of those controls where you have to be concerned about licensing issues on other machines (i.e. I've got the VFP license, but am I going to have a problem with this control generating an error on my users' computers?
>
Hi Sylvia,

First, to check which version of the control you have you have to locate it in your system directory. Then you can either right click the OCX file in the Windows Explorer, choose Properties, then the Version tab; or pass the fully qualified file name to the foxtools GetFileVersion() function, passing a 12 element array. (= GetFileVersion(@a_info, filename)). The version number will be in the 4th element of the array. I mention this latter solution because doing this programmatically would be faster.

The problem here, though, is that there's no way to check the version of the control that you've already used. If you've got a control that's giving you problems, I'd first check the current one by creating a new subclass or dropping it on a form of the current one. If that doesn't give you problems, then you know you've got a version problem with the other one. One fix might be to, first open the file (class or form) as a table, find the record with the control copy the OLE memo field from it into the clipboard and repeat the process paste it into the corresponding record for the control causing trouble. I've heard that this works, but I've never done it myself. It's quite possible, however, that this procedure could be programmatically automated.

Second, the help file should provide you the answers regarding the properties. Further, there are the friendly folks here at the UT to answer any questions you might have about them.

Third, I had this happen to me once. I'd upgraded a control, turned the application over to an installed user to find that, whoops, no longer worked. The solution was surprisingly simple. I simply had her copy the new control into her system directory, and it was fixed. No licensing problems, and she didn't have to re-register the control. I say surprisingly because my own experience indicated that the control at least would have had to be re-registered, but it didn't.

If you have any more questions, just give me a shout (not literally, of course :-)).
George

Ubi caritas et amor, deus ibi est
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform