Ответ 1
Вы можете прочитать файл только в том случае, если программа, открывшая файл, сначала указала, что в этом файле описаны права доступа.
Если у файла действительно нет прав доступа на чтение, вы не сможете его скопировать.
Возможно, вы не сможете получить доступ к файлу, если вы указываете право на совместное использование, которое конфликтует с правом на совместное использование программы, у которой уже открыт файл. Например, вы не можете предоставить доступ на запись, если уже открытая программа не предоставляет доступ на запись.
Если программа, открывшая файл в первую очередь, поддерживает теневое копирование тома (VSS), вы также можете использовать VSS для доступа к файлу.
Существуют коммерческие программные драйверы, которые позволяют вам получать доступ к таким файлам, даже если они используются. Раньше вы использовали Open File Manager от St-Bernards, и вы также можете использовать File Access Manager (FAM) от VisionWorks Solutions Inc. Эти драйверы, как правило, OEM'ed для резервного копирования компаний-разработчиков программного обеспечения для включения в их продукты.
VSS работает, сообщая программе, в которой уже открыт файл, который другая программа хотела бы прочитать из файла. Затем VSS делает копию файла и позволяет вам прочитать эту копию. VSS не работает для устаревших приложений.
FAM прозрачно работает как с устаревшими, так и с не устаревшими программами, указав "разрешенный список" приложений, которые могут обращаться к только открытым и заблокированным файлам. Доступ к этим файлам разрешен только программам в этом списке. Когда файл открывается, он переходит в режим кэширования, так что вы получите копию файла, как это было при запуске "backup/open" файла. В этот момент программа, которая первоначально открывала файл, видит файл так, как он есть на самом деле, а вторая программа в разрешенном списке видит файл так же, как и при открытии/резервном копировании файла. Это обеспечивает согласованность файла.