INF: Initializing the Graphics Library from an Application

ID Number: Q70787

6.00 6.00a 6.00ax 7.00 | 6.00 6.00a

MS-DOS | OS/2

Summary:

In Microsoft C versions 6.0, 6.0a, 6.0ax, and 7.0, it is sometimes

necessary to explicitly initialize or reinitialize the C run-time

graphics library from an application program. The following are two

situations where this procedure is necessary:

- A user of the your application shells out and changes to another

monitor (on a dual-monitor system). When the user returns to the

application, you need to reinitialize the library to take into

account the characteristics of the new monitor.

- In the CDLLOBJS.LIB run-time model (that is, C run time in a DLL),

GRTEXTP.OBJ doesn't get initialized and doesn't work properly. This

is a known limitation, but it would be nice if you could make it

work by explicitly initializing it at the beginning of your

program.

In both of these cases, a call to the undocumented function _QCGINIT()

resolves the problem because this initializes the graphics

library. This function exists in C versions 6.00, 6.00a, 6.00ax, and

7.0, and QuickC versions 2.00, 2.01, 2.50, and 2.51.

_QCGINIT() is prototyped as follows:

void _far _cdecl _QCGINIT(void);

Note: _QCGINIT() is an undocumented function that may or may not be

included in subsequent releases of the graphics library. Please keep

this in mind when writing code to take advantage of this function.

Microsoft makes no claims and offers no promises regarding this

function in the areas of performance, reliability, future

availability, or customer support.

Additional reference words: 2.00 2.50 6.00 6.00a 6.00ax 7.00 qcginit