Comment puis-je simuler un fichier « verrouillé » (celui qui a un verrou d'écriture)
Question
Je suis en train de déboguer un problème où les utilisateurs ont parfois des fichiers verrouillés qu'ils tentent d'ouvrir. Le code semble avoir correctement la gestion des exceptions, mais les utilisateurs signalent toujours voir des messages d'erreur. Comment puis-je simuler un fichier verrouillé afin que je puisse déboguer moi-même?
EDIT:. Pour Windows
La solution
dépend, mais en cas, verrous de MS Word
si vous êtes wonderig si vos fichiers de verrouillage d'application et il ne verrouille pas relase:
modifier un peu votre aplication (pour créer un testapp) et jamais fermer le fichier (et conservez-le Runnig)
Autres conseils
essayez ceci:
( >&2 pause ) >> yourfile.txt
>>
ouvre yourfile.txt
dans append mode
voir cette pour une référence
je fonction LockFileEx de l'API Windows pour écrire un unittest en Python. Cela a bien fonctionné pour moi (shutil.copy () avec une cible échoue verrouillé).
import win32con
import win32file
import pywintypes
p = "yourfile.txt"
f = file(p, "w")
hfile = win32file._get_osfhandle(f.fileno())
flags = win32con.LOCKFILE_EXCLUSIVE_LOCK | win32con.LOCKFILE_FAIL_IMMEDIATELY
win32file.LockFileEx(hfile, flags, 0, 0xffff0000, pywintypes.OVERLAPPED())
Voir: https: //msdn.microsoft.com/en-us/library/windows/desktop/aa365203%28v=vs.85%29.aspx