Inicio / Wikis / Tutoriales / Los rincones del API Win32: WinInet y FTP - Manipular la estructura de directorios

Los rincones del API Win32: WinInet y FTP - Manipular la estructura de directorios

(9 opiniones)
Tutorial creado por
27 de Agosto de 2005
Programación estructurada
El equipo remoto tendrá una estructura de directorios como cualquier sistema operativo, en la cual nos podremos mover y manipular. Como en UNIX y MS-DOS, siempre estaremos situados en un directorio activo, en el cual se ejecutarán todas las operaciones que realicemos. Podemos averiguar cual es nuestro directorio activo a través de la función FtpGetCurrentDirectory: BOOL FtpGetCurrentDirectory( HINTERNET hConexión, LPTSTR lpszDirectorioActivo, LPDWORD lpdwLongitudDirectorio );

  • hConexión: un descriptor de conexión obtenido a través de InternetConnect.
  • lpszDirectorioActivo: un puntero a una cadena en la que se almacenará la ruta absoluta del directorio activo. Hay que tener en cuenta que los servidores FTP utilizan el separador de UNIX (“/”) y no la barra invertida de Windows (“\”).
  • lpdwLongitudDirectorio: un puntero a un valor de 32 bits en el que se pasa la longuitud máxima de la cadena lpszDirectorioActivo. Cuando la función retorna, en este valor se almacena el número de caracteres copiados.

La función retornará TRUE o FALSE dependiendo del éxito o fracaso.

Como es lógico, además de averiguar el directorio activo, también podremos cambiar este directorio activo, a través de la función SetCurrentDirectory:

BOOL FtpGetCurrentDirectory( HINTERNET hConexión, LPCTSTR lpszNuevoDirectorio );

  • hConexión: un descriptor de conexión obtenido a través de InternetConnect.
  • lpszNuevoDirectorio: un puntero a una cadena en la que se almacenará la ruta (absoluta o relativa) del nuevo directorio activo.

La función retorna TRUE si ha tenido éxito o FALSE en caso de error. En caso de retornar error, una de las posibles causas es que no tenemos permisos para acceder a dicho directorio. En tal caso, podemos hacer uso de la función InternetGetLastResponseInfo (de la que ya hablamos en el artículo WinInet y HTTP) para obtener el código de error retornado por el servidor.

Si en un momento dado queremos crear un nuevo directorio, debemos hacerlo a través de la función FtpCreateDirectory, con la siguiente sintaxis:

BOOL FtpCreateDirectory( HINTERNET hConexión, LPCTSTR lpszNombreDirectorio );

  • hConexión: un descriptor de conexión obtenido a través de InternetConnect.
  • lpszNuevoDirectorio: un puntero a una cadena en la que se indica la ruta (absoluta o relativa) del directorio a crear. Para dar el nombre a la carpeta hay que tener en cuenta las normas del sistema de archivos del servidor, normalmente UNIX o Windows.

La función retorna TRUE o FALSE. Podremos llamar, como ya hemos dicho, a la función InternetGetLastResposeInfo para averiguar el código y texto del mensaje de error retornado por el servidor.

Y lógicamente, también se podrá borrar un directorio (y todo su contenido) a través de la siguiente función:

BOOL FtpCreateDirectory( HINTERNET hConexión, LPCTSTR lpszDirectorio );

  • hConexión: un descriptor de conexión obtenido a través de InternetConnect.
  • lpszDirectorio: un puntero a una cadena en la que se indica la ruta (absoluta o relativa) del directorio a borrar. Es importante saber que no podemos borrar el directorio si es nuestro directorio activo, por lo que es recomendable hacer una llamada a FtpSetCurrentDirectory antes de realizar el borrado.

Esta función, como el resto, retornará TRUE o FALSE dependiendo del éxito o fracaso.
Valora este capítulo: (9 opiniones)
Autor y licencia de 'Los rincones del API Win32: WinInet y FTP - Manipular la estructura de directorios'
Juan Manuel Extraído de: http://www.lawebdejm.com

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Opiniona sobre 'Los rincones del API Win32: WinInet y FTP - Manipular la estructura de directorios' (9)

Tu nombre debe tener tres caracteres como mínimo.
Es necesario que te des de alta con una cuenta de correo válida.
Es necesario que te des de alta con una cuenta de correo válida.
El contenido del título de tu opinión debe tener tres caracteres como mínimo.
Es obligatorio que selecciones una valoración del recurso.
El contenido del comentario de tu opinión debe tener tres caracteres como mínimo.

Opina sobre este tutorial



* Valoración:
* Nombre:
* Correo electrónico:
* Título:
* Comentario:

Wikis relacionados con 'Los rincones del API Win32: WinInet y FTP - Manipular la estructura de directorios'

Comienzo con un nuevo tema dentro dentro de la serie Los rincones del API Win32.... Más »
Entramos en temas interesantes: el acceso a recursos remotos a través del protocolo de aplicación... Más »
En el anterior curso dejamos muchos temas en el tintero, así que voy a terminar... Más »
Damos una visión detallada de una de las características más interesantes de esta tecnología de... Más »
Curso que profundiza en el gestor de montones (o montículos) dentro de Win32, así como... Más »
¿Estás seguro de que deseas eliminar este capítulo?