FOPEN() 
 Abre un fichero binario
------------------------------------------------------------------------------
 Sintaxis

     FOPEN(<cFichero>, [<nModo>]) --> nManejador

 Argumentos

     <cFichero> es el nombre del fichero que se va a abrir incluyendo la
     vía, si existe.

     <nModo> es el modo de apertura del DOS solicitado, que indica cómo
     puede accederse al fichero abierto. El modo de apertura se compone de
     elementos de los dos tipos de modos que se describen en las tablas que
     aparecen más adelante. Si únicamente se utiliza el modo de acceso, el
     fichero se abre como no compartido. El modo de apertura por defecto es
     cero, lo que indica no compartido y sólo de lectura.

     Modos de Acceso FOPEN()
     ------------------------------------------------------------------------
     Modo          Fileio.ch      Operación
     ------------------------------------------------------------------------
     0             FO_READ        Abierto para lectura (por defecto)
     1             FO_WRITE       Abierto para escritura
     2             FO_READWRITE   Abierto para lectura o escritura
     ------------------------------------------------------------------------

     Los modos de utilización compartida determinan cómo pueden acceder
     otros procesos al fichero.

     Modos de Utilización Compartida FOPEN()
     ------------------------------------------------------------------------
     Modo          Fileio.ch      Operación
     ------------------------------------------------------------------------
     0             FO_COMPAT      Modo de compatibilidad (por defecto)
     16            FO_EXCLUSIVE   Uso exclusivo
     32            FO_DENYWRITE   Evita que otros escriban
     48            FO_DENYREAD    Evita que otros lean
     64            FO_DENYNONE    Permite que otros lean y escriban
     64            FO_SHARED      Igual que FO_DENYNONE
     ------------------------------------------------------------------------

     Los modos de acceso en combinación (+) con los modos compartidos
     determinan la accesibilidad del fichero en un entorno de red.

 Devuelve

     FOPEN() devuelve el manejador del fichero abierto en el rango 0-65.535.
     Si se produce un error, FOPEN() devuelve -1.

 Descripción

     FOPEN() es una función de fichero de bajo nivel, que abre un fichero
     binario existente para lectura y escritura, según el argumento <nModo>.
     Siempre que exista un error de apertura, FERROR() devuelve el número de
     error del DOS. Por ejemplo, si el fichero no existe, FOPEN() devuelve
     -1 y FERROR() devuelve 2 para indicar que no se ha localizado el
     fichero. Consulte FERROR() para obtener una lista completa de números
     de error.

     Si el fichero especificado se abre de forma satisfactoria, el valor
     devuelto es el manejador del DOS para el fichero. Este valor es similar
     a un alias en el sistema de base de datos y es necesario para
     identificar el fichero abierto para otras funciones de fichero. Por lo
     tanto, es importante asignar el valor de retorno a una variable para su
     utilización posterior, tal como se muestra en el ejemplo que aparece
     más adelante.

      ¡Advertencia! Esta función permite el acceso de bajo nivel a los
     ficheros y dispositivos del DOS. Debe utilizarse con gran precaución y
     requiere un conocimiento profundo del sistema operativo.

 Notas

     ■ Acceso a ficheros en otros directorios: FOPEN() no actúa según
        los valores de SET DEFAULT ni SET PATH. En su lugar, busca en el
        directorio y vía actual del DOS, a menos que se establezca una vía,
        de forma explícita, como parte del argumento <cFichero>.

 Ejemplos

      Este ejemplo utiliza FOPEN() para abrir un fichero en modo
        compartible de lectura/escritura y muestra un mensaje de error si
        falla la apertura:

        #include "Fileio.ch"
        //
        nManejador := FOPEN("Temp.txt", FO_READWRITE + FO_SHARED)
        IF FERROR() != 0
           ? "No se puede abrir el fichero, error DOS ", FERROR()
           BREAK
        ENDIF

 Ficheros   La biblioteca asociada es CLIPPER.LIB,
            el fichero de cabecera asociado es Fileio.ch.

 To download this example - click here.

See Also: FCLOSE() FCREATE() FERROR()