Bloquear archivo

Oswaldo Hernández listas en soft-com.es
Lun Ago 31 10:18:17 CEST 2009


Hola,

Estoy intentado abrir un archivo de forma exclusiva para que si algún otro proceso intenta 
utilizarlo se lo impida, y a la inversa, quiero que me salte una excepción si hay algún otro proceso 
utilizándolo.

He visto que os.open() permite un parámetro 'O_EXCL' para que la apertura sea en modo exclusivo, 
pero al parecer no funciona.

Estoy utilizando windows y no se si será por algun problema de este o del sistema de archivos NTFS.

 >>> archivo = "c:\\temp\\test.txt"
 >>> f = os.open(archivo, os.O_RDWR|os.O_EXCL)
 >>>
 >>> # Abrir por segunda vez, deberia dar un error de acceso denegado o algo parecido
 >>>
 >>> f1 = os.open(archivo, os.O_RDWR|os.O_EXCL)
 >>>


¿Conocéis alguna otra forma de bloquear un archivo en Windows para que otro proceso no lo pueda abrir?

Gracias.

-- 
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es