¿Evitar que un programa elimine archivos en Windows?

8

Tengo un programa ejecutable (sin código fuente) que crea archivos temporales en una carpeta determinada y luego los elimina al final. Tengo problemas con el programa y me gustaría examinar los archivos temporales para ver si hay algo que pueda hacer sin cambiar la fuente.

¿Hay alguna manera de evitar que el programa elimine archivos o, alternativamente, evitar que todos los programas eliminen archivos en una carpeta determinada?

JoelFan
fuente
1
¿Por qué no examinar los archivos mientras se ejecuta el programa? ¿El programa mantiene bloqueados todos los archivos temporales que crea?
joeqwerty
Los crea y los elimina demasiado rápido
JoelFan

Respuestas:

9

Puede cambiar la ACL en la carpeta en cuestión para que la cuenta que ejecuta el ejecutable (probablemente usted ) pueda crear, escribir, editar archivos allí, pero no eliminarlos. Dos cuestiones:

  1. Por supuesto, es posible que el programa se bloquee

  2. Deberá recuperar el control de la carpeta después (tomar posesión, restablecer todos los permisos, etc.) para poder eliminar los archivos

Izzy
fuente
44
+1 Con ACL NTFS, una Denyentrada tiene prioridad sobre Allow. Puede agregar una entrada para Deny Deletey / o Deny Delete Subfolders/Filespara Everyoneen el directorio. Hacemos esto con frecuencia para capturar archivos de extracción / descarga de instalación de software.
jscott
3
@jscott: desde MS: los permisos denegados heredados no impiden el acceso a un objeto si el objeto tiene una entrada explícita de permiso Permitir. Los permisos explícitos tienen prioridad sobre los permisos heredados, incluso los permisos denegados heredados. technet.microsoft.com/en-us/library/cc736316(WS.10).aspx . El artículo es antiguo, pero que yo sepa, el comportamiento no ha cambiado.
joeqwerty
0

Dado que está creando los archivos, el usuario lo está ejecutando, ya que es el propietario de los archivos y podrá eliminarlos, por lo que no creo que haya nada que pueda configurar de antemano para NTFS CACLS en el directorio principal.

Puede intentar abrir los archivos en otro programa usted mismo para ver si eso evitará la eliminación. También puede intentar copiar y / o mover los archivos tan pronto como se creen en otra carpeta.

mfinni
fuente
1
La propiedad anula solo un permiso de archivo: la capacidad de cambiar las ACL del objeto. Todavía puede negarse todo lo demás (incluso "permisos de lectura").
user1686
a menos que, por supuesto, tiene SET propietario creador control total
tony Roth