FT_GETE()
Return the entire current environment
──────────────────────────────────────────────────────────────────────────────

Syntax

FT_GETE( [ @<xReceiveVar> ] ) -> nNumStrings

Arguments

<xReceiveVar> is the variable to receive the environment data.

<xReceiveVar> can be a character type variable, in which case
the function will place all environment strings in the variable
separated by carriage return/line feeds (chr 13 + chr(10)).

<xReceiveVar> can be an array type, in which case the function
will place each string in an array element. The array MUST be
declared with the proper number of elements prior to passing it
to the function. This can be done by calling FT_GETE() without
parameters first to get the number of strings in the environment.

Note that the argument MUST be passed by reference. Since arrays
are by nature passed by reference, the "@" symbol is optional when
passing an array.

If no argument is passed, FT_GETE() merely returns the number
of strings in the environment.

Returns

FT_GETE() returns the total number of strings found in the
current program's environment.

Description

This function stores ALL of the current program's environment
variables in either a block of text lines or in an array. It is
useful for looking at the entire environment at once, or recording
a snapshot of it to a file for later inspection, such as when a
program error occurs. If the value of ONE SPECIFIC variable is
desired, use Clipper's built-in GETE() function.

This function uses the undocumented internal variable "_environ",
as well as the functions _strcpy(), _strcat(), and _strlen() from
CLIPPER.LIB

Examples

Get the environment in text form and browse it:

cEnvBlock := ""
nNumStrings := FT_GETE(@cEnvBlock)
@ 0, 0 to MAXROW() - 1, MAXCOL()
@ MAXROW(), 0 say 'Browse strings, press ESC to exit...'
MEMOWRIT(cEnvBlock, 1, 1, MAXROW() - 2,MAXCOL() - 1, .F.)

Get the environment in text form and write it to a file:

cEnvBlock := ""
FT_GETE(@cEnvBlock)
MEMOWRIT("ENVIRON.TXT", cEnvBlock)

Get the environment in Array form:

aEnvArray := ARRAY(FT_GETE())
FT_GETE(aEnvArray)
? aEnvArray[1] // "COMSPEC=C:\COMMAND.COM"
? aEnvArray[2] // "PATH=C:\;C:\DOS;C:\UTIL;C:\CLIP50\BIN"
... etc ...

Source: GETENVRN.C

Author: Rick Whitt