Error 32 al querer renombrarse un achivo

Error 32 al querer renombrarse un achivo

Postby goosfancito » Wed Mar 06, 2024 6:58 pm

Hola.
Cuando quiero usar la función Frename() no me deja renombrar el archivo y me tira un -1, mirando con el FError() me tira el numero 32
que significa? como puedo solucionarlo?

gracias.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Re: Error 32 al querer renombrarse un achivo

Postby Antonio Linares » Wed Mar 06, 2024 9:51 pm

Para este tipo de consultas es muy recomendable preguntar primero a chatgpt y a google Gemini, para tener una primera idea de lo que pueda estar pasando.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Error 32 al querer renombrarse un achivo

Postby goosfancito » Thu Mar 07, 2024 4:46 am

Te comento donde tengo el problema.

Code: Select all  Expand view
LOCAL hFile      := FOpen( ::cFile )
...
fclose(hfile)

fwdbg hFile            -------------------- aca hfile siempre me da un numero diferente de cero, ya probe hacer esto hFile:= Nil

frename(::cfile, "ejemplo.xml")
 


En cambio si hago esto otro si me funciona el frenarme si no lo abro antes:
Code: Select all  Expand view
frenarme(::cFile, "ejemplo.xml")
 
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Re: Error 32 al querer renombrarse un achivo

Postby Antonio Linares » Thu Mar 07, 2024 7:30 am

Prueba a hacer un SysRefresh() antes del rename para darle opción a Windows a procesar tu petición:

fclose(hfile)
SysRefresh()
...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Error 32 al querer renombrarse un achivo

Postby goosfancito » Thu Mar 07, 2024 10:41 am

Consulto:

Si abro un archivo con
Code: Select all  Expand view
 LOCAL hFile      := FOpen( ::cFile )
 
y luego lo cierro con
Code: Select all  Expand view
fclose(hFile)
sysrefresh()
 

y hago un fwdbg hFile, el valor de "hfile" debe ser "nil"?

porque me sigue devolvieron un valor numérico.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Re: Error 32 al querer renombrarse un achivo

Postby paquitohm » Thu Mar 07, 2024 1:41 pm

hfile toma valor, y aunque se cierre con FClose() ese valor permanece.
No hay ningun tipo de ligazón entre hFile y el fichero al que representa más que con el uso de las funciones file
paquitohm
 
Posts: 108
Joined: Fri Jan 14, 2022 8:37 am

Re: Error 32 al querer renombrarse un achivo

Postby karinha » Thu Mar 07, 2024 3:24 pm

Code: Select all  Expand view

#Include "FiveWin.ch"
#Include "Fileio.ch"

FUNCTION Main()

   LOCAL nResult
   // LOCAL hFile := FOpen( "TEXTO.txt", FO_READWRITE )
   LOCAL hFile := FOpen( "TEXTO.txt" )

   IF .NOT. FILE( "TEXTO.txt" )

      ? " Ooopppsss "

      RETURN NIL

   ENDIF

   fClose( hfile )

   nResult := FRename( "TEXTO.txt", "TEXTO1.txt" )

   IF nResult == F_ERROR

      ? "No se pudo cambiar el nombre del archivo"

   ENDIF

RETURN NIL

// FIN / END
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7214
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Error 32 al querer renombrarse un achivo

Postby Willi Quintana » Thu Mar 07, 2024 4:55 pm

MI estimado, una salida:
Code: Select all  Expand view

LOCAL hFile
.......
rename(::cfile, "ejemplo.xml")
hFile      := FOpen( ::cFile )
.....
...
..
.
fclose(hfile)

 
User avatar
Willi Quintana
 
Posts: 1002
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 86 guests