Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Borrar directorio vacío (https://www.clubdelphi.com/foros/showthread.php?t=53505)

arubia 22-02-2008 11:41:42

Borrar directorio vacío
 
Hola!

Necesito borrar un directorio, el problema es que despues de borrar todo su contenido (varias imágenes .bmp), intento borrar la carpeta que los contenía, he utilizado estos tres comandos para intentar borrar el directorio:

RemoveDir();
RmDir();
DeleteFileA();

y ninguno de los tres hace nada de nada, despues utilicé el comando:

aux_int = RemoveDirectoryA(); ->devuelve valor 0 (hay error)
aux2 = GetLastError(); ->error 145 (que no sé lo que es)

Ademas mirando las propiedades de la carpeta en windows, dice que está en "Solo lectura" quito esta propiedad y le doy a aplicar pero al volver a entrar y mirar sus propiedades está otra vez en modo "solo lectura" :eek: y este archivo lo creé con la función mkdir(); yo creo que no se puede borrar porque tiene privilegio de "Solo Lectura".

En fin si alguien sabe como poder borrar el directorio...

Muchas gracias por adelantado

escafandra 22-02-2008 12:11:31

¿Que usuario lo creo?

arubia 22-02-2008 12:19:32

El directorio lo creé como usuario administrador del equipo e intento borrarlo con el mismo usuario, administrador.

escafandra 22-02-2008 12:21:00

¿No es oculto o de sistema?. ¿Seguro que está vacio antes de intentar borrarlo?

Lepe 22-02-2008 12:29:58

¿no tendrá archivos ocultos de sistema?

por ejemplo el típico thumdb que guarda la previsualización (thumbnails) de esas imágenes.

Saludos

arubia 22-02-2008 13:16:13

Bueno, lo primero decir que ya puedo borrar el directorio.

Creo que Lepe tiene razón, aunque dentro de la carpeta no hay nada, por lo menos ni mostrando los ocultos se ve nada. Si yo entro en la carpeta antes de borrarla ya no la puedo borrar así que supongo que cuando entro en la carpeta, Windows crea un archivo de previsualización y lo deja dentro de la carpeta, aunque no este visible ni mostrando los ocultos. Por eso supongo que no se puede borrar.

Sin embargo si no entro en la carpeta (desde windows) ya se puede borrar el directorio sin problema.

Ahora voy a ver si encuentro el archivo "malevolo" de windows.

Muchas gracias a todos

Negriz 25-02-2008 19:23:56

hola, alguno de usteeds me podria explicar o dar la sintaxis de mkdir() y RemoveDir();
hay que declara alguna biblioteca o algo asi?
gracias.

cHackAll 25-02-2008 20:31:51

Cita:

Empezado por arubia (Mensaje 267835)
Bueno, lo primero decir que ya puedo borrar el directorio.

Creo que Lepe tiene razón, aunque dentro de la carpeta no hay nada, por lo menos ni mostrando los ocultos se ve nada. Si yo entro en la carpeta antes de borrarla ya no la puedo borrar así que supongo que cuando entro en la carpeta, Windows crea un archivo de previsualización y lo deja dentro de la carpeta, aunque no este visible ni mostrando los ocultos. Por eso supongo que no se puede borrar.

Sin embargo si no entro en la carpeta (desde windows) ya se puede borrar el directorio sin problema.

Ahora voy a ver si encuentro el archivo "malevolo" de windows.

Muchas gracias a todos

En realidad cualquier proceso que este "trabajando" sobre una ruta específica bloquea la posibilidad de borrado de la misma por razónes de integridad.

Cita:

Empezado por Negriz (Mensaje 268490)
hola, alguno de usteeds me podria explicar o dar la sintaxis de mkdir() y RemoveDir();
hay que declara alguna biblioteca o algo asi?
gracias.

Código:

MkDir("c:\\test");
Código:

RemoveDir("c:\\test");
Saludos

Negriz 25-02-2008 21:46:35

Muchas gracias de nuevo cHackAll...


La franja horaria es GMT +2. Ahora son las 05:31:50.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi