Exportar (0) Imprimir
Expandir todo
div
EOF
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_fullpath, _wfullpath

Crea un valor absoluto o un nombre de ruta de acceso completa para el nombre de ruta de acceso relativa especificado.

char *_fullpath( 
   char *absPath,
   const char *relPath,
   size_t maxLength 
);
wchar_t *_wfullpath( 
   wchar_t *absPath,
   const wchar_t *relPath,
   size_t maxLength 
);

absPath

Puntero a un búfer que contiene el valor absoluto o la ruta de acceso completa, o NULL.

relPath

Nombre de la ruta de acceso relativa.

maxLength

Longitud máxima del búfer del nombre de ruta de acceso absoluta (absPath). Esta longitud está en bytes para _fullpath pero en caracteres anchos (wchar_t) para _wfullpath.

Cada una de estas funciones devuelve un puntero a un búfer que contiene el nombre de ruta de acceso absoluta (absPath). Si hay un error (por ejemplo, si el último valor de relPath incluye una letra de unidad no válida o no puede encontrar, o si la longitud del nombre de ruta de acceso absoluta creado (absPath) es mayor que maxLength), la función devuelve NULL.

La función de _fullpath expanda el nombre de ruta de acceso relativa en relPath al completo o ruta de acceso absoluta y almacena este nombre en absPath. Si absPath es NULL, malloc se utiliza para asignar un búfer de la longitud suficiente para contener el nombre de ruta. Es responsabilidad del llamador liberar este búfer. Un nombre de ruta de acceso relativa especifica una ruta a otra ubicación de la ubicación actual (como el directorio de trabajo actual: “."). Un nombre de ruta de acceso absoluta es la extensión de un nombre de ruta de acceso relativa que indica la ruta completa necesaria para lograr la ubicación deseada de la raíz del sistema de archivos. A diferencia de _makepath, _fullpath se puede utilizar para obtener el nombre de ruta de acceso absoluta para las rutas de acceso relativas (relPath) que incluyen “. /” o “. /” en su nombre.

Por ejemplo, para utilizar las rutinas de c, la aplicación debe incluir los archivos de encabezado que contienen las declaraciones de las rutinas. Cada instrucción include del archivo de encabezado hace referencia a la ubicación del archivo de forma relativa (del directorio de trabajo de la aplicación):

#include <stdlib.h>

cuando la ruta de acceso absoluta (ubicación real del sistema de archivos) del archivo puede ser:

\\machine\shareName\msvcSrc\crt\headerFiles\stdlib.h

_fullpath controla automáticamente argumentos de cadena de caracteres multibyte según corresponda, reconociendo secuencias de caracteres multibyte según la página de códigos multibyte actualmente en uso. _wfullpath es una versión con caracteres anchos de _fullpath; los argumentos de cadena para _wfullpathson cadenas de caracteres. _wfullpath y _fullpathse comportan exactamente igual excepto que _wfullpathno controla las cadenas de caracteres multibyte.

Si _DEBUGy _CRTDBG_MAP_ALLOCson ambos definido, las llamadas a _fullpath y _wfullpath son reemplazados por llamadas a _fullpath_dbg y a _wfullpath_dbg para permitir la depuración asignaciones de memoria. Para obtener más información, vea _fullpath_dbg, _wfullpath_dbg.

Esta función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros, si maxlen es menor o igual que 0. Si la ejecución puede continuar, conjuntos errno de esta función a EINVAL y devuelven NULL.

Asignaciones de la rutina de texto genérico

rutina de Tchar.h

_UNICODE y _MBCS no definido

_MBCS definido

_UNICODE definido

_tfullpath

_fullpath

_fullpath

_wfullpath

Si el búfer de absPath es NULL, _fullpath llama malloc para asignar un búfer y omite el argumento de maxLength . Es responsabilidad del llamador desasignar este búfer (mediante libere) según corresponda. si el argumento de relPath especifica una unidad de disco, el directorio actual de esta unidad se combina con la ruta.

Función

Encabezado necesario

_fullpath

<stdlib.h>

_wfullpath

<stdlib.h> o <wchar.h>

Para obtener más información de compatibilidad, vea compatibilidad en la Introducción.

// crt_fullpath.c
// This program demonstrates how _fullpath
// creates a full path from a partial path.
 
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <direct.h>

void PrintFullPath( char * partialPath )
{
   char full[_MAX_PATH];
   if( _fullpath( full, partialPath, _MAX_PATH ) != NULL )
      printf( "Full path is: %s\n", full );
   else
      printf( "Invalid path\n" );
}

int main( void )
{
   PrintFullPath( "test" );
   PrintFullPath( "\\test" );
   PrintFullPath( "..\\test" );
}
la ruta de acceso completa es: C: \Documents and Settings\user\My Documents \ prueba
la ruta de acceso completa es: C:\test
la ruta de acceso completa es: C: \Documents and Settings \ usuario \ prueba

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft