Ver Mensaje Individual
  #6  
Antiguo 17-07-2006
Avatar de Wonni
Wonni Wonni is offline
Miembro
 
Registrado: abr 2006
Posts: 261
Reputación: 21
Wonni Va por buen camino
Cita:
Empezado por seoane
...Otra solución seria utilizar otro programa, un servicio como sugerías al principio, que abriera el archivo y solo permitiera el acceso de otros programas para leer, esta solución si que protegería de forma efectiva contra accidentes, se tendría que detener el servicio para poder modificar los archivos y eso ya no seria tan accidental, supondría que el presunto borrador sabia lo que hacia.
.
Esta fue mi primera idea. De hecho cree un servicio con este codigo en el OnCreate:

Código Delphi [-]
var  hFile: THandle = INVALID_HANDLE_VALUE; // Variable global// Para bloquearlo hFile:= CreateFile(PChar('Archivo.doc'),GENERIC_READ,FILE_SHARE_READ,nil,OPEN_EXISTING,0,0);// Para desbloquearloif hFile<>INVALID_HANDLE_VALUE then    CloseHandle(hFile);

Por cierto, esto lo puso seoane en este hilo:

http://www.clubdelphi.com/foros/show...borren+archivo

Entonces, al iniciar mi aplicacion principal, esta deberia comunicarse con el servicio para que este permita trabajar a la aplicacion. Por que si no, pues ni siquiera puedo abrir las tablas. Pero no tengo ni idea de como comunicarme con el servicio. Y hay mas cosas:
¿como impido que eliminen el servicio? A esta pregunta me sugirio mi sobrino "ixMike" que al cerrarse el servicio llamara a otro que lo volviera a crear. Pero es que si finalizo el proceso, ¿como lo capturo?, porque en el evento OnClose si se intercepta si finalizas la aplicacion desde la lista de tareas (ojo, la aplicacion) pero no el proceso. Si finalizo el proceso, na de na

En cuanto a la opcion del md5, pues no tengo ni idea de que es. Te agradeceria que me lo explicases. Y ese caso ¿donde convendria que colocase el archivo .txt?

La verdad, esque mi la opcion q mas me atrae es la del "guardian", llamemoslo "dbguardian" y el el "dbguardianres" (para guardar al guardian).
Esto tal vez sea algo muy lioso, o no. ¿que os parece?

En cuanto a los recursos que pueda consumir esto, por ejemplo, no creo que sea algo grave, ¿no?

Gracias por vuestra ayuda

Saludos !!
Responder Con Cita