Copy locked dbf file on windows using python

Issue

Well, almost everything is in title. I have a dbf file which I would like to copy even if it is locked (edited) by another program like DBU.

If I try to open it or copy with shutil.copy I get

>>> f = open('test.dbf', 'rb')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IOError: [Errno 13] Permission denied: 'test.dbf'

I know that it is locked on windows level because I am unable to copy it witch batch or with windows explorer. But is there any method to copy such a file?

Solution

In general, you can’t. Even if you were to circumvent the locking mechanism, another process might be in the middle of writing to the file, and the snapshot you would take may be in an inconsistent state.

Depending on your use case, Volume Shadow Copy might be of relevance.

Answered By – NPE

This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply

(*) Required, Your email will not be published