2011-02-16 51 views
1

好吧,几乎所有东西都在标题中。我有一个dbf文件,我想拷贝它,即使它被另一个程序如DBU锁定(编辑)。使用python在窗口上复制锁定的dbf文件

如果我尝试打开它,或者用shutil.copy复制我得到

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

我知道它是锁定在Windows的水平,因为我不能复制它巫批次或Windows资源管理器。但有没有任何方法来复制这样的文件?

+1

DBF文件是* BINARY *文件。用'rb'`打开它们 – 2011-02-16 10:51:51

+0

你可能无法在win中复制一个锁定的文件。 – 2011-02-16 11:15:59

回答

1

一般来说,你不能。即使您要规避锁定机制,另一个进程可能正在写入文件的中间,并且您要采取的快照可能处于不一致的状态。

根据您的使用情况,Volume Shadow Copy可能有相关性。