PDA

Ver la Versión Completa : Creacion de una carpeta manera remota


noir
30-05-2005, 21:29:10
Saludos. Necesito crear una carpeta en mi servidor para respaldar mi BD, el respaldo se puede hacer desde cualquier computadora que tenga el sistema y se conecte al servidor. La instruccion MkDir(Respaldo) me manda un error de 'I/O 123' y la instruccion CreateDir(Respaldo) se ejecuta sin error pero no la crea. La variable Respaldo contiene la direccion IP del servidor mas la ruta en donde deseo crear la carpeta. Utilizo Interbase y Delphi 7. ¿Es posible crear carpetas de esta forma? ¿Hay alguna otra instruccion que me pueda ser util? Gracias de antemano.

sitrico
01-06-2005, 20:50:26
No estoy muy seguro pero debes tener uno de estos dos problemas:

1.- No tienes los permisos suficientes en el equipo cliente para crear un directorio en el servidor.

2.- La función CreateDir crea unicamente un nivel de directorio y el parametro debería indicar la ruta completa para evitar problenas. Me explico:

Tienes la carpeta: F:\Respaldos

Y vas a crear un respaldo en la subcarpeta "01_06_2005" (la fecha de hoy para el nombre del directorio)

Debes usar:


CreateDir('F:\Respaldos\01_06_2005');


Si no existiese la carpeta "Respaldos" y intentas crear los dos niveles te generaria un error.

Por cierto, la Función CreateDir devuelve un valor "True" si se pudo crear el directorio y "False" si no, por lo que te recomiendo que la uses más o menos así:


If Not(CreateDir(NombreDirectorio)) Then
// MsgBox (Error al crear directorio)


Otra cosa (que me ha pasado) que podría ser la causa del problema, es usar carácteres inválidos para el nombre del subdirectorio ($, ?, *, ... ).

Espero te sirva.

jachguate
01-06-2005, 23:29:34
No debiera haber inconveniente para crear una carpeta remota con la ip:


if CreateDir('\\192.168.1.14\backups\nuevacarpeta') Then
HacerBackup
else
InformarError;


Hasta luego.

;)