Share via


Passing Parameters to Visual FoxPro API Functions

Often the Visual FoxPro API routines will require parameters of a particular Visual FoxPro data structure. The following sections provide a list of Visual FoxPro data types and additional data structures. For the actual type definitions and structure definitions, refer to the Pro_ext.h file.

Visual FoxPro API Data Types

The following data types are used in Visual FoxPro API routines.

Data type

Description

EDLINE

The number of a line in an open file in an editing window. The first line is 1.

EDPOS

The offset position of a character in an open file in an editing window. The offset position of the first character in the file or memo field is 0.

FCHAN

File channel. Every file opened by Visual FoxPro, or through the API by using _FCreate( ) and _FOpen( ), is assigned an FCHAN.

FPFI

A 32-bit pointer to a function returning an integer.

ITEMID

A unique identifier assigned to a single command on a menu.

MENUID

A unique identifier assigned to a menu.

MHANDLE

A unique identifier given to every block of memory allocated by Visual FoxPro, or allocated through the API using _AllocHand( ). It can be de-referenced to its pointer using _HandToPtr( ).

NTI

Name table index. Every variable and table field's name has an entry in this table.

WHANDLE

Window handle. A unique identifier assigned to every window opened by Visual FoxPro, or opened through the API using _WOpen( ).

Note

Because FAR pointers are not appropriate for 32-bit compilers, #define statements in Pro_ext.h redefine FAR, _far, and __far as null values.

Visual FoxPro API Data Structures

The primary data structures used in the Visual FoxPro API library are listed in the following table.

Structure

Description

EventRec

A structure used to describe what the system is doing at a given time.

FoxInfo

Used in FLL libraries for communicating between Visual FoxPro and your program; not used in .ocx files.

FoxTable

Used in FLL libraries for communicating between Visual FoxPro and your program; not used in .ocx files.

Locator

A structure used to access parameter values (FLL) or Visual FoxPro variables or fields (FLL and ocx).

ParamBlk

Used in FLL libraries for communicating between Visual FoxPro and your program; not used in .ocx files.

Parameter

Used in FLL libraries for communicating between Visual FoxPro and your program; not used in .ocx files.

Point

A structure that defines the horizontal and vertical coordinates of a single point on the screen. Coordinates are specified in rows and columns.

Rect

A structure that defines the coordinates of a rectangle on the screen. The upper-left corner of the rectangle is defined by (top,left) and the lower-right corner is defined by (bottom-1,right-1). Coordinates are specified in rows and columns.

Value

A structure used to access parameter values (FLL) or Visual FoxPro variables or fields (FLL and OCX).

See Also

Tasks

How to: Return Values from ActiveX Controls and FLL Libraries

How to: Manage Memory

Concepts

Access to Visual FoxPro Variables and Fields

Other Resources

Accessing the Visual FoxPro API

Extending Visual FoxPro with External Libraries

API Library Construction