Как узнать открыт файл или нет?
Пиплы! Хелп. Как узнать открыт файл или нет? В частности файл .xls
Попробуй открыть его для дописи. Если не открывается - значит занят.
Цитата:
Originally posted by fellow
Попробуй открыть его для дописи. Если не открывается - значит занят.
Попробуй открыть его для дописи. Если не открывается - значит занят.
А если файл открыт в несколько потоков, да еще и с общим доступом? Тогда он все равно откроется, и даже допишется...
Цитата:
Originally posted by pacific_7
А если файл открыт в несколько потоков, да еще и с общим доступом? Тогда он все равно откроется, и даже допишется...
А если файл открыт в несколько потоков, да еще и с общим доступом? Тогда он все равно откроется, и даже допишется...
Excel'овские файлы как правило открыты монопольно.
Всем спасибо! Нашел выход.
Цитата:
Originally posted by AlexD
Всем спасибо! Нашел выход.
Всем спасибо! Нашел выход.
Молодец, теперь расскажи, какой именно:)
Короче, нужно начать с того, что проверка статуса файла мне нужна из альтернативных соображений и не ищу универсального способа как это сделать. Я веду запись в Ехель. Ситуация такова, что если пытаешься писать в открытый файл (повторная запись например), выдается ошибка. Проще всего принудительно закрыть этот файл, а еще лучше после этого удалить, тогда прога делает все идеально. Закрыть без хэндла просто не выходит, файл создается Ехелем на предыдущем прогоне проги. Я в общем приказываю Ехелю закрыть свою книгу, в файл которой мы пишем. Для тех кому интересно чем все закончилось:) : перебирая все открытые книги сравниваю имена с записываемым файлом и при нахождении необходимого убиваю книгу и файл, а затем уже пишу на пустое место. Все элементарно, но эта задача - далеко частный случай:)