Reitero la pregunta : Proteccion DBF
Publicado: Lun Oct 27, 2008 4:06 pm
Hola:
Disculpen mi insistencia, pero no encuentro la solución a lo que he
comentado
anteriormente y que vuelto a repetir.
Estoy interesado en proteger determindadas .DBF.
En Clipper usaba algo que se parece a la siguiente funcion ( no recuerdo su
autor) :
FUNCTION Esconder(cFile,nAction)
local nHandle:=0
local cBuffer:=Space(32)
nHandle:=FOpen(cFile,FO_READWRITE+FO_SHARED)
default nAction:=1
IF nHandle!=-1
IF FRead(nHandle,@cBuffer,32)==32
IF nAction==0
IF SubStr(cBuffer,1,1)<>Chr(26)
cBuffer:=Chr(26)+SubStr(cBuffer,1,31)
ENDIF
ELSE
IF SubStr(cBuffer,1,1)==Chr(26)
cBuffer:=SubStr(cBuffer,2,31)+ Chr(0)
ENDIF
ENDIF
FSeek(nHandle,0)
FWrite(nHandle,cBuffer,32)
ENDIF
FClose(nHandle)
ENDIF
RETURN (FError())
donde con nAccion = 0 se impedia el acceso y con nAccion = 1 se restauraba
de nuevo.
En Xailer, la he probado pero solo consigo que me de corrupcion de fichero,
sea qual sea
la accion.
Hay alguna funcion (Fwrite, FSeek, etc) incompatible con el compilador
xHarbour ?.
Si realmente NO puede funcionar, deberè olvidarme del tema.
Gracias y reitero , MIL disculpas por la insistencia.
Josep Castells
Disculpen mi insistencia, pero no encuentro la solución a lo que he
comentado
anteriormente y que vuelto a repetir.
Estoy interesado en proteger determindadas .DBF.
En Clipper usaba algo que se parece a la siguiente funcion ( no recuerdo su
autor) :
FUNCTION Esconder(cFile,nAction)
local nHandle:=0
local cBuffer:=Space(32)
nHandle:=FOpen(cFile,FO_READWRITE+FO_SHARED)
default nAction:=1
IF nHandle!=-1
IF FRead(nHandle,@cBuffer,32)==32
IF nAction==0
IF SubStr(cBuffer,1,1)<>Chr(26)
cBuffer:=Chr(26)+SubStr(cBuffer,1,31)
ENDIF
ELSE
IF SubStr(cBuffer,1,1)==Chr(26)
cBuffer:=SubStr(cBuffer,2,31)+ Chr(0)
ENDIF
ENDIF
FSeek(nHandle,0)
FWrite(nHandle,cBuffer,32)
ENDIF
FClose(nHandle)
ENDIF
RETURN (FError())
donde con nAccion = 0 se impedia el acceso y con nAccion = 1 se restauraba
de nuevo.
En Xailer, la he probado pero solo consigo que me de corrupcion de fichero,
sea qual sea
la accion.
Hay alguna funcion (Fwrite, FSeek, etc) incompatible con el compilador
xHarbour ?.
Si realmente NO puede funcionar, deberè olvidarme del tema.
Gracias y reitero , MIL disculpas por la insistencia.
Josep Castells