В системе Windows Server 2012 R2 программа Kotlin использует FileChannel.tryLock()
эксклюзивную блокировку файла, например:
val fileRw = RandomAccessFile(file, "rw")
fileRw.channel.tryLock()
С этим замком я не могу открыть файл с помощью:
- Word Pad
- Notepad ++
Программно с C #, для любого значения
FileShare
:using (var fileStream = new FileStream(processIdPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) using (var textReader = new StreamReader(fileStream)) { textReader.ReadToEnd(); }
Из командной строки
type
команда:C:\some-directory>type file.txt The process cannot access the file because another process has locked a portion of the file.
Internet Explorer (да, я был в отчаянии)
Я могу открыть его с помощью блокнота.
Как, черт возьми, Блокнот может открыть заблокированный файл, который ничто другое не может?
источник