Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
CommandBars Problem
Message
General information
Forum:
Visual FoxPro
Category:
Third party products
Miscellaneous
Thread ID:
01280511
Message ID:
01283532
Views:
34
This message has been marked as a message which has helped to the initial question of the thread.
Hi Kevin,

Installation of the completed runtime on the end-user machine is not influenced in any way. There's no need to redistribute any additional files or controls as long as the .VCX's of the CommandBars Library are included in the Project. The Library does make use of some external files, but those are self-extracted from the .VCX upon instantiation of the CBM Object. In fact you'll only see those when you closely watch the Temp Directory.

What you do need to do is instantiate a specific PUBLIC MemVar with specific contents before the CBM Object is instantiated. I usually place those statements somewhere at the start of my MAIN.PRG.

Regarding Run-Time distribution issues, I have found just one specific issue with the MoleBox package. I don't know if you use that package at all, but if you do and you protect your application using MoleBox, please don't insert the VFP Runtimes into the package aswell, but redistribute them seperately. This is some issue with the protection scheme used by the CommandBars library.

In my experience, the library is fully compatible with Refox and I currently use that to protect my executable and to dramatically reduce the size of the application.

The only other issue, you need to take care of concerns ActiveX controls and Modal forms. This is not as much a Run-Time issue, but more a general issue for the combination of VFP and the CommandBars library.

What CommandBars basically does is kind of 'hijacking' the HWnd of the FoxPro form. It actually moves and resizes the main 'canvas' of the Form, where VFP renders it's controls. The library then add's four additional regions on the top, bottom and left and right sides of the form, where the library places it's controls. Controls placed in those regions might seem true VFP controls when you use the builders, but they actually are owner-drawn Windows controls that are not really VFP aware. Surrounding these controls there's management code in the library to properly "bind" those controls to the VFP environment.

While in general this "binding" is done correctly, there are some flaws when using ActiveX controls, call Modal forms from other Forms and when using Top-Level Form style forms. What happens is that the Menu Bar or Toolbars of the library remain responsive to user mouse events, even when they shouldn't. Consider a normal form with a CommandBars Menu on it, that calls a Modal form. As long as that Modal sub-form is active, the normal form should be disabled. The form itself is, but the menu remains responsive. There are easy work-arounds for this, but it's something you might run into.
With best regards,

Jan-Peter Groeneweg

BCS International BV
Netherlands
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform