writefile и copyfile
От: bututh  
Дата: 16.05.16 13:13
Оценка:
Есть некоторый файл, открытый приложением на запись.
Если открыть его в Farе для редактирования, сделать запись и попробовать сохранить, то получаем ошибку, как и ожидается.
А если тем же фаром скопировать в него другой файл по ф5, то копирование происходит успешно.
Посмотрел ProcessMonitor'ом, вроде теже самые createfile, writefile
А в чем тогда причина ?
Re: writefile и copyfile
От: ononim  
Дата: 16.05.16 13:32
Оценка:
B>Если открыть его в Farе для редактирования, сделать запись и попробовать сохранить, то получаем ошибку, как и ожидается.
B>А если тем же фаром скопировать в него другой файл по ф5, то копирование происходит успешно.
B>Посмотрел ProcessMonitor'ом, вроде теже самые createfile, writefile
B>А в чем тогда причина ?
Например в том что тот кто открыл на запись указал еще и FILE_SHARE_WRITE да еще наверное еще и FILE_SHARE_DELETE, разрешив таким образом другим перезаписывать файл
Как много веселых ребят, и все делают велосипед...
Re[2]: writefile и copyfile
От: bututh  
Дата: 16.05.16 13:59
Оценка:
Здравствуйте, ononim, Вы писали:

B>>Если открыть его в Farе для редактирования, сделать запись и попробовать сохранить, то получаем ошибку, как и ожидается.

B>>А если тем же фаром скопировать в него другой файл по ф5, то копирование происходит успешно.
B>>Посмотрел ProcessMonitor'ом, вроде теже самые createfile, writefile
B>>А в чем тогда причина ?
O>Например в том что тот кто открыл на запись указал еще и FILE_SHARE_WRITE да еще наверное еще и FILE_SHARE_DELETE, разрешив таким образом другим перезаписывать файл

почему тогда он не сохраняется при редактировании ?
Re[3]: writefile и copyfile
От: ononim  
Дата: 16.05.16 15:10
Оценка:
O>>Например в том что тот кто открыл на запись указал еще и FILE_SHARE_WRITE да еще наверное еще и FILE_SHARE_DELETE, разрешив таким образом другим перезаписывать файл
B>почему тогда он не сохраняется при редактировании ?
потому что при редактировании видать FAR не указывает FILE_SHARE_WRITE, а при копировании — указывает, видимо ввиду включенности опции [x] Copy files opened for writing.
Как много веселых ребят, и все делают велосипед...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.