Проверка открыт ли файл иксель

maxim.gutareff

Пользователь
Регистрация
27.01.2018
Сообщения
255
Благодарностей
22
Баллы
18
Всем здравия. Такая проблема. Имеется база в формате иксель таблицы. С ней работает работник. Если он ее открыл, то я ее уже не могу открыть и редактировать. Уведомление об этом вылезет. А вот зеннопостеру на это срать. Он в любом случае открывает. Но вот данные не сохраняются после него. Видимо открывает в режиме просмотра. Так и я могу открывать.

Вопрос: Можно как то проверять есть возможность редактировать таблицу, или нет?
 

Sherminator

Client
Регистрация
10.09.2021
Сообщения
1 268
Благодарностей
688
Баллы
113
Всем здравия. Такая проблема. Имеется база в формате иксель таблицы. С ней работает работник. Если он ее открыл, то я ее уже не могу открыть и редактировать. Уведомление об этом вылезет. А вот зеннопостеру на это срать. Он в любом случае открывает. Но вот данные не сохраняются после него. Видимо открывает в режиме просмотра. Так и я могу открывать.

Вопрос: Можно как то проверять есть возможность редактировать таблицу, или нет?
Если файл открыт, кинет ошибку

C#:
string pathToFile = @"C:\Users\Desktop\test.xlsx";
try
{
   Stream s = File.Open(pathToFile, FileMode.Open, FileAccess.Read, FileShare.None);

   s.Close();

}
catch (Exception ex)
{
   throw new Exception("Файл открыт");
}
 
  • Спасибо
Реакции: maxim.gutareff

maxim.gutareff

Пользователь
Регистрация
27.01.2018
Сообщения
255
Благодарностей
22
Баллы
18
Если файл открыт, кинет ошибку

C#:
string pathToFile = @"C:\Users\Desktop\test.xlsx";
try
{
   Stream s = File.Open(pathToFile, FileMode.Open, FileAccess.Read, FileShare.None);

   s.Close();

}
catch (Exception ex)
{
   throw new Exception("Файл открыт");
}
О! Как круто. Только я сегодня понял что пока шаблон работает, работник может открыть базу. Вот если бы ему предупреждение выдавалось... А так спасибо. Код рабочий!
 

Sherminator

Client
Регистрация
10.09.2021
Сообщения
1 268
Благодарностей
688
Баллы
113
О! Как круто. Только я сегодня понял что пока шаблон работает, работник может открыть базу. Вот если бы ему предупреждение выдавалось... А так спасибо. Код рабочий!
В таком случае надо делать прокладку в виде админки, что бы у работника не было прямого доступа к БД ( что является недопустимым )
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)