Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Parameter Limit in FLL ?
Message
General information
Forum:
Visual FoxPro
Category:
Windows API functions
Miscellaneous
Thread ID:
00463814
Message ID:
00464002
Views:
17
Hi Christopher,

>1. Would a COM server be faster then code in the FLL? This routine is a heavily hit routine, and one of the reasons I am trying to port it to C is for the speed increase.

It depends and you probably should do some testing... IAC, the slowest part is usually the calling part, not the execution of the function itself. Calling a FLL function takes as much time as calling a FoxPro UDF, because internally they are treated very similar. COM can be faster, in some cases, because VFP doesn't have to prepare the VFP environment for a new DO level.

>2. Would a COM server mean writing an Active-X control?

An ActiveX control is a COM-Server, but not every COM server is an ActiveX control.

>3. Where can I find some help on writing a COM server? Is there any online resources/books that deal with this subject from a beginner’s perspective?

There are a lot of resources, too many to name any specific one. It all begins with the question of which tool you use. You can use any language that is avialable in VS. For VC++ there are several different kind of COM server, as well.

>4. Would I still be able to create FoxPro variables "on the fly" from within a COM server?

Not that easily and as seamlessly integrated as the FLL. You must request a reference to the _VFP object as a parameter and the execute the DoCmd() method. This tightly couples your COM server to VFP, of course.

>5. Can I access arrays from within a COM server…

You should be able to access the property arrays. There are some issues, but the COM experts here can probably give you better advice than I can. Accessing a VFP variable array is not possible, unless you are using the technique above.

Christof
--
Christof
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform