Return the entire current environment


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


     <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.


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


     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


     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 := ""
        MEMOWRIT("ENVIRON.TXT", cEnvBlock)

     Get the environment in Array form:

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


 Author: Rick Whitt