Предотвращение сбоя приложения Excel в результате сбоя блокировки файла

Я открываю CSV-файл из моего приложения C # для записи с помощью

FileShare.Read 

флаг. Я только добавляю к файлу – я никогда не пытаюсь получить произвольный доступ. Если я открою файл из Excel, пока мое приложение все еще работает, Excel дает мне ожидаемое приглашение «открыто для чтения / уведомления». Если я выбрал «Уведомлять», иногда мое приложение терпит неудачу, пытаясь написать новую строку в файл с помощью

 0x21 error - "The process cannot access the file because another process has locked a portion of the file." 

Я предположил, что разрешить другим процессам читать файл был безопасным, но, по-видимому, нет. Есть ли все равно, чтобы поделиться файлом для чтения и в то же время предотвратить блокирование другого приложения (я предполагаю, что Excel пытается скопировать файл, вызывающий блокировку)? Я также предполагаю, что блокировка повлияет только на байты во время копирования – так почему бы добавить к этому файл?

Когда вы обращаетесь к файлу, есть флаг для пессимистической блокировки и оптимистической блокировки.

  • Получить имена всех столбцов в листе Excel в SpreadSheetLight
  • Условное форматирование на всю строку
  • создавать и писать в файл excel из c #
  • Как перенести форматы ячеек Excel в C # Interop?
  • Различные excel CLSID для Excel вызывают проблемы с Interop в программе C #
  • Возможно ли открыть открытый файл excel
  • Премия c # excel
  • центр вертикального выравнивания npoi
  • Прочтите mimecontent excel или конвертируйте excel mimcontent в csv mimecontent
  • Как я могу получить таблицы «uncollapse» электронной таблицы Open XML в электронной таблице?
  • Как я могу разделить значения листа Excel и сохранить его на новом листе excel?
  • Interesting Posts

    Ошибка экспорта datatable в excel C #

    Ошибка VSTO – GetVstoObject возвращает неверный рабочий лист

    Удалить строку строки «x», если ячейка в листе «X» содержит имя листа «y»

    Преобразование PDF-файла в Excel в C #

    Чтение больших файлов excel в Python и UnicodeDecodeError:

    Прямой ввод или формула

    вставить массив объектов данных, который содержит формулу Excel в существующий лист Excel в заданном диапазоне

    Попытка найти все возможные комбинации

    Подсчет количества ячеек с определенным числовым рисунком

    имя формы меняется все время, я не могу ее найти

    Избегайте использования активного виртуального рабочего стола Excel при загрузке файла excel

    Excel: ссылки на ненулевые ячейки

    Есть ли макрос, чтобы скрыть все листы в книге, когда определенная ячейка равна 100%?

    Что такое хорошая сетевая сетка, которая принимает данные буфера обмена Excel?

    Скопируйте диапазон с полем ввода и вставьте на фиксированный диапазон на определенном листе

    Давайте будем гением компьютера.